Memory Data Integrity Protection via Hash Verification
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Security vulnerabilities in memory systems can lead to data alteration during data relocation operations, resulting in data loss and potential security breaches.
Innovation Solution
Implementing a cryptographic hash function to generate a hash value of data during write operations, and using this hash to validate data integrity during relocation, thereby preventing invalid or altered data from being written to destination memory regions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If data is relocated during garbage collection operations, then storage capacity is reclaimed, but data integrity is compromised due to security vulnerabilities
Solution Approach 1:
The system performs preliminary actions by computing and storing hash values of data before relocation operations. During garbage collection, the hash of source data is computed and stored temporarily, then after data relocation to destination blocks, the hash is verified against the relocated data to ensure integrity before erasing source blocks.
Solution Approach 2:
The system implements feedback mechanisms by verifying data integrity through hash comparison after relocation operations. The hash verification provides feedback on whether data was altered during relocation, enabling the system to detect and prevent data corruption while maintaining garbage collection operations.
2Reliability
If hash verification is performed for every data relocation, then data integrity is protected, but system performance decreases
Solution Approach 1:
The system applies partial verification by performing hash computation and verification only on data blocks that are relocated during garbage collection operations, rather than verifying all data in the memory system. This selective approach reduces the overall verification overhead while maintaining protection for relocated data.
Solution Approach 2:
The system uses temporary hash storage in volatile memory as a disposable intermediate structure. Hash values are computed and stored temporarily during relocation operations, then verified and discarded after use. This approach avoids the overhead of persistent hash storage while enabling integrity verification.
Data Source
AI summary
Methods, apparatuses, and systems related to data management and security in a memory device are described. Data may be stored in a memory system, and as part of an operation to move data from one region to another in the memory system, the data may be validated using one or more hash functions. For example, a memory device may compute a hash value of some stored data, and use the hash value to validate another version of that stored data in the process of writing the other version stored data to a region of the memory system. The memory device may store another hash that is generated from the hash of the stored data and a record of transactions such that transactions are identifiable; the sequence of transactions within the memory system may also be identifiable. Hashes of transactions may be stored throughout the memory system or among memory systems.


