Soft-Token Authentication Using Secure Enclave and Dynamic Keys
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing soft-token systems are vulnerable to theft and misuse, susceptible to brute-force attacks, allow credential duplication, and impose computational burdens on devices, especially small mobile devices, due to stored credentials and asymmetric operations.
Innovation Solution
A soft-token system using a shared secret encrypted with a cryptographic hash of the user's PIN, changing with each authentication, ensuring the PIN is never exposed to the remote server and requiring communication for PIN verification, thus preventing unauthorized use and reducing computational load.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If soft-token credentials are stored in a certificate store or key chain accessible to other applications, then authentication functionality is provided, but the system becomes vulnerable to theft and misuse by malware and malicious users
Solution Approach 1:
The patent introduces a secure enclave or trusted execution environment as an intermediary layer between the authentication credentials and the rest of the system. This mediator isolates the soft-token credentials from other applications, allowing authentication functionality while preventing malware and malicious users from accessing or stealing the credentials.
2Object-affected harmful factors
If credential data is encrypted with a PIN, then protection against unauthorized access is provided, but the system becomes vulnerable to brute-force attacks on the user's PIN
Solution Approach 1:
The secure enclave acts as an intermediary that handles PIN verification internally without exposing the verification process to external attackers. The enclave can perform multiple PIN verification attempts internally while presenting a limited interface to the user, thereby providing protection against unauthorized access while mitigating brute-force attack vulnerability.
Solution Approach 2:
The system implements pre-emptive security measures by implementing rate limiting, account locking, or progressive delay mechanisms within the secure enclave before brute-force attacks can succeed. These cushioning measures are built into the authentication process to prevent catastrophic failure even if the PIN encryption is compromised.
3Stability of the object's composition
If a stored credential changes infrequently, then authentication stability is maintained, but the credential can be copied and used on other devices
Solution Approach 1:
The patent implements dynamic credentials that change frequently or periodically within the secure enclave. The soft-token credentials are updated at regular intervals or based on usage patterns, maintaining authentication stability through controlled changes while preventing credential copying since stolen credentials become invalid quickly. The secure enclave manages these dynamic updates transparently to maintain user experience.
4Reliability
If asymmetric operations are performed each time the soft-token is used, then security is strengthened, but computational requirements degrade user experience on mobile devices
Solution Approach 1:
The system performs preliminary asymmetric operations during the credential setup and enrollment phase, storing the results in the secure enclave. During actual authentication transactions, only lightweight symmetric operations are required, maintaining strong security through the pre-computed values while significantly reducing computational requirements and improving user experience on resource-constrained mobile devices.
Data Source
AI summary
A system for authenticating a user and his local device to a secured remote service with symmetrical keys, which utilizes a PIN from the user and a unique random value from the local device in such a way that prevents the remote service from ever learning the user's PIN, or a hash of that PIN. The system also provides mutual authentication, verifying to the user and local device that the correct remote service is being used. At the same time, the system protects against PIN guessing attacks by requiring communication with the said remote service in order to verify if the correct PIN is known. Also, the system works in such a way as to change the random value stored on the user's local device after each authentication session.


