Remote Key Management for Secure Session Handshake
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Secure network communications using SSL/TLS face challenges when the server lacks access to its private key during the handshake process, hindering the decryption of the premaster secret and signing of cryptographic parameters, which is crucial for establishing a secure session.
Innovation Solution
A method where a secure session server requests a key server to access and use the private key stored remotely, allowing the key server to decrypt the encrypted premaster secret and sign cryptographic parameters, enabling the generation of session keys for secure communication without the server needing local access to the private key.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the server stores the private key locally for decryption and signing operations, then the security operations can be performed efficiently, but the security risk increases due to potential compromise of the private key
Solution Approach 1:
The private key is extracted from the server system and stored externally in a secure key management system. The server can request decryption and signing operations without having local access to the private key, thus eliminating the security risk of private key compromise while maintaining operational capability.
Solution Approach 2:
A key management system acts as an intermediary between the server and the private key. The server sends requests to the key management system for decryption and signing operations, and the key management system performs these operations using the private key without the server ever having direct access to it.
2Reliability
If the server does not store the private key locally, then the security risk is reduced, but the server cannot perform decryption and signing operations independently
Solution Approach 1:
The key management system is designed to perform multiple functions including key storage, decryption operations, signing operations, and key management. This multi-functional system reduces the need for separate components and simplifies the overall architecture despite the added security layer.
3Reliability
If the private key is stored externally in a key management system, then the server operates with enhanced security, but additional communication overhead is required for key operations
Solution Approach 1:
The key management system pre-loads and caches frequently used cryptographic operations and results. When the server requests decryption or signing, the system can quickly retrieve pre-computed values or use cached session information to minimize communication overhead and reduce handshake time.
Data Source
AI summary
A server establishes a secure session with a client device where a private key used in the handshake when establishing the secure session is stored in a different server. During the handshake procedure, the server receives a premaster secret that has been encrypted using a public key bound with a domain for which the client device is attempting to establish a secure session with. The server transmits the encrypted premaster secret to the different server for decryption along with other information necessary to compute a master secret. The different server decrypts the encrypted premaster secret, generates the master secret, and transmits the master secret to the server. The server receives the master secret and continues with the handshake procedure including generating one or more session keys that are used in the secure session for encrypting and decrypting communication between the client device and the server.


