Memory Integrity Check via Encrypted CRC Segmentation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing memory systems face challenges in implementing effective encryption integrity checks without exposing plaintext data, particularly in ensuring the proper operation of encryption engines in memory systems for electronic devices.
Innovation Solution
The implementation of a two-level memory system with a near memory cache and far memory, where the far memory controller performs AES integrity checks by encrypting and decrypting cyclical redundancy checks (CRCs) using a nonce formed from write counts and physical addresses, allowing for integrity verification without decrypting the entire data line, thus reducing latency and power consumption.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the encryption engine encrypts the entire data line for integrity verification, then data integrity can be ensured, but computational overhead and latency increase significantly
Solution Approach 1:
The patent segments the integrity verification process by extracting only the CRC portion from the encrypted data line and verifying it separately. Instead of decrypting and verifying the entire data line, the system isolates the CRC field (typically 32 bits) from the rest of the encrypted data, allowing focused verification of data integrity without the computational burden of processing the complete encrypted block.
Solution Approach 2:
The patent extracts the CRC component from the encrypted data line and processes it independently. The CRC field is identified and separated from the main data payload, allowing the integrity check to be performed on this extracted portion alone. This extraction approach enables verification of data integrity while avoiding the need to decrypt or process the entire data line, significantly reducing computational overhead and latency.
2Reliability
If the encryption engine processes full data lines for integrity checks, then comprehensive verification is achieved, but power consumption increases
Solution Approach 1:
The patent segments the integrity verification process by extracting only the CRC portion from the encrypted data line and verifying it separately. Instead of decrypting and verifying the entire data line, the system isolates the CRC field (typically 32 bits) from the rest of the encrypted data, allowing focused verification of data integrity without the computational burden of processing the complete encrypted block.
Solution Approach 2:
The patent applies partial action by performing integrity verification on only the necessary portion of the data (the CRC field) rather than the entire data line. This partial processing approach provides sufficient integrity assurance while consuming significantly less power than full-line decryption and verification would require.
3Measurement precision
If plaintext data is exposed during integrity verification, then verification accuracy improves, but security is compromised
Solution Approach 1:
The patent uses the encrypted CRC field as an intermediary for verification. Instead of exposing plaintext data during integrity checks, the system operates on the encrypted CRC portion which serves as a mediator between the need for verification and the requirement for security. The verification process maintains cryptographic boundaries while still achieving accurate integrity assessment.
Solution Approach 2:
The patent changes the operational parameter from plaintext processing to encrypted data processing during integrity verification. By performing CRC verification on the encrypted portion rather than requiring decryption to plaintext, the system maintains verification accuracy while preserving security boundaries and preventing plaintext exposure during the verification process.
4Productivity
If a simple CRC check is used without encryption, then processing speed increases, but security against tampering is reduced
Solution Approach 1:
The patent merges two previously separate operations—encryption and integrity verification—into a unified process. The CRC is calculated over the plaintext data, then the entire data line including the CRC is encrypted together. This merging ensures that the CRC verification can be performed on the encrypted data without requiring separate decryption steps, maintaining both security and processing efficiency.
Data Source
AI summary
Apparatus, systems, and methods for AES integrity check in memory are described. In one embodiment, a controller comprises logic to receive a write request from a host device to write a line of data to the memory device, determine a first plaintext cyclic redundancy check from the line of data, encrypt the line of data, encrypt the first plaintext CRC with a unique value to generate a first encrypted CRC, and store the encrypted line of data and the first encrypted CRC in memory. Other embodiments are also disclosed and claimed.


