Non-Volatile Memory Controller Data Integrity via MAC
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Electronic devices with internal storage, such as solid state drives, face security challenges due to the vulnerability of data stored in host memory to tampering, as existing solutions lack effective mechanisms to ensure data integrity and security.
Innovation Solution
The implementation of a non-volatile memory system with a controller that uses a counter to generate a message authentication code (MAC) for each management area, associating it with the data, to detect and prevent tampering by utilizing a host memory address conversion table and managing data integrity through MAC values.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If data is stored in host memory, then data accessibility and storage capacity are improved, but data integrity and security deteriorate due to vulnerability to tampering
Solution Approach 1:
The system performs preliminary action by calculating and storing the MAC value along with the data before any potential tampering can occur. The MAC value is computed based on the data and counter value, then stored in association with the data in the host memory. This preliminary protection mechanism ensures that when data is later read, its integrity can be verified against the stored MAC value, preventing undetected tampering while maintaining full data accessibility and storage capacity.
2Reliability
If MAC value verification is performed for each data, then data security and integrity are improved, but device complexity and processing time increase
Solution Approach 1:
The system merges the MAC value with the data storage structure, storing both the data and its corresponding MAC value together in the host memory. This merging approach simplifies the verification process by allowing the controller to read and compare MAC values directly with the associated data in a single operation, rather than requiring separate verification steps. The counter value is also integrated into the MAC calculation, providing a straightforward mechanism for tracking and verifying data integrity without adding complex external verification systems.
3Reliability
If counter value is incremented for each data storage, then data integrity tracking is improved, but processing time and operational complexity increase
Solution Approach 1:
The system implements self-service by having the controller automatically increment the counter value and calculate the MAC value as part of the normal data storage process. The counter is incremented based on the data size, and the MAC value is automatically computed using the counter value and data without requiring external intervention or additional processing steps. This self-service mechanism integrates integrity tracking into the existing storage operations, minimizing additional processing time while maintaining reliable integrity tracking.
Data Source
AI summary
According to one embodiment, an electronic device includes a non-volatile memory; a controller that is electrically connected to the non-volatile memory and configured for accessibility to a memory space including a plurality of management areas in a host; at least one counter that is provided for each of the plurality of management areas and configured to increment a count value each time data is stored in the corresponding one of the plurality of management areas; and a circuit configured to generate a first value relating to integrity of the data for each management area based on the count value and the data. The controller is configured to store the data and the first value associated with the data.


