ERHARD-RNG: A Random Number Generator Built from Repurposed Hardware in Embedded Systems
Jacob Grycel, Robert J. Walls

TL;DR
ERHARD-RNG is a novel pseudo-random number generator for embedded systems that leverages existing hardware features like SRAM startup state, oscillator jitter, and temperature to generate high-quality randomness without additional hardware.
Contribution
It introduces a practical RNG design using common embedded hardware sources, addressing challenges in entropy collection for resource-constrained devices.
Findings
Entropy from SRAM startup state is effective for seeding.
Oscillator jitter provides continuous entropy collection.
The system achieves reliable randomness without extra hardware.
Abstract
Quality randomness is fundamental to cryptographic operations but on embedded systems good sources are (seemingly) hard to find. Rather than use expensive custom hardware, our ERHARD-RNG Pseudo-Random Number Generator (PRNG) utilizes entropy sources that are already common in a range of low-cost embedded platforms. We empirically evaluate the entropy provided by three sources---SRAM startup state, oscillator jitter, and device temperature---and integrate those sources into a full Pseudo-Random Number Generator implementation based on Fortuna. Our system addresses a number of fundamental challenges affecting random number generation on embedded systems. For instance, we propose SRAM startup state as a means to efficiently generate the initial seed---even for systems that do not have writeable storage. Further, the system's use of oscillator jitter allows for the continuous collection of…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsChaos-based Image/Signal Encryption · Physical Unclonable Functions (PUFs) and Hardware Security · Cryptographic Implementations and Security
