Ephemeral Key Pair Implementation for TLS Forward Secrecy

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The static RSA key pair used in SSL/TLS-based network communications lacks Perfect Forward Secrecy, making it vulnerable to attacks where compromised server private keys can decrypt all session data, as all secrets are protected by the server's private key.

Innovation Solution

Implementing ephemeral key pairs for TLS connections, where the server generates a temporary certificate signed with its private key, allowing the client to use the ephemeral public key to encrypt and decrypt data, ensuring that each session key is unique and not reusable, thus preventing compromise of one session key from affecting others.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If static RSA key pair is used for SSL/TLS encryption, then encryption simplicity and ease of operation are improved, but security against key compromise is worsened because all session data becomes vulnerable when the server private key is compromised

Engineering Contradiction:
Improveencryption simplicityVSAvoidsecurity against key compromise
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent segments the cryptographic key usage by introducing ephemeral key pairs for each TLS session, separating the long-term server identity verification (using static RSA key) from the session-specific encryption (using ephemeral keys). This segmentation ensures that compromise of the static key does not expose session data, as each session uses its own independent ephemeral key pair.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces dynamic ephemeral key pairs that are generated for each TLS session and discarded after use, replacing the static RSA key pair for session encryption purposes. This dynamic key generation and disposal mechanism ensures that even if the static key is compromised, past and future sessions remain secure due to the temporary nature of each session's encryption keys.

Inventive Principle:
Principle #15Dynamics

2Reliability

If ephemeral key pairs are generated for each TLS session, then Perfect Forward Secrecy is improved, but device complexity and computational overhead increase

Engineering Contradiction:
ImprovePerfect Forward SecrecyVSAvoidkey management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements preliminary action by pre-generating pools of ephemeral key pairs and storing them securely before TLS sessions are established. This allows the server to quickly retrieve and use pre-generated ephemeral keys during the TLS handshake without performing computationally intensive key generation in real-time, thereby reducing the complexity burden while maintaining Perfect Forward Secrecy.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses copying by creating multiple copies of ephemeral key pairs in advance and storing them in a key pool. During TLS sessions, the server copies and uses one ephemeral key pair from the pool, then discards it. This copying approach simplifies key management by avoiding the need to generate new keys for each session while still providing the security benefits of ephemeral keys.

Inventive Principle:
Principle #26Copying

3Reliability

If ephemeral key pairs are used instead of static RSA keys, then session key independence is improved, but processing time and computational resources increase

Engineering Contradiction:
Improvesession key independenceVSAvoidsession establishment time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by pre-generating and storing pools of ephemeral key pairs before TLS sessions are needed. This allows the server to quickly retrieve pre-generated keys during the handshake process, avoiding the time-consuming operation of generating new ephemeral keys in real-time, thus reducing session establishment time while maintaining key independence.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements dynamic key selection by maintaining a pool of pre-generated ephemeral key pairs and selecting appropriate keys based on session requirements. This dynamic approach allows the server to efficiently manage key usage, retrieving keys as needed from the pool rather than generating them on-demand, thereby reducing processing time while ensuring each session has its own independent key pair.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11985239B2Forward secrecy in transport layer security (TLS) using ephemeral keys
Publication Date: 2024.05.14 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11985239B2 patent drawing
  • US11985239B2 patent drawing
  • US11985239B2 patent drawing

AI summary

Transport Layer Security (TLS) connection establishment between a client and a server for a new session is enabled using an ephemeral (temporary) key pair. In response to a request, the server generates a temporary certificate by signing an ephemeral public key using the server's private key. A certificate chain comprising at least the temporary certificate that includes the ephemeral public key, together with a server certificate, is output to the client by the server, which acts as a subordinate Certificate Authority. The client validates the certificates, generates a session key and outputs the session key wrapped by the ephemeral public key. To complete the connection establishment, the server applies the ephemeral private key to recover the session key derived at the client for the new session. The client and server thereafter use the session key to encrypt and decrypt data over the link. The ephemeral key pair is not reused.