HSM Key Fragment Segmentation for Secure Data Encryption

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data encryption methods in multi-tenant database environments face performance issues with asymmetric key cryptography, particularly when encrypting and decrypting customer data, as they are slow and require secure management of decryption keys.

Innovation Solution

The solution involves generating and managing two key fragments using a hardware security module (HSM), where each fragment is encrypted and stored in separate, mutually exclusive storage areas, and a master key is derived from these fragments for secure encryption and decryption of customer data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If asymmetric key cryptography is used to encrypt customer data, then security is improved, but encryption and decryption speed deteriorates

Engineering Contradiction:
ImprovesecurityVSAvoidencryption and decryption speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The private key is divided into multiple key fragments (first key fragment, second key fragment, third key fragment) that are stored in separate storage areas. Each fragment alone cannot decrypt the customer data; all fragments must be combined to reconstruct the private key for decryption. This segmentation maintains security while enabling faster decryption operations compared to storing and managing a single private key.

Inventive Principle:
Principle #1Segmentation

2Ease of operation

If a single private key is stored for decryption, then decryption capability is maintained, but security against key compromise deteriorates

Engineering Contradiction:
Improvedecryption capabilityVSAvoidsecurity against key compromise
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The private key is segmented into multiple key fragments stored in different locations (first storage area, second storage area, third storage area). This ensures that even if one storage area is compromised, the entire private key cannot be reconstructed, thereby maintaining security against key compromise while preserving decryption capability through the combination of all fragments.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A key combining module acts as an intermediary that securely combines the key fragments in memory to reconstruct the private key only when needed for decryption. This intermediary mechanism ensures that the fragments themselves never expose the complete key, maintaining security while enabling decryption operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If key fragments are stored in separate storage areas, then security is improved, but system complexity increases

Engineering Contradiction:
ImprovesecurityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system divides the private key into multiple fragments stored in separate storage areas, which inherently increases security. The associated increase in complexity is managed through automated key combination processes and clear separation of duties between different modules (encryption module, decryption module, key combining module), making the complex system manageable and maintainable.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10541811B2Systems and methods for securing data
Publication Date: 2020.01.21 SALESFORCE INC
  • US10541811B2 patent drawing
  • US10541811B2 patent drawing
  • US10541811B2 patent drawing

AI summary

Embodiments include an apparatus for securing customer data and include a processor, and one or more stored sequences of instructions which, when executed, cause the processor to store an encrypted first key fragment in a first storage area, store an encrypted second key fragment in a separate second storage area, wherein access to the first storage area and to the second storage area is mutually exclusive. The instructions further cause the processor to decrypt the encrypted first key fragment and the encrypted second key fragment using a key set and keys associated with a hardware security module based on receiving a request to derive a master key. The master key is derived using the decrypted first key fragment and the decrypted second key fragment and stored in an in-memory cache. The master key is used to encrypt or to decrypt encrypted customer data.