Automatic Password Rollover via HMAC Nonce Exchange
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional password rollover processes on unsecure networks face challenges due to the absence of a user interface on many devices and the potential insecurity of network paths, making it difficult to implement secure communication channels for password changes.
Innovation Solution
A method involving a first device nonce and HMAC computations using an old password as a key, allowing for a new password to be derived on both devices without transmitting it over the network, through a key derivation function and two-phase commit protocol, ensuring secure password rollover even on unsecure networks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional secure communication channels are used for password changes, then password security is improved, but the system becomes inapplicable to devices without user interfaces and unsecure network paths
Solution Approach 1:
The system enables automatic password rollover where devices autonomously generate and exchange cryptographic credentials without requiring user interaction. The first device and second device automatically perform HMAC computations, nonce exchanges, and password derivation using stored credentials, eliminating the need for user interfaces while maintaining security through self-service authentication protocols
Solution Approach 2:
The patent introduces cryptographic intermediaries (HMAC functions, nonce values, and key derivation functions) that mediate the password change process over unsecure networks. These cryptographic primitives act as trusted intermediaries that enable secure password rollover without requiring a secure communication channel or direct user involvement
2Reliability
If a secure communication channel is established for password transmission, then password security is improved, but the complexity of the system increases
Solution Approach 1:
The patent replaces the mechanical approach of establishing secure communication channels (which requires complex key management and encryption infrastructure) with cryptographic computation based on symmetric HMAC functions. This substitution simplifies the system by using lightweight cryptographic operations that can be performed on resource-constrained devices without requiring complex secure channel infrastructure
3Productivity
If the new password is transmitted over the network, then password update is achieved, but security is compromised on unsecure networks
Solution Approach 1:
The system performs preliminary cryptographic preparations by having both devices store the old password credential before the password change is initiated. This pre-stored credential is then used to authenticate the password change request and derive the new password, ensuring that the new password never needs to be transmitted over the network as it is derived locally on each device using the pre-shared secret
Solution Approach 2:
The patent converts the limitation of unsecure networks into a benefit by designing a protocol where the new password is never transmitted at all. Instead of trying to securely transmit the new password over the unsecure network, the system uses the unsecure channel only for exchanging non-sensitive data (nonces and HMACs), while the sensitive new password is derived locally, turning the network insecurity from a vulnerability into a non-issue
Data Source
AI summary
A first device nonce and a first Hash based Message Authentication Code (HMAC) of the first device nonce using an old password as a key is received. The received first HMAC is compared to a computed second HMAC of the received first device nonce using a stored old password as the key for a match. In response to the match, a third HMAC of a second device nonce using the stored old password as the key is computed. A change password acknowledgement message is sent to the first device that comprises the second device nonce and the third HMAC. A final secret is computed using a second device secret and the first device nonce. A new password using a key derivation function that uses the old password and the final secret is computed. Thus, a new password is generated without sending the password over a network.

