Cryptographic Memory Management with MAC-Based Error Correction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing error correcting code (ECC) memory techniques are not cryptographically secure, leading to increased system costs and vulnerability to errors and malicious attacks.
Innovation Solution
Implementing a cryptographically strong message authentication code (MAC) or HMAC to replace ECC detection mechanisms, using a statistical trial and error approach to identify and correct errors in memory devices, and incorporating total memory encryption (TME) for enhanced security.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional ECC memory techniques are used, then error detection capability is provided, but cryptographic security is not achieved and system costs increase
Solution Approach 1:
The patent transforms traditional ECC parameters into cryptographic parameters by using the same XOR-based correction mechanism but interpreting the correction code as a cryptographic authentication tag. The correction code is generated using cryptographic key material and processed through cryptographic hash functions, changing the mathematical parameters from simple error correction to cryptographically secure authentication while maintaining the same hardware operation efficiency.
2Object-affected harmful factors
If cryptographic security is implemented, then security against malicious attacks is improved, but memory cost and system complexity increase
Solution Approach 1:
The patent makes the memory correction code serve multiple functions simultaneously: it acts as both an error correction code for random bit errors and as a cryptographic authentication tag for detecting malicious attacks. The same correction code structure and verification mechanism handle both traditional ECC functions and cryptographic security functions, eliminating the need for separate cryptographic hardware and reducing overall system complexity.
3Object-affected harmful factors
If cryptographic MAC is used instead of ECC, then cryptographic security is achieved, but error correcting capability may be reduced
Solution Approach 1:
The patent performs preliminary cryptographic processing on the correction code during the write operation, generating the authentication tag in advance and storing it with the data. This preliminary action ensures that when verification occurs during read operations, the full error correcting capability is already embedded in the pre-computed correction code, allowing the system to maintain complete error correction functionality while adding cryptographic security without requiring additional correction mechanisms.
Data Source
AI summary
In one example, a system for managing encrypted memory comprises a processor to store a first MAC based on data stored in system memory in response to a write operation to the system memory. The processor can also detect a read operation corresponding to the data stored in the system memory, calculate a second MAC based on the data retrieved from the system memory, determine that the second MAC does not match the first MAC, and recalculate the second MAC with a correction operation, wherein the correction operation comprises an XOR operation based on the data retrieved from the system memory and a replacement value for a device of the system memory. Furthermore, the processor can decrypt the data stored in the system memory in response to detecting the recalculated second MAC matches the first MAC and transmit the decrypted data to cache thereby correcting memory errors.


