Password-Based Cryptographic Key Generation via Server Intermediary
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for generating secret cryptographic keys from user passwords are vulnerable to offline brute-force attacks, especially when users employ weak passwords and share them across multiple platforms, and often require expensive trusted hardware or multiple servers for secure management.
Innovation Solution
A method that involves a user computer and a server interacting via a network to generate a secret cryptographic key using a secret user value and a secret server value, where the user password is verified by the server without revealing it, ensuring the key is secure against offline guessing attacks and can be regenerated as needed without storing compromising information.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If a secret key is stored on a user computer and accessed via user password input, then the key is readily available for required use, but the system becomes vulnerable to offline brute-force attacks since user passwords are cryptographically weak and easily guessed
Solution Approach 1:
A server acts as an intermediary between the user computer and the secret key. The server stores a check value derived from the user password and secret user value, and verifies passwords without revealing the secret key. This intermediary prevents direct brute-force attacks on the user computer while maintaining password-based access convenience.
Solution Approach 2:
The secret key is extracted from the user computer and stored on a remote server. Only a check value (hash) of the password is stored on the user computer. This separation removes the vulnerable combination of weak password + stored key from the user system, while preserving password-based access through the server intermediary.
2Reliability
If trusted hardware devices such as smart cards or TPM chips are used for secure management of secret keys, then security against unauthorized access is improved, but the system complexity and expense increase
Solution Approach 1:
The invention replaces expensive trusted hardware devices with software-based cryptographic operations on standard computers. The server implements secure key management using only software, eliminating the need for smart cards, TPM chips, or other specialized hardware, thereby reducing system complexity and cost while maintaining security through cryptographic protocols.
3Reliability
If multiple servers are used for password-based key generation, then security against server compromise is improved, but the system complexity and cost increase
Solution Approach 1:
A check value is pre-computed and stored on the user computer before any key generation occurs. This check value, derived from the user password and secret user value, enables the user to verify server authenticity and protect against server compromise without requiring multiple servers. The preliminary computation of the check value provides security that would otherwise require multi-server architectures.
Data Source
AI summary
A user computer generates a secret cryptographic key through communication with a server. A secret user value is provided at the user computer. A secret server value is provided at the server with a check value which encodes the secret user value and a user password. In response to input of an input password, the user computer encodes the secret user value and the input password to produce a first value corresponding to said check value, and communicates the first value to the server. The server compares the first value and check value to check whether the input password equals the user password. If so, the server encodes the first value and secret server value to produce a second value and communicates the second value to the user computer. The user computer generates the secret cryptographic key by encoding the second value, the input password and the secret user value.


