Memory Controller Dummy Program for Secure Key Erasure
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing memory systems face challenges in securely erasing encrypted data from nonvolatile memories without reducing the limited number of program-erase cycles and efficiently managing security keys.
Innovation Solution
A memory controller with a key generator and encryption/decryption circuit that generates and manages security keys, allowing encrypted data to be stored alongside security keys, enabling a dummy program operation instead of actual erasure when requested, thus preserving the memory's program-erase cycles.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If actual erasing of encrypted data is performed in nonvolatile memories, then data security is improved, but the limited number of program-erase cycles is reduced
Solution Approach 1:
The patent creates a copy of the security key (first encrypted security key) and stores it separately from the original security key. When data needs to be erased, the system uses the copied encrypted key to invalidate the original key, thereby securing the data without physically erasing it from the memory. This copying approach allows multiple erasure operations without consuming program-erase cycles.
Solution Approach 2:
The patent introduces an intermediary mechanism (the first encrypted security key stored in a separate location) that mediates between the original security key and the encrypted data. By manipulating this intermediary (performing dummy program operations on it), the system can secure data without directly erasing the original key or data, thus preserving program-erase cycles while maintaining security.
2Adaptability or versatility
If security keys are stored separately from encrypted data, then key management flexibility is improved, but device complexity increases
Solution Approach 1:
The patent segments the storage system into distinct components: one location stores the original security key, another location stores the first encrypted security key (a copy), and a third location stores the encrypted data. This segmentation allows independent management of keys and data, providing flexibility in key management operations while distributing the complexity across separate storage locations rather than requiring a complex unified system.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A memory controller includes a key generator, an encryption and decryption circuit, and a processor. The key generator generates a first security key and a second security key based on a write request from a host. The encryption and decryption circuit encrypts write data corresponding to the write request based on the first security key to generate encrypted write data, and encrypts the first security key based on the second security key to generate a first encrypted security key. The processor controls nonvolatile memories such that the encrypted write data, the first encrypted security key, and the second security key are programmed in at least one of the nonvolatile memories, and controls the nonvolatile memories such that a dummy program operation is performed on a page of the nonvolatile memories in which the second security key is programmed instead of erasing the encrypted write data.