Entropy-Based Key Derivation for Memory Encryption
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing data encryption methods for digital electronic systems fail to generate unique encryption keys for each instance of data write to memory, making them vulnerable to unauthorized access and side channel attacks.
Innovation Solution
A system and method that generates a unique encryption key for each data write to memory using an entropy-based key derivation function, ensuring each instance of data write has a specific encryption key unique to both the memory location and the instance of writing, thereby increasing security against unauthorized access and side channel attacks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If existing data encryption methods are used, then data can be encrypted and stored in memory, but the same encryption key is used for all data writes making the system vulnerable to unauthorized access and side channel attacks
Solution Approach 1:
The encryption key is segmented into multiple components: a master key stored securely, and unique key splits generated for each data write operation. Each key split is specific to a particular memory location and write instance, creating multiple discrete key segments rather than using a single key for all operations.
Solution Approach 2:
Key splits are generated in advance for each potential data write operation before the actual encryption occurs. This preliminary generation of unique key splits for each memory location and write instance allows the system to quickly encrypt data without real-time key derivation overhead.
2Productivity
If a single encryption key is used for all data writes, then the encryption process is simple and fast, but the system becomes vulnerable to side channel attacks and reverse engineering
Solution Approach 1:
Each memory location receives a locally unique key split tailored to that specific location and write instance. This local differentiation ensures that compromise of one key split does not affect other locations, and each encrypted data instance has its own cryptographic properties resistant to side channel analysis.
Solution Approach 2:
The encryption system changes the key parameter dynamically for each data write operation. Instead of using a static key, the system varies the key split based on multiple parameters including memory location address, write instance counter, and random values, making side channel attacks ineffective.
3Reliability
If unique encryption keys are generated for each data write instance, then security against side channel attacks is improved, but the key derivation process becomes more complex
Solution Approach 1:
A key derivation function acts as an intermediary between the stored master key and the unique key splits needed for each data write. This intermediary component transforms the single master key into multiple unique key splits using memory location addresses and write instance parameters, simplifying the overall key management architecture.
Solution Approach 2:
The key derivation mechanism uses the memory location address and write instance counter themselves as part of the key generation process. These parameters naturally differentiate each write operation without requiring external key management infrastructure, allowing the system to self-generate unique key splits.
Data Source
AI summary
A system may encrypt the contents of a memory using an encryption key that is generated based on an entropy-based key derivation function. The system may generate a random value as a key split associated with an instance of writing data to memory. The system may generate an encryption key for encrypting the data using an entropy-based key derivation function based at least in part on the key split. The system may encrypt the data using the encryption key. The system may store the encrypted data and the key split to the memory.


