Fuse-based seed as an input for a pseudo-random number generator

US12229528B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-12229528-B2
Application numberUS-202318303361-A
CountryUS
Kind codeB2
Filing dateApr 19, 2023
Priority dateApr 19, 2023
Publication dateFeb 18, 2025
Grant dateFeb 18, 2025

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.

Systems and techniques are provided for booting an electronic device. For example, a process can include initiating a boot procedure for the electronic device. The process can also include determining a hardware pseudo-random number generator (PRNG) is inoperable, obtaining a seed value from a read-only memory, based on the determination that the hardware PRNG is inoperable, initiating a software PRNG based on the seed value, obtaining a pseudo-random number from the software PRNG, and continuing the boot procedure using the obtained pseudo-random number.

First claim

Opening claim text (preview).

What is claimed is: 1. An electronic device, comprising: a read-only memory; a hardware pseudo-random number generator (PRNG); and at least one processor coupled to the read-only memory, the at least one processor configured to: initiate a boot procedure for the electronic device; determine the hardware PRNG is inoperable; obtain a seed value from the read-only memory; based on the determination that the hardware PRNG is inoperable, initiate a software PRNG based on the seed value; obtain a pseudo-random number from the software PRNG; and continue the boot procedure using the obtained pseudo-random number. 2. The electronic device of claim 1 , wherein the seed value is set during a manufacturing process. 3. The electronic device of claim 1 , wherein the read-only memory comprises a set of fuses. 4. The electronic device of claim 1 , wherein, to determine the hardware PRNG is inoperable, the at least one processor is configured to determine that the hardware PRNG has not responded within a time threshold. 5. The electronic device of claim 1 , wherein, to determine the hardware PRNG is inoperable, the at least one processor is configured to determine that a number returned by the hardware PRNG corresponds to an expected number from the hardware PRNG using a default seed value. 6. The electronic device of claim 1 , wherein the pseudo-random number is used as a part of a security feature of the boot procedure. 7. The electronic device of claim 2 , wherein the seed value is set as a random number or pseudo random number. 8. The electronic device of claim 3 , wherein the set of fuses corresponding to the seed value are designated for storing the seed value. 9. The electronic device of claim 3 , wherein blown fuses of the set of fuses correspond to a first binary number and wherein unblown fuses of the set of fuses correspond to a second binary number. 10. A method for booting an electronic device, comprising: initiating a boot procedure for the electronic device; determining a hardware pseudo-random number generator (PRNG) is inoperable; obtaining a seed value from a read-only memory; based on the determination that the hardware PRNG is inoperable, initiating a software PRNG based on the seed value; obtaining a pseudo-random number from the software PRNG; and continuing the boot procedure using the obtained pseudo-random number. 11. The method of claim 10 , wherein the seed value is set during a manufacturing process. 12. The method of claim 10 , wherein the read-only memory comprises a set of fuses. 13. The method of claim 10 , wherein determining the hardware PRNG is inoperable comprises determining that the hardware PRNG has not responded within a time threshold. 14. The method of claim 10 , wherein determining the hardware PRNG is inoperable comprises determining that a number returned by the hardware PRNG corresponds to an expected number from the hardware PRNG using a default seed value. 15. The method of claim 10 , wherein the pseudo-random number is used as a part of a security feature of the boot procedure. 16. The method of claim 11 , wherein the seed value is set as a random number or pseudo random number. 17. The method of claim 12 , wherein the set of fuses corresponding to the seed value are designated for storing the seed value. 18. The method of claim 12 , wherein blown fuses of the set of fuses correspond to a first binary number and wherein unblown fuses of the set of fuses correspond to a second binary number. 19. A non-transitory computer-readable medium having stored thereon instructions that, when executed by a processor, causes the processor to: initiate a boot procedure for an electronic device; determine a hardware pseudo-random number generator (PRNG) is inoperable; obtain a seed value from a read-only memory; based on the determination that the hardware PRNG is inoperable, initiate a software PRNG based on the seed value; obtain a pseudo-random number from the software PRNG; and continue the boot procedure using the obtained pseudo-random number. 20. The non-transitory computer-readable medium of claim 19 , wherein the seed value is set during a manufacturing process. 21. The non-transitory computer-readable medium of claim 19 , wherein the read-only memory comprises a set of fuses. 22. The non-transitory computer-readable medium of claim 19 , wherein, to determine the hardware PRNG is inoperable, the instructions cause the processor to determine that the hardware PRNG has not responded within a time threshold. 23. The non-transitory computer-readable medium of claim 19 , wherein, to determine the hardware PRNG is inoperable, the instructions cause the processor to determine that a number returned by the hardware PRNG corresponds to an expected number from the hardware PRNG using a default seed value. 24. The non-transitory computer-readable medium of claim 19 , wherein the pseudo-random number is used as a part of a security feature of the boot procedure. 25. The non-transitory computer-readable medium of claim 20 , wherein the seed value is set as a random number or pseudo random number. 26. The non-transitory computer-readable medium of claim 21 , wherein the set of fuses corresponding to the seed value are designated for storing the seed value. 27. The non-transitory computer-readable medium of claim 21 , wherein blown fuses of the set of fuses correspond to a first binary number and wherein unblown fuses of the set of fuses correspond to a second binary number. 28. An apparatus for booting an electronic device, comprising: means for initiating a boot procedure for the electronic device; means for determining a hardware pseudo-random number generator (PRNG) is inoperable; means for obtaining a seed value from a read-only memory; based on the determination that the hardware PRNG is inoperable, means for initiating a software PRNG based on the seed value; means for obtaining a pseudo-random number from the software PRNG; and means for continuing the boot procedure using the obtained pseudo-random number. 29. The apparatus of claim 28 , wherein the seed value is set during a manufacturing process. 30. The apparatus of claim 28 , wherein the seed value is set as a random number or pseudo random number.

Assignees

Inventors

Classifications

  • G06F9/4401Primary

    Bootstrapping (security arrangements therefor G06F21/57) · CPC title

  • G06F7/582Primary

    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 US12229528B2 cover?
Systems and techniques are provided for booting an electronic device. For example, a process can include initiating a boot procedure for the electronic device. The process can also include determining a hardware pseudo-random number generator (PRNG) is inoperable, obtaining a seed value from a read-only memory, based on the determination that the hardware PRNG is inoperable, initiating a softwa…
Who is the assignee on this patent?
Qualcomm Inc
What technology area does this patent fall under?
Primary CPC classification G06F9/4401. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Feb 18 2025 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 5 related publications on this page (citations in our corpus or others sharing the same primary CPC).