Token Verification Using Dynamic Hash Values
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional systems for dynamic value authentication rely on static or predictable shared secrets, making them vulnerable to prediction and requiring extensive distribution and storage, which compromises security and efficiency.
Innovation Solution
A central server generates a verification value based on dynamic data elements, eliminating the need for shared secrets between user devices and the server, allowing for secure validation without storing the verification value, thus enhancing security and reducing storage burdens.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a shared secret is used for dynamic value authentication, then authentication can be performed between user device and server, but the shared secret is vulnerable to prediction and requires extensive distribution and storage
Solution Approach 1:
The patent extracts the secret from the user device and places it exclusively on the server. Instead of both parties holding a shared secret, only the server holds the secret data element. The user device generates dynamic values without any secret, eliminating the need for secret distribution and storage across multiple devices.
Solution Approach 2:
The patent introduces a hash function as an intermediary mechanism. The server applies the hash function to the secret data element to generate dynamic values, and the same hash function is used by the user device to validate these values. This intermediary allows authentication without requiring the user device to store or know the secret.
2Reliability
If the authentication server stores the verification value, then validation can be performed, but security is compromised and storage burden increases
Solution Approach 1:
The patent extracts the verification value from storage and replaces it with a compact secret data element. Instead of storing the full verification value (which would be large and security-risky), the server stores only the small secret data element that can be used to regenerate verification values as needed.
Solution Approach 2:
The patent uses disposable, dynamically generated verification values that are created fresh for each authentication attempt and then discarded. The server doesn't store these verification values at all, but instead stores a reusable secret data element that can generate infinitely many unique verification values.
3Ease of operation
If a static shared secret is used, then distribution and storage is simplified, but the secret is at risk of being deduced or predicted
Solution Approach 1:
The patent transforms the static shared secret into a dynamic system where the server generates different verification values each time based on the secret data element. The secret itself remains static on the server, but its usage becomes dynamic through the hash function, producing unpredictable values that change with each authentication attempt.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A method for tokenizing credentials is disclosed. In addition to a token, a verification value can be provided for each interaction. The verification value can be generated based at least in part on a dynamic data element. The dynamic data element may be kept secret, while the verification value can be distributed for use during an interaction. When the verification value is used, it can be validated by re-creating the verification value based at least on the stored dynamic data element.