IP Library Granted Patent US 7,925,013
Granted Patent B1
US 7,925,013 · App. 10/611,402 · Granted Apr 12, 2011

System for data encryption and decryption of digital data entering and leaving memory

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 7,925,013
App. No.
10/611,402
Granted
Apr 12, 2011
Kind
B1
Abstract

A system is described for encryption and decryption of digital data prior to the digital data entering the memory of a digital device by generating a key, sub-key and combining the sub-key with mixed digital data, where the encryption and decryption occurs between the memory controller and the input output register.

Claims (55)

1. A system of digital data encryption in a digital device, comprising:

generating an inaccurate clock signal that oscillates at different frequencies;

an integrated encryption key generator generating a plurality of encryption keys based upon the input received from an inaccurate timing source; and based on the generated clock signal and a pseudorandom bit pattern generated in a linear feedback shift register each time the digital device is reset; a data buffer; an input/output register that interfaces with memory of the digital device; a control pad coupled to the input/output register; and a memory controller that directs digital data from the memory to the data buffer with the digital data passing through the encryption key generator prior to entering the input/output register, wherein the integrated encryption key generator is coupled between the data buffer and the input/output register, and the integrated encryption key generator, the data buffer, the input/output register, the control pad and the memory controller are formed on a single substrate and are accessed through the control pad.

2. The system of claim 1 , where the encryption key generator includes:

an inaccurate clock;

a key store; and

a linear feedback shift register that generates a pseudorandom bit pattern while the linear feedback shift register is enabled and stores a plurality of bits as at least one key in the key store.

3. The system of claim 2 , where the encryption key generator further includes a random number generator that receives the pseudorandom bit pattern from the linear feedback shift register and provides a random number for use by the digital device.

4. The system of claim 2 , where the encryption key generator further includes:

a pseudorandom bit pattern generator that creates a bit stream; and

a key store that stores portions of the pseudorandom bit pattern as at least one of the plurality of keys.

5. The system of claim 4 , including a pseudorandom number generator that selects a portion of the pseudorandom bit pattern to be a random number.

6. The system of claim 2 , including:

a sub-key generator that creates a sub-key based on data from the memory controller and a selected key from the key store; and

a combiner that combines the sub-key with the digital data.

7. The system of claim 6 , further including a data mixer that mixes bits of a byte of the digital data prior to the byte being combined with the sub-key.

8. A system configured to decrypt encrypted digital data stored in memory of a digital device, comprising:

generating an inaccurate clock signal that oscillates at different frequencies;

an encryption key generator receiving a signal from an inaccurate clock and generating a plurality of keys based on the generated clock signal and a pseudorandom bit pattern generated in a linear feedback shift register each time the digital device is reset; and for encrypting the encrypted digital data when the digital device is reset;

a memory controller that generates a memory request to retrieve the encrypted digital data; and

an encryption circuit that decrypts the encrypted digital data in response to the memory request of the memory controller using one or more of the plurality of keys.

9. The system of claim 8 , including a combiner that combines one of the plurality of keys with bank and row information contained in the memory request resulting in a sub-key.

10. The system of claim 9 , including a data mixer that unmixes bits within a byte after the sub-key is applied to the encrypted digital data.

11. A method of digital data encryption in a digital device, comprising: generating an inaccurate clock signal that oscillates at different frequencies;

generating a plurality of keys based on input received from an inaccurate clock, and based on the generated clock signal and a pseudorandom bit pattern generated in a linear feedback shift register each time the digital device is cycled; storing the plurality of keys;

placing the digital data in a data buffer; and encrypting the digital data using the at least one of the plurality of keys while the digital data is being placed in a rewritable memory.

12. The method of claim 11 , where the generating the plurality of keys includes:

generating an inaccurate clock signal;

creating a pseudorandom bit pattern; and

storing at least one portion of the pseudorandom bit pattern in a key store as the plurality of keys.

13. The method of claim 12 , where the pseudorandom bit pattern is generated by a linear feedback shift register.

14. The method of claim 12 , further including generating a random number from the pseudorandom bit pattern.

15. The method of claim 14 , further including selecting a portion of the pseudorandom bit pattern to be used as a random number.

16. The method of claim 11 , further including:

mixing bits of a byte of the digital data with a data mixer; and

combining the byte with one of the plurality of keys.

17. The method of claim 11 , further including:

generating a sub-key with data from the memory controller and the key; and

combining the sub-key with the digital data.

18. The method of claim 17 , further including:

mixing bits of a byte of digital data with a data mixer; and

