Flash Translation Layer Encryption for Data Security
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional flash memories do not effectively protect optional data from being interpreted by users, as they store data without processing, allowing reverse engineering when code and debug symbol tables are stored.
Innovation Solution
A method and apparatus for managing data in a flash memory using a flash translation layer that searches pages for encryption storage functions, generates a page key for encryption when applicable, and encrypts data before storage, ensuring that data is not easily interpreted even when extracted.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If data is stored without encryption in flash memory, then ease of operation is improved (users can easily read and interpret data), but data security deteriorates (users can perform reverse engineering by extracting data)
Solution Approach 1:
The patent changes the state of data from plaintext to encrypted form by applying encryption algorithms. The data is transformed using cryptographic parameters (encryption keys, algorithms) so that while the physical storage remains the same, the interpretability parameter changes - authorized users can decrypt and read, but unauthorized users cannot interpret the encrypted data.
Solution Approach 2:
The patent introduces an encryption intermediary layer between the data storage and data access. The flash translation layer acts as a mediator that encrypts data before storing in flash memory and decrypts when reading. This intermediary transformation ensures that raw data in storage cannot be directly interpreted, solving the security issue while maintaining operational ease through automated encryption/decryption.
2Reliability
If encryption is applied to all data in flash memory, then data security is improved, but device complexity increases (requiring encryption management infrastructure)
Solution Approach 1:
The patent makes the flash translation layer multi-functional by combining encryption/decryption operations with existing flash memory management functions. The same FTL infrastructure that handles address translation, wear leveling, and error correction is extended to also perform encryption operations, avoiding the need for separate dedicated encryption hardware or software systems.
Solution Approach 2:
The patent implements self-service encryption where the flash translation layer automatically performs encryption and decryption operations without requiring external encryption management infrastructure. The system serves itself by integrating cryptographic functions into the existing memory management layer, eliminating the need for separate key management systems or additional security hardware.
3Reliability
If encryption functions are added to flash memory, then data security is improved, but manufacturing precision requirements increase (need for reliable encryption implementation)
Solution Approach 1:
The patent performs preliminary encryption action during the data writing phase, before data is stored in flash memory. By encrypting data upfront during the write operation, the system ensures that only encrypted data is ever stored, eliminating the risk of accidentally storing plaintext. This preliminary action approach simplifies the manufacturing requirements compared to implementing encryption at multiple stages.
Solution Approach 2:
The patent extracts the encryption function from the core flash memory device and places it in the flash translation layer. This separation allows the flash memory hardware to remain simple and well-manufactured, while the encryption logic resides in the software/firmware layer of the FTL, where complex cryptographic operations can be implemented without affecting hardware manufacturing precision requirements.
Data Source
AI summary
A method and apparatus for preventing a user from interpreting optional stored data information even when the user extracts the optional stored data, by managing data associated with a flash memory in a flash translation layer, the method comprising searching at least one page of the flash memory when writing data to the flash memory, determining whether authority information corresponding to respective searched pages includes an encryption storage function, generating, corresponding to respective searched pages, a page key according to an encrypting function when the authority information includes the encryption storage function encrypting the data using the generated page key and storing the encrypted data in the respective searched pages, and storing the data in the respective searched pages without encryption when the authority information does not include the encryption storage function.


