Method and system of secure random seed generation for a cryptographically secure pseudo-random number generator

US10402169B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10402169-B2
Application numberUS-201715648234-A
CountryUS
Kind codeB2
Filing dateJul 12, 2017
Priority dateJul 12, 2017
Publication dateSep 3, 2019
Grant dateSep 3, 2019

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method and system for generating a secure random seed uses chemical processes in a battery of an information handling system as an entropy source for randomness. The secure random seed may be used by a pseudo-random number generator to create a secure pseudorandom bit stream usable to generate secure encryption keys.

First claim

Opening claim text (preview).

What is claimed is: 1. An information handling system, comprising: a main processor; a battery; an embedded controller (EC) further comprising an EC processor; and memory media accessible to the EC processor and storing instructions executable by the EC processor for: determining a first cell voltage of the battery as a 16-bit value; determining a second cell voltage of the battery as a 16-bit value; concatenating the first cell voltage and the second cell voltage to obtain a cell voltage value as a 32-bit value; determining a remaining battery capacity of the battery as a 16-bit value; determining a battery voltage of the battery as a 16-bit value; determining a relative state of charge (SOC) of the battery as a 32-bit value; determining an absolute SOC of the battery as a 32-bit value; performing an exclusive or (XOR) of the cell voltage value with the remaining battery capacity to generate a first value as a 32-bit value; performing an XOR of the first value with the battery voltage to generate a second value as a 32-bit value; performing an XOR of the relative SOC left-shifted by one bit with the absolute SOC to generate a third value as a 32-bit value; shifting the third value to most significant bits of a 64-bit value to generate a fourth value; and performing an XOR of the fourth value with the second value to generate a 64-bit secure random seed, wherein an entropy source for the secure random seed includes the battery. 2. The information handling system of claim 1 , wherein determining the first cell voltage further comprises: obtaining a cell voltage in Volts from a measurement of the first cell; and using least significant 16-bits of the cell voltage as the first cell voltage. 3. The information handling system of claim 1 , wherein determining the second cell voltage further comprises: obtaining a cell voltage in Volts from a measurement of the second cell; and using least significant 16-bits of the cell voltage as the second cell voltage. 4. The information handling system of claim 1 , wherein determining the remaining battery capacity further comprises: obtaining a remaining battery capacity value in milliwatt hours from a measurement of the battery; and using least significant 16-bits of the remaining battery capacity value as the remaining battery capacity. 5. The information handling system of claim 1 , wherein determining the battery voltage further comprises: obtaining a battery voltage value in Volts from a measurement of the battery; and using least significant 16-bits of the battery voltage value as the battery voltage. 6. A method for secure communication, the method comprising: determining a first cell voltage of a battery of an information handling system as a 16-bit value; determining a second cell voltage of the battery as a 16-bit value; concatenating the first cell voltage and the second cell voltage to obtain a cell voltage value as a 32-bit value; determining a remaining battery capacity of the battery as a 16-bit value; determining a battery voltage of the battery as a 16-bit value; determining a relative state of charge (SOC) of the battery as a 32-bit value; determining an absolute SOC of the battery as a 32-bit value; performing an exclusive or (XOR) of the cell voltage value with the remaining battery capacity to generate a first value as a 32-bit value; performing an XOR of the first value with the battery voltage to generate a second value as a 32-bit value; performing an XOR of the relative SOC left-shifted by one bit with the absolute SOC to generate a third value as a 32-bit value; shifting the third value to most significant bits of a 64-bit value to generate a fourth value; performing an XOR of the fourth value with the second value to generate a 64-bit secure random seed, wherein an entropy source for the secure random seed includes the battery; inputting the secure random seed to a pseudo-random number generator to generate a 64-bit pseudorandom bit stream; generating an encryption key using the 64-bit pseudo-random bit stream as an input; and using the encryption key to encrypt a network communication sent by the information handling system. 7. The method of claim 6 , wherein determining the first cell voltage further comprises: obtaining a cell voltage in Volts from a measurement of the first cell; and using least significant 16-bits of the cell voltage as the first cell voltage. 8. The method of claim 6 , wherein determining the second cell voltage further comprises: obtaining a cell voltage in Volts from a measurement of the second cell; and using least significant 16-bits of the cell voltage as the second cell voltage. 9. The method of claim 6 , wherein determining the remaining battery capacity further comprises: obtaining a remaining battery capacity value in milliwatt hours from a measurement of the battery; and using least significant 16-bits of the remaining battery capacity value as the remaining battery capacity. 10. The method of claim 6 , wherein determining the battery voltage further comprises: obtaining a battery voltage value in Volts from a measurement of the battery; and using least significant 16-bits of the battery voltage value as the battery voltage. 11. Non-transitory computer readable memory media storing instructions executable by a processor for: determining a first cell voltage of a battery of an information handling system as a 16-bit value; determining a second cell voltage of the battery as a 16-bit value; concatenating the first cell voltage and the second cell voltage to obtain a cell voltage value as a 32-bit value; determining a remaining battery capacity of the battery as a 16-bit value; determining a battery voltage of the battery as a 16-bit value; determining a relative state of charge (SOC) of the battery as a 32-bit value; determining an absolute SOC of the battery as a 32-bit value; performing an exclusive or (XOR) of the cell voltage value with the remaining battery capacity to generate a first value as a 32-bit value; performing an XOR of the first value with the battery voltage to generate a second value as a 32-bit value; performing an XOR of the relative SOC left-shifted by one bit with the absolute SOC to generate a third value as a 32-bit value; shifting the third value to most significant bits of a 64-bit value to generate a fourth value; and performing an XOR of the fourth value with the second value to generate a 64-bit secure random seed, wherein an entropy source for the secure random seed includes the battery. 12. The memory media of claim 1 , wherein determining the first cell voltage further comprises: obtaining a cell voltage in Volts from a measurement of the first cell; and using least significant 16-bits of the cell voltage as the first cell voltage. 13. The memory media of claim 11 , wherein determining the second cell voltage further comprises: obtaining a cell voltage in Volts from a measurement of the second cell; and using least significant 16-bits of the cell voltage as the second cell voltage. 14. The memory media of claim 11 , wherein determining the remaining battery capacity further comprises: obtaining a remaining battery capacity value in milliwatt hours from a measurement of the battery; and using least significant 16-bits of the remaining battery capacity value as the remaining battery capacity. 15. The memory media of claim 11 , wherein determining the battery voltage further comprises: obtaining a battery voltage value in Volts from a measurement of the battery; and using least signi

Assignees

Inventors

Classifications

  • with particular pseudorandom sequence generator · CPC title

  • H03K3/84Primary

    Generating pulses having a predetermined statistical distribution of a parameter, e.g. random pulse generators · CPC title

  • Random number generators, i.e. based on natural stochastic processes · CPC title

  • G06F7/58Primary

    Random or pseudo-random number generators · CPC title

  • Pseudo-random number generators · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10402169B2 cover?
A method and system for generating a secure random seed uses chemical processes in a battery of an information handling system as an entropy source for randomness. The secure random seed may be used by a pseudo-random number generator to create a secure pseudorandom bit stream usable to generate secure encryption keys.
Who is the assignee on this patent?
Dell Products Lp
What technology area does this patent fall under?
Primary CPC classification H03K3/84. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Sep 03 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).