combining the byte with the sub-key.

19. The method of claim 12 , further including generating a random number from the pseudorandom bit pattern.

20. A method to decrypt encrypted digital data stored in memory of a digital device, comprising: generating an inaccurate clock signal that oscillates at different frequencies; generating a plurality of keys based on input received from an inaccurate clock, and based on generated clock signal and a pseudorandom bit pattern generated in a linear feedback shift register each time the digital device is cycled; generating a memory request to retrieve the encrypted digital data; and decrypting the encrypted digital data using one of the plurality of keys.

21. The method of claim 20 , further including combining one of the plurality of keys with bank and row information contained in the memory request to generate a sub-key.

22. The method of claim 21 , further including unmixing a byte of encrypted digital data with a data mixer.

23. A set-top box apparatus in receipt of digital data for storage in a rewritable memory, comprising: generating an inaccurate clock signal that oscillates at different frequencies; an apparatus generating a plurality of keys based on the generated clock signal and a pseudorandom bit pattern generated in a linear feedback shift register each time the apparatus is reset; a data buffer filled with the digital data;

and a memory controller that directs the storage of the digital data in the rewritable memory with the digital data being encrypted by the encryption circuit and the at least one key after the digital data has entered the data buffer but prior to being stored in the rewritable memory.

24. The set-top box apparatus of claim 23 , where the encryption circuit further includes:

a pseudorandom bit stream generator that creates a pseudorandom bit stream; and

a key store that stores the at least one key that is selected from the pseudorandom bit stream.

25. The set-top box apparatus of claim 23 , where the encryption circuit further includes:

a data mixer that mixes bits of a byte of the digital data; and

a combiner that combines the byte with the at least one key.

26. The system of claim 1 wherein the memory controller that directs digital data from the memory to the data buffer with the digital data passing through the encryption key generator prior to entering the input/output register comprises means for encrypting the digital data prior to entering the input/output register.

Assignments (12)
SECURITY INTEREST Recorded Sep 27, 2017
From: SYNAPTICS INCORPORATED
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 044037/0896 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 7, 2017
From: CONEXANT SYSTEMS, LLC
To: SYNAPTICS INCORPORATED
Reel/Frame 043786/0267 →
CHANGE OF NAME Recorded Jun 26, 2017
From: CONEXANT SYSTEMS, INC.
To: CONEXANT SYSTEMS, LLC
Reel/Frame 042986/0613 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 23, 2016
From: LAKESTAR SEMI INC.
To: CONEXANT SYSTEMS, INC.
Reel/Frame 038803/0693 →
CHANGE OF NAME Recorded May 20, 2016
From: CONEXANT SYSTEMS, INC.
To: LAKESTAR SEMI INC.
Reel/Frame 038777/0885 →
RELEASE OF SECURITY INTEREST Recorded May 6, 2016
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
To: CONEXANT SYSTEMS, INC.; CONEXANT, INC.; CONEXANT SYSTEMS WORLDWIDE, INC.; BROOKTREE BROADBAND HOLDING, INC.
Reel/Frame 038631/0452 →
SECURITY AGREEMENT Recorded Jun 7, 2010
From: CONEXANT SYSTEMS, INC.; CONEXANT, INC.; CONEXANT SYSTEMS WORLDWIDE, INC.; BROOKTREE BROADBAND HOLDING, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 024492/0339 →
RELEASE OF SECURITY INTEREST Recorded Mar 1, 2010
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A. (FORMERLY, THE BANK OF NEW YORK TRUST COMPANY, N.A.)
To: BROOKTREE BROADBAND HOLDING, INC.
Reel/Frame 023998/0971 →
RELEASE OF SECURITY INTEREST Recorded Mar 1, 2010
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A. (FORMERLY, THE BANK OF NEW YORK TRUST COMPANY, N.A.)
To: CONEXANT SYSTEMS, INC.
Reel/Frame 023998/0838 →
SECURITY AGREEMENT Recorded Nov 22, 2006
From: CONEXANT SYSTEMS, INC.
To: BANK OF NEW YORK TRUST COMPANY, N.A.
Reel/Frame 018711/0818 →
SECURITY AGREEMENT Recorded Nov 21, 2006
From: BROOKTREE BROADBAND HOLDING, INC.
To: BANK OF NEW YORK TRUST COMPANY, N.A., THE
Reel/Frame 018573/0337 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 27, 2006
From: WASHINGTON, WINEFRED
To: CONEXANT SYSTEMS, INC.
Reel/Frame 018311/0077 →