IP Library Granted Patent US 10,073,661
Granted Patent B2
US 10,073,661 · App. 15/385,810 · Granted Sep 11, 2018

Security extensions for non-volatile memory

Inventors: Frode Milch Pedersen (Trondheim, NO); Ian Fullerton (Los Gatos, CA); Joseph Martinez (Fremont, CA); Martin Olsson (Trondheim, NO)
Assignee: Atmel Corporation
G06F3/0679G06F3/062G06F3/0655G06F2212/72
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,073,661
App. No.
15/385,810
Granted
Sep 11, 2018
Kind
B2
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.

Claims (76)

1. 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, wherein each bit of write data is converted to an m-bit counterpart and m is a positive integer greater than one; and

write the expanded write data to the secure data region at the memory address.

2. The memory system of claim 1 , further comprising:

responsive to the determining, differentially expanding and scrambling the write data.

3. The memory system of claim 1 , further comprising:

a register operable to store data indicating a size of the secure data region in the memory.

4. The memory system of claim 1 , wherein the memory controller is further operable to:

receive a memory address;

determine that the memory address accesses the secure data region in the memory;

responsive to the determining:

obtain differentially expanded read data from the memory at the memory address in the secure data region;

compress the differentially expanded read data to its pre-expanded form; and

provide access to the read data.

5. The memory system of claim 4 , further comprising:

checking the integrity of the read data.

6. The memory system of claim 4 , further comprising:

responsive to the determining, descrambling the read data.

7. The memory system of claim 1 , wherein the memory is non-volatile memory.

8. 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, wherein each bit of write data is converted to an m-bit counterpart and m is a positive integer greater than one; and

write the expanded write data to the secure data region at the memory address.

9. The memory controller of claim 8 , further comprising:

responsive to the determining, differentially expanding and scrambling the write data.

10. The memory controller of claim 8 , further comprising:

a register operable to store data indicating a size of the secure data region in the non-volatile memory.

11. The memory controller of claim 8 , wherein the processor is further operable to:

receive the memory address;

determine that the memory address accesses the secure data region in the non-volatile memory;

responsive to the determining:

obtain differentially expanded read data from the non-volatile memory at the memory address in the secure data region;

compress the differentially expanded read data to its pre-expanded form; and

provide access to the read data.

12. The memory controller of claim 8 , further comprising:

checking the integrity of the read data.

13. The memory controller of claim 8 , further comprising:

responsive to the determining, descrambling the read data.

14. 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, wherein each bit of write data is converted to an m-bit counterpart and m is a positive integer greater than one; and

writing the expanded write data to the secure data region at the memory address.

15. The method of claim 14 , further comprising:

responsive to the determining, differentially expanding and scrambling the write data.

16. The method of claim 14 , further comprising:

storing, by a register in the memory controller, data indicating a size of the secure data region in the memory.

17. The method of claim 14 , further comprising:

receiving the memory address;

determining that the memory address accesses the secure data region in the memory;

responsive to the determining:

obtaining differentially expanded read data from the memory at the memory address in the secure data region;

compressing the differentially expanded read data to its pre-expanded form; and

providing access to the read data.

18. The method of claim 14 , further comprising:

checking the integrity of the read data.

19. 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, wherein each bit of write data is converted to an m-bit counterpart and m is a positive integer greater than one; and

writing the expanded write data to the secure data region at the memory address.

20. The non-transitory, computer-readable storage medium of claim 19 , further comprising:

determining that the memory address accesses the secure data region in the memory;

responsive to the determining:

obtaining differentially expanded read data from the memory at the memory address in the secure data region;

compressing the differentially expanded read data to its pre-expanded form; and

providing access to the read data.

Assignments (15)
RELEASE OF SECURITY INTEREST Recorded Mar 14, 2022
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
Reel/Frame 060894/0437 →
RELEASE OF SECURITY INTEREST Recorded Mar 11, 2022
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
Reel/Frame 059363/0001 →
RELEASE OF SECURITY INTEREST Recorded Mar 10, 2022
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
Reel/Frame 059863/0400 →
RELEASE OF SECURITY INTEREST Recorded Mar 9, 2022
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
Reel/Frame 059358/0001 →
RELEASE OF SECURITY INTEREST Recorded Feb 28, 2022
From: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
To: ATMEL CORPORATION
Reel/Frame 059262/0105 →
RELEASE OF SECURITY INTEREST Recorded Feb 25, 2022
From: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
To: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
Reel/Frame 059333/0222 →
SECURITY INTEREST Recorded Jun 4, 2021
From: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 057935/0474 →
SECURITY INTEREST Recorded Dec 24, 2020
From: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 055671/0612 →
SECURITY INTEREST Recorded Jun 5, 2020
From: MICROCHIP TECHNOLOGY INC.; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 053468/0705 →
RELEASE OF SECURITY INTEREST Recorded May 30, 2020
From: JPMORGAN CHASE BANK, N.A, AS ADMINISTRATIVE AGENT
To: MICROCHIP TECHNOLOGY INC.; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
Reel/Frame 053466/0011 →
SECURITY INTEREST Recorded Apr 24, 2020
From: MICROCHIP TECHNOLOGY INC.; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 053311/0305 →
SECURITY INTEREST Recorded Sep 18, 2018
From: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 047103/0206 →
SECURITY INTEREST Recorded Jun 25, 2018
From: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 046426/0001 →
SECURITY INTEREST Recorded Feb 10, 2017
From: ATMEL CORPORATION
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 041715/0747 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 29, 2016
From: PEDERSEN, FRODE MILCH; FULLERTON, IAN; MARTINEZ, JOSEPH; OLSSON, MARTIN
To: ATMEL CORPORATION
Reel/Frame 040801/0279 →
Continuity (2)
Provisional Application 62364815 · Jul 20, 2016
Related Publication 20180024781A1 · Jan 25, 2018