Cryptographic Agility System for Dynamic Algorithm Selection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional cryptographic systems lack flexibility and efficiency in adapting to changing security needs and resource constraints, requiring costly and error-prone modifications to applications to update cryptographic algorithms, and are vulnerable to emerging threats such as quantum computing.

Innovation Solution

A cryptographic agility system that dynamically selects and configures cryptographic algorithms based on network and resource constraints, decoupling cryptographic logic from applications and using a separate component to manage algorithm selection and configuration based on contextual information and policies, allowing for continuous updates without modifying application code.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If conventional cryptographic systems use fixed algorithms, then implementation is simple, but adaptability to changing security needs and resource constraints deteriorates

Engineering Contradiction:
Improveadaptability to changing security needsVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system segments cryptographic functionality into separate, interchangeable algorithm modules (e.g., AES-128, AES-256, ChaCha20) that can be independently selected and updated. This modular architecture allows the application to maintain simple code while the cryptographic layer adapts to different security requirements through module selection rather than code modification.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

An intermediary cryptographic management layer is introduced between the application and the cryptographic algorithms. This intermediary handles algorithm selection, configuration, and updates based on security policies and resource constraints, shielding the application from complexity while enabling adaptability to changing security needs.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If cryptographic algorithms are updated frequently, then security improves, but code modification costs and errors increase

Engineering Contradiction:
Improvesecurity levelVSAvoidcode modification ease
Core Design Contradiction:
ReliabilityVSEase of manufacture

Solution Approach 1:

Multiple cryptographic algorithms are pre-configured and validated in the system before runtime. The application can switch between pre-configured algorithms (e.g., from AES-128 to AES-256 or to post-quantum algorithms) without modifying code, enabling security updates through configuration changes rather than code changes.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The cryptographic configuration is made dynamic and changeable at runtime through policy updates. The system can adaptively select different algorithms based on current security threats, resource availability, and compliance requirements without requiring application code modification, thus improving security while maintaining ease of implementation.

Inventive Principle:
Principle #15Dynamics

3Reliability

If high-security algorithms are used, then security level improves, but resource consumption increases

Engineering Contradiction:
Improvesecurity levelVSAvoidprocessing resources
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The system dynamically changes cryptographic parameters (algorithm type, key size, mode of operation) based on resource constraints and security requirements. For example, it can select AES-128 for resource-constrained devices and AES-256 or post-quantum algorithms for resource-abundant systems, optimizing the balance between security level and resource consumption.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

Different cryptographic algorithms and parameters are applied to different parts of the system or different data streams based on local resource availability and security needs. Critical data may receive high-security algorithms while less critical data uses more efficient algorithms, optimizing overall resource utilization while maintaining necessary security levels.

Inventive Principle:
Principle #3Local quality

4Reliability

If cryptographic algorithms are customized for specific applications, then security fit improves, but ease of operation deteriorates

Engineering Contradiction:
Improvesecurity appropriatenessVSAvoidalgorithm management ease
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The cryptographic system is designed with universal, standardized algorithms (AES, ChaCha20, post-quantum algorithms) that can serve multiple applications and security requirements. Rather than customizing algorithms for each application, the system provides a universal interface that adapts to different needs through parameter selection and algorithm choice, maintaining ease of operation while achieving appropriate security fit.

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

Solution Approach 2:

The system incorporates feedback mechanisms that monitor resource usage, security threats, and compliance requirements to automatically adjust cryptographic algorithm selection. This automated feedback-driven selection process eliminates the need for manual customization while ensuring that the most appropriate algorithms are chosen for each context, maintaining both security appropriateness and operational ease.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS12088713B2Dynamic selection and calibration of ciphers based on network and resource constraints
Publication Date: 2024.09.10 VMWARE INC
  • US12088713B2 patent drawing
  • US12088713B2 patent drawing
  • US12088713B2 patent drawing

AI summary

The disclosure provides an approach for cryptographic agility. Embodiments include receiving a request from an application for a cryptographic operation, wherein the request is associated with a computing device. Embodiments include determining one or more resource constraints related to the computing device. Embodiments include selecting, based on the one or more resource constraints, a cryptographic technique from a plurality of cryptographic techniques associated with indications of resource requirements. Embodiments include performing the cryptographic operation using the cryptographic technique. Embodiments include providing a response to the application based on performing the cryptographic operation.