Load Balancer Handshake Offload for Distributed Key Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Managing cryptographic keys in large distributed computer systems is complex and cumbersome, especially for popular systems like electronic commerce platforms, where ensuring security and flexibility is challenging due to the number of devices involved and the need to handle increased traffic and potential malicious attacks.

Innovation Solution

Implementing a handshake server that offloads handshake operations for establishing cryptographically protected communications sessions, allowing clients to negotiate session parameters with the handshake server instead of the main server, which then provides the necessary cryptographic keys to the server, thereby reducing the burden of key management and enhancing security by limiting access to sensitive information.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If cryptographic keys are distributed to multiple servers to handle increased traffic demand, then system capacity and availability improve, but key management complexity and security risks increase

Engineering Contradiction:
Improvesystem capacityVSAvoidkey management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system segments the cryptographic functionality by separating the key management function from the service processing function. The load balancer is divided into a key management module that securely stores cryptographic keys and a traffic distribution module that handles request routing. This segmentation allows multiple servers to handle traffic without each server needing access to the private key, thus increasing system capacity while maintaining secure centralized key management.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The load balancer acts as an intermediary between clients and backend servers, and also as an intermediary for key distribution. It receives client requests, selects appropriate servers using cryptographic session information, and forwards requests without exposing private keys to the servers. This intermediary role enables traffic distribution across multiple servers while maintaining secure key management centralization.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If cryptographic handshakes are performed directly between clients and each server, then security is maintained, but system complexity and overhead increase

Engineering Contradiction:
ImprovesecurityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system merges the cryptographic handshake function into the load balancer, combining the SSL/TLS termination capability with the traffic distribution function. The load balancer performs the cryptographic handshake with clients once, establishes secure sessions, and then distributes traffic to backend servers without requiring each server to perform separate handshakes. This reduces system complexity while maintaining security through centralized cryptographic management.

Inventive Principle:
Principle #5Merging (Combining)

3Adaptability or versatility

If private keys are stored on multiple servers for flexibility, then system adaptability improves, but security exposure increases

Engineering Contradiction:
Improvesystem flexibilityVSAvoidsecurity exposure
Core Design Contradiction:
Adaptability or versatilityVSObject-affected harmful factors

Solution Approach 1:

The system extracts the private key storage function from the server group and concentrates it in the load balancer's key management module. This extraction allows the backend servers to be flexible and interchangeable without needing private keys, while the load balancer maintains secure centralized key storage. The private key is effectively taken out from the distributed server environment and placed in a dedicated security module.

Inventive Principle:
Principle #2Taking out (Extraction)

4Ease of operation

If handshake operations are performed by each server independently, then system autonomy is maintained, but operational efficiency decreases

Engineering Contradiction:
Improveoperational efficiencyVSAvoidhandshake processing capacity
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The load balancer is designed with multi-functionality, serving both as a traffic distribution point and as a cryptographic handshake processor. It maintains session state information and can handle handshake operations for multiple clients simultaneously, providing a universal service that benefits all backend servers without requiring each server to independently perform handshake operations.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS10122689B2Load balancing with handshake offload
Publication Date: 2018.11.06 AMAZON TECH INC
  • US10122689B2 patent drawing
  • US10122689B2 patent drawing
  • US10122689B2 patent drawing

AI summary

Cryptographically protected communications sessions are established using a distributed process. A load balancer proxies handshake messages to a first computer system that negotiates a cryptographically protected communications session with the client. When the client and first computer system complete negotiation of the session, the first computer system provides a set of session keys to a second computer system, through the load balancer or another channel. The second computer system then uses the session keys to communicate with the client over the cryptographically protected communications session.