IP Library Granted Patent US 8,250,127
Granted Patent B2
US 8,250,127 · App. 11/970,153 · Granted Aug 21, 2012

Harvesting entropy from trusted cryptographic sources

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 8,250,127
App. No.
11/970,153
Granted
Aug 21, 2012
Kind
B2
Abstract

Extending entropy in a random number generation utility. Where a device has access to trusted sources of encrypted data, such as encrypted network traffic, such encrypted network traffic may be sampled and the bits fed into the entropy seeding routines of the random number generation utility.

Claims (44)

1. A method of adding entropy to an entropy pool of a random number generator in a network connected device, the method comprising:

identifying a first packet of network data as encrypted;

selecting the first packet for use;

extracting a variable amount of data from the first packet, the extracting includes generating a first random number indicating an offset into the first packet, generating a second random number indicating a length, and extracting data from the first packet starting at the offset generated and for the length generated;

stirring the extracted data into the entropy pool of the random number generator;

selecting a second packet for use from the encrypted network data;

extracting a variable amount of data from the second packet different than the variable amount of data extracted from the first packet, the extracting includes generating a third random number indicating an offset into the second packet, generating a fourth random number indicating a length, and extracting data from the second packet starting at the offset generated and for the length generated; and

stirring the extracted data from the second packet into the entropy pool of the random number generator.

2. The method of claim 1 wherein the network is a wired network.

3. The method of claim 2 wherein the wired network operates according to IEEE 802.3 standards.

4. The method of claim 1 wherein the network is a wireless network.

5. The method of claim 4 wherein the wireless network operates according to IEEE 802.11 standards.

6. The method of claim 1 wherein selecting of the first packet for use further comprises selecting a packet on a periodic basis.

7. The method of claim 1 wherein the selecting of the first packet for use further comprises sampling the first packet based on a random number.

8. The method of claim 1 wherein the stifling of the extracted data comprises loading the extracted bits into an entropy seeding module of a random number utility executed by a processor implemented within the network connected device.

9. The method of claim 1 wherein the offset and length are used modulo the packet size.

10. The method of claim 1 wherein the first identified packet of network data has been re-encrypted.

11. The method of claim 1 wherein the first identified packet of network data is from a peer node.

12. The method of claim 1 wherein the first identified packet of network data is from a controller.

13. A non-transitory machine readable medium having a set of instructions stored therein, which when executed on a network connected device cause a set of operations to be performed comprising:

identifying a first packet of network data as encrypted;

selecting the first packet for use;

extracting a variable amount of data from the first packet, the extracting includes generating a first random number indicating an offset into the first packet, generating a second random number indicating a length, and extracting data from the first packet starting at the offset generated and for the length generated;

stirring the extracted data into an entropy pool of the random number generator;

identifying a second packet of the encrypted network data;

extracting a variable amount of data from the second packet, the amount of data extracted from the second packet being different from the amount of data extracted from the first packet, the extracting includes generating a third random number indicating an offset into the second packet, generating a fourth random number indicating a length, and extracting data from the second packet starting at the offset generated and for the length generated; and

stirring the extracted data from the second packet into the entropy pool of the random number generator.

14. The non-transitory machine readable medium of claim 13 wherein the network is a wired network operating according to IEEE 802.3 standards.

15. The non-transitory machine readable medium of claim 13 wherein the network is a wireless network operating according to IEEE 802.11 standards.

16. The non-transitory machine readable medium of claim 13 wherein the selecting the first packet for use further comprises selecting a packet on a periodic basis.

17. The non-transitory machine readable medium of claim 13 wherein the selecting of the first packet for use further comprises selecting a packet depending on a random number.

18. The non-transitory machine readable medium of claim 13 wherein the extracting of the data from the first packet further comprises selecting a fixed amount of data from a fixed position in the first packet.

19. The non-transitory machine readable medium of claim 13 wherein the offset and length are used modulo the packet size.

20. The non-transitory machine readable medium of claim 13 wherein the identified first packet of network data has been re-encrypted.

21. The non-transitory machine readable medium of claim 13 wherein the identified first packet of network data is from a peer node.

22. The non-transitory machine readable medium of claim 13 wherein the identified first packet of network data is from a controller.

23. A method of adding entropy to an entropy pool of a random number generator in a network connected device, the method comprising:

identifying a first packet of network data;

selecting the first packet for use;

extracting a variable amount of data from the first packet, the extracting includes generating a first random number indicating an offset into the first packet, generating a second random number indicating a length, and extracting data from the first packet starting at the offset generated and for the length generated;

stirring the extracted data into the entropy pool of the random number generator;

selecting a second packet for use from the network data;

extracting a variable amount of data from the second packet different than the variable amount of data extracted from the first packet, the extracting includes generating a third random number indicating an offset into the second packet, generating a fourth random number indicating a length, and extracting data from the second packet starting at the offset generated and for the length generated; and

stirring the extracted data from the second packet into the entropy pool of the random number generator.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 11, 2018
From: ARUBA NETWORKS, INC.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 045921/0055 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 10, 2015
From: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
To: ARUBA NETWORKS, INC.
Reel/Frame 036379/0274 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 3, 2015
From: ARUBA NETWORKS, INC.
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 035814/0518 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 7, 2008
From: KELLY, SCOTT
To: ARUBA NETWORKS, INC.
Reel/Frame 020326/0699 →