Terminal Security Module Authentication for Cryptographic Data Access
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for secure cryptographic data management, such as those using smart cards or authentication servers, face challenges in providing robust security without hardware constraints, particularly on mobile devices, and fail to establish a direct, immutable link between the terminal, user, and cryptographic data, leading to vulnerabilities in authentication and non-repudiation.
Innovation Solution
A method employing a security module that authenticates the terminal and user through an asymmetric cryptography protocol, establishing a secure channel to retrieve encrypted cryptographic data from a database using a first encryption key derived from the terminal's secret key and user's password, ensuring high entropy and non-repudiation, with additional encryption by the security module's key for secure storage.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If cryptographic data is stored encrypted on a signature server, then accessibility is improved, but security is worsened due to potential server attacks and administrator diversion
Solution Approach 1:
The cryptographic data is segmented into two parts: the secret key remains exclusively in the user's terminal, while only the public key is stored on the signature server. This segmentation ensures that even if the server is compromised, the secret key remains secure with the user, maintaining both accessibility and security.
Solution Approach 2:
The invention introduces an authentication mechanism as an intermediary that verifies the user's identity and terminal ownership before allowing access to cryptographic operations. This intermediary layer prevents unauthorized access even if the server is attacked, as the secret key never leaves the user's terminal.
2Device complexity
If authentication is based on identical secrets shared between user and server, then simplicity is improved, but non-repudiation is worsened
Solution Approach 1:
The invention applies asymmetry by using different keys for different purposes: the public key is shared with the server for authentication and encryption, while the secret key remains private with the user for signing operations. This asymmetric key system provides both simplicity in authentication and strong non-repudiation, as only the user possesses the secret key needed to generate valid signatures.
3Reliability
If a direct link between terminal, user, and cryptographic data is established, then security is improved, but hardware constraints worsen due to need for chip card readers
Solution Approach 1:
The invention extracts the requirement for specialized hardware (chip card readers) by implementing the security mechanism purely in software. The secret key is stored in the terminal's memory and protected through software-based authentication and encryption mechanisms, making the system compatible with mobile devices and computers without specialized hardware while maintaining strong security links between terminal, user, and cryptographic data.
4Adaptability or versatility
If cryptographic data is accessible from any terminal with proper authentication, then versatility is improved, but security is worsened due to potential terminal misidentification
Solution Approach 1:
The invention implements preliminary binding between the user's secret key and their specific terminal during an initialization phase. The terminal's identification is cryptographically bound to the secret key before use, preventing misidentification attacks. This preliminary action ensures that even if authentication mechanisms are sophisticated, the cryptographic data can only be used with the authorized terminal, maintaining both versatility and security.
Data Source
Figure 1~4
Figure 2
Figure 3
AI summary
The method involves performing mutual authentication between a security module (SM) and a terminal e.g. laptop (T), for establishing a secure channel between the security module and the terminal. Cryptographic data (USK) of a user (U) is obtained by the security module from a database (BD). An encryption key (SMk) is calculated by the terminal and sent to the security module, and the cryptographic data is implemented by the security module after decryption of the cryptographic data by using the encryption key and another encryption key specific to the security module.