Proxy Component for Cryptographic Agility in Legacy Applications

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional software applications lack a convenient mechanism for changing cryptographic algorithms without modifying the base code, making it time-consuming and difficult to address the dynamic nature of computing security and emerging threats, especially with the rise of quantum computing.

Innovation Solution

Implementing a cryptographic agility system that decouples cryptographic logic from applications, using a proxy component to dynamically select and configure cryptographic algorithms based on contextual information, such as security requirements, resource constraints, and policies, allowing for continuous updates without modifying the underlying applications.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If cryptographic algorithms are hard-coded into legacy applications, then the applications can maintain stable performance and compatibility, but they cannot adapt to new security threats and algorithm updates without code modification

Engineering Contradiction:
Improvecryptographic algorithm adaptabilityVSAvoidsystem architecture complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the cryptographic functionality from the legacy application by introducing a proxy component. The application code is divided into two independent parts: the legacy application itself and the cryptographic proxy. This segmentation allows the proxy to be updated independently with new algorithms while the legacy application remains unchanged, resolving the contradiction between adaptability and complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a cryptographic proxy as an intermediary component between the legacy application and the cryptographic operations. This intermediary intercepts cryptographic calls from the application, dynamically selects appropriate algorithms based on contextual information, and executes the operations. The intermediary enables algorithm adaptability without requiring changes to the legacy application code.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If cryptographic algorithms are updated to address new security threats, then security level improves, but the update process becomes time-consuming and error-prone due to required code modifications

Engineering Contradiction:
Improvesecurity levelVSAvoidalgorithm update time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements preliminary action by pre-configuring multiple cryptographic algorithms and their selection criteria in the proxy component before security threats materialize. The proxy maintains a library of algorithms with associated metadata (security requirements, performance characteristics, applicable contexts). When a security update is needed, only the proxy configuration needs to be updated, not the entire application, significantly reducing update time and eliminating the need for error-prone code modifications.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If new cryptographic algorithms with higher security are adopted, then security strength increases, but resource requirements such as processing power and memory increase

Engineering Contradiction:
Improvesecurity strengthVSAvoidcomputational resource consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent implements dynamics by enabling runtime selection of cryptographic algorithms based on contextual information such as security requirements, available resources, and operational conditions. The proxy component dynamically adjusts the cryptographic algorithm being used, allowing the system to switch between high-security algorithms when resources are abundant and more efficient algorithms when resources are constrained. This dynamic adaptation resolves the contradiction between security strength and resource consumption.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent applies parameter changes by allowing the cryptographic algorithm parameters (algorithm type, key size, mode of operation) to be changed dynamically based on security requirements and resource availability. The proxy component modifies cryptographic parameters without changing the underlying application code, enabling the system to optimize the balance between security strength and computational resource consumption by selecting appropriate algorithm parameters for each operational context.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11924343B2Mechanism for enabling cryptographic agility in legacy applications and services
Publication Date: 2024.03.05 VMWARE INC
  • US11924343B2 patent drawing
  • US11924343B2 patent drawing
  • US11924343B2 patent drawing

AI summary

The disclosure provides an approach for cryptographic agility. Embodiments include establishing, by a proxy component associated with a cryptographic agility system, a first secure connection with an application. Embodiments include receiving, by the proxy component, via the first secure connection, a communication from the application directed to an endpoint. Embodiments include selecting, by the cryptographic agility system, a cryptographic technique based on contextual information related to the communication. Embodiments include establishing, by the proxy component, a second secure connection with the endpoint based on the cryptographic technique. Embodiments include transmitting, by the proxy component, a secure communication to the endpoint via the second secure connection based on the communication.