One-Time Password Generation Using Secure Processors

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing online security techniques are vulnerable to attacks such as keystroke logging, phishing, and man-in-the-middle schemes, which compromise user credentials and allow unauthorized access to services.

Innovation Solution

A system utilizing one-time-passwords (OTPs) generated by both user devices and verification servers using shared algorithms, with secure processors like TPMs to ensure randomness and protection, providing an additional layer of security against unauthorized access.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If traditional username and password authentication is used, then ease of operation is improved, but security is worsened due to vulnerability to keystroke logging, phishing, and man-in-the-middle attacks

Engineering Contradiction:
Improveauthentication processVSAvoidsecurity
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The authentication credentials are segmented into two parts: a static shared secret stored securely in the remote device and a dynamic one-time password generated by the verification server. This segmentation allows the static part to remain protected while the dynamic part provides changing authentication values that cannot be reused, thereby maintaining ease of operation while significantly improving security against replay attacks, phishing, and keystroke logging.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The verification server preliminarily generates and stores multiple one-time passwords in association with the user's account before the user needs to authenticate. When the user requests authentication, the server provides the next expected one-time password from this pre-generated set. This preliminary action ensures that even if an attacker intercepts or logs the authentication process, they cannot reuse the one-time password because it has already been consumed and invalidated.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If one-time-passwords are generated using shared algorithms and secure processors, then security is improved, but device complexity is worsened

Engineering Contradiction:
ImprovesecurityVSAvoidsystem architecture
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

A verification server acts as an intermediary between the user's remote device and the service provider. The server handles the complex cryptographic operations for generating and managing one-time passwords, while the remote device only needs to securely store a shared secret and communicate with the server. This intermediary approach distributes the computational complexity to a centralized secure server, reducing the burden on individual client devices while maintaining high security standards.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The verification server automatically generates, manages, and validates one-time passwords without requiring manual intervention or complex client-side cryptographic implementations. The server maintains the shared secrets securely and autonomously generates the next expected one-time password for each authentication attempt, comparing it with what the user provides. This self-service mechanism simplifies the client device requirements while ensuring security through automated, consistent cryptographic operations.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS8997192B2System and method for securely provisioning and generating one-time-passwords in a remote device
Publication Date: 2015.03.31 NXP BV
  • US8997192B2 patent drawing
  • US8997192B2 patent drawing
  • US8997192B2 patent drawing

AI summary

A secure processor such as a TPM generates one-time-passwords used to authenticate a communication device to a service provider. In some embodiments the TPM maintains one-time-password data and performs the one-time-password algorithm within a secure boundary associated with the TPM. In some embodiments the TPM generates one-time-password data structures and associated parent keys and manages the parent keys in the same manner it manages standard TPM keys.