Method and apparatus for securing data stored in semiconductor memory cells
First Claim
1. A method for securing data in a semiconductor memory cell of a semiconductor memory device, comprising the steps of:
- programming data in the memory cell by applying a voltage which causes charges to be trapped in the memory cell;
making a measurement of the level of trapped charges in the memory cell after the memory cell is programmed;
generating a numerical representation of the level of trapped charges as a reference fingerprint of the memory cell; and
storing the numerical representation.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and apparatus for securing data stored in semiconductor memory cells of a semiconductor device is described. A reference fingerprint corresponding to numerical representations of a measurement of the levels of charges trapped in the memory cells is generated and stored. The measurement is performed immediately after programming data to the memory cells. The reference fingerprint is then compared to a measurement of numerical representations of the levels of charges trapped in the memory cells of a memory device that has been presented to a reader. If a match occurs, then the data stored in the memory device is authenticated. An intentional offset error voltage may be applied when writing data to the memory cells to enhance the security of the data. The reference fingerprint may also be encrypted prior to storage for added security. Lastly, fuzzy logic techniques may be used to compensate for environmental and hardware related fluctuations in the levels of trapped charges of the programmed memory cells.
-
Citations
34 Claims
-
1. A method for securing data in a semiconductor memory cell of a semiconductor memory device, comprising the steps of:
-
programming data in the memory cell by applying a voltage which causes charges to be trapped in the memory cell; making a measurement of the level of trapped charges in the memory cell after the memory cell is programmed; generating a numerical representation of the level of trapped charges as a reference fingerprint of the memory cell; and storing the numerical representation. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method for authenticating data stored in a plurality of semiconductor memory cells in a semiconductor memory device, comprising the steps of:
-
programming data to the plurality of memory cells by applying a plurality of voltages such that charges are trapped in each of the memory cells; measuring the levels of the trapped charges in the plurality of memory cells after the memory cells are programmed; generating numerical representations of the measured levels of trapped charges as a reference fingerprint; storing the reference fingerprint; and
,comparing the reference fingerprint to numerical representations of a subsequent measurement of the levels of trapped charges in the memory cells defining an authentication fingerprint, in order to determine whether the data stored in the memory cells is authentic. - View Dependent Claims (7, 8, 9, 10, 11, 12)
-
-
13. A secure semiconductor memory cell apparatus comprising:
-
first and second semiconductor cells; a data out line selectively connected to the first and second semiconductor memory cells upon which voltages are applied for programming data to the first and second semiconductor memory cells, causing charges to be trapped in the first and second memory cells; and an analog out line selectively connected to the first and second semiconductor memory cells for selective connection to a measurement apparatus for making an analog measurement of the levels of trapped charges in the first and second memory cells, wherein said second memory cells are utilized for storing a reference fingerprint generated from numerical representations of the levels of trapped charges measured in the first memory cells, such that a comparison of the stored reference fingerprint to numerical representations of a subsequent measurement of the levels of trapped charges in the first memory cells provides for authenticating the data stored in the first memory cells. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26)
-
-
27. A method for authenticating data stored in a plurality of first semiconductor memory cells in a first semiconductor memory device to prevent counterfeiting comprising the steps of:
-
programming the data to the plurality of first memory cells by applying a plurality of voltages, respectively, which cause charges to be trapped in the plurality of the first memory cells; measuring the levels of the trapped charges in the plurality of first memory cells after programming the first memory cells; generating numerical representations of the measured levels of trapped charges as a reference fingerprint; measuring the levels of the trapped charges in a plurality of second memory cells in a second semiconductor memory device which is presented to a semiconductor memory device reader; generating numerical representations of the measured levels of trapped charges in the second memory cells as an authentication fingerprint; retrieving the stored reference fingerprint; and comparing the reference fingerprint to the authentication fingerprint to determine whether the data stored in the second memory cells are authentic. - View Dependent Claims (28, 29, 30, 31, 32)
-
-
33. A method for securing data in a semiconductor memory cell of a semiconductor memory device, comprising the steps of:
-
programming data in the memory cell by applying a voltage which causes charges to be trapped in the memory cell, said step of programming data in the memory cell further comprising introducing an intentional random offset to the applied voltage; measuring the level of trapped charges in the memory cell after the memory cell is programmed; generating a numerical representation of the level of trapped charges measured; and storing the numerical representation.
-
-
34. A method for securing data in a semiconductor memory cell of a semiconductor memory device, comprising the steps of:
-
programming data in the memory cell by applying a voltage which causes charges to be trapped in the memory cell; measuring the level of trapped charges in the memory cell after the memory cell is programmed; generating a numerical representation of the level of trapped charges measured; storing the numerical representation; comparing the stored numerical representation to a numerical representation of a subsequent measurement of the level of trapped charges in the memory cell; and authenticating the data stored in the memory cell if the stored numerical representation matches the second numerical representation.
-
Specification