Secure Hardware Device Session Key Exchange via Identifier-Based Secret Retrieval
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Secure communication between a secure hardware device and a computer is compromised through an insecure interface, allowing potential eavesdropping and unauthorized access to software applications.
Innovation Solution
A method involving a group of secret sets, where each set includes a secret and an identifier, is used to generate and share session keys securely, allowing the secure hardware device to retrieve secrets based on identifiers, enabling encryption and decryption of data through an insecure channel.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If a common interface (e.g., USB port) is used to connect the secure hardware device to the computer, then ease of operation and compatibility are improved, but security is worsened due to potential eavesdropping and unauthorized access
Solution Approach 1:
The secret material is segmented into multiple secret sets, each associated with a different identifier. This segmentation allows the system to use different secret sets for different applications or communication sessions, enhancing security while maintaining ease of connection through the same physical interface.
Solution Approach 2:
The system dynamically selects and switches between different secret sets based on the identifier received from the application. This dynamic switching capability allows the secure hardware device to adapt its security parameters in real-time, maintaining security against eavesdropping while preserving operational ease.
2Device complexity
If the same secret is used for multiple applications, then device complexity is reduced, but security is worsened due to potential compromise across all applications
Solution Approach 1:
The single secret is segmented into multiple distinct secret sets (first secret set, second secret set, etc.), each stored in the secure hardware device and associated with a unique identifier. This allows different applications to use different secret sets, providing security isolation while keeping the device structure relatively simple.
Solution Approach 2:
An identifier acts as an intermediary between the application and the secret sets. The application provides an identifier, and the secure hardware device uses this identifier to select the appropriate secret set, thereby isolating different applications' security domains without requiring complex direct management of multiple secrets in the application itself.
3Reliability
If a new secret is generated for each application, then security is improved through isolation, but device complexity and secret management overhead increase
Solution Approach 1:
The secure hardware device is designed with universal functionality to store and manage multiple secret sets through a unified interface. The device can handle any number of secret sets using the same identifier-based selection mechanism, providing security isolation for multiple applications without proportionally increasing device complexity.
Solution Approach 2:
The identifier serves as a universal intermediary that simplifies the management of multiple secret sets. Instead of the device needing to track and manage each secret independently, the identifier-based selection mechanism provides a simple, scalable way to associate applications with their respective secret sets, reducing management overhead.
4Reliability
If the secure hardware device is modified to support multiple secret sets, then security and functionality are improved, but ease of repair and device compatibility are worsened
Solution Approach 1:
The secure hardware device incorporates universal multi-functionality to support multiple secret sets without requiring different hardware configurations. The device can work with any application that provides a valid identifier, maintaining broad compatibility while enhanced security capabilities.
Solution Approach 2:
The device dynamically adapts to different applications by selecting appropriate secret sets based on received identifiers, rather than requiring static configuration for each application. This dynamic behavior maintains compatibility with existing devices while providing improved security, as the same hardware can serve multiple purposes without modification.
Data Source
AI summary
A group of sets is provided, each including a secret and an assigned identifier. The sets are stored in a hardware device that can retrieve the secret of any of the sets using the secret's corresponding identifier. A set is stored in an application, and the application is delivered to a user who runs it on a computer coupled to the device. The application defines a session key, generates session data including the stored set's identifier and the session key encrypted with the stored set's corresponding secret, and sends the session data to the device. The device retrieves from the session data the encrypted session key and the identifier, retrieves from its storage the secret corresponding to the identifier, and uses the secret to decrypt the session key. The session key is then used as a shared key for secure communications between the hardware device and the computer.


