Security extensions for non-volatile memory
AssigneeAtmel Corporation
InventorsFrode Milch Pedersen, Ian Fullerton, Joseph Martinez, Martin Olsson
Life of this patent
Estimating the term…
Abstract
The disclosed embodiments provide security extensions for memory (e.g., non-volatile memory) by means of address and data scrambling and differential data storage to minimize exposure to side channel attacks and obfuscate the stored data. The scrambling function maximizes reverse engineering costs when recovering sequences of secret keys.
Claims20
A memory system comprising:
- memory;
- a memory controller coupled to the memory and operable to:
- receive a memory address and write data;
- determine that the memory address accesses a secure data region in the non-volatile memory;
- responsive to the determining, differentially expand the write data;
- and
- write the expanded write data to the secure data region at the memory address.
A memory controller comprising:
- non-volatile memory;
- a processor coupled to the non-volatile memory and operable to:
- receive a memory address and write data;
- determine that the memory address accesses a secure data region in the non-volatile memory;
- responsive to the determining, differentially expand the write data;
- and
- write the expanded write data to the secure data region at the memory address.
A method comprising:
- receiving, by a memory controller, a memory address and write data;
- determining, by the memory controller, that the memory address accesses a secure data region in memory;
- responsive to the determining:
- differentially expanding the write data;
- and
- writing the expanded write data to the secure data region at the memory address.
A non-transitory, computer-readable storage medium having instructions stored thereon, which, when executed one or more processors, causes the one or more processors to perform operations comprising:
- receiving, by a memory controller, a memory address and write data;
- determining, by the memory controller, that the memory address accesses a secure data region in memory embedded in or coupled to the memory controller;
- responsive to the determining:
- differentially expanding the write data;
- and
- writing the expanded write data to the secure data region at the memory address.
Dependencies are inferred from the claim text.