Patches For A New /dev/random Linux Random Number Generator Revised
Stephan Mueller has published his second version of the in-development patches of the Linux Random Number Generator (LRNG) that seeks to provide a new, drop-in replacement for Linux's /dev/random implementation.
Mueller describes of his work in V2 form, "The following patch set provides a different approach to /dev/random which I call Linux Random Number Generator (LRNG) to collect entropy within the Linux kernel. The main improvements compared to the legacy /dev/random is to provide sufficient entropy during boot time as well as in virtual environments and when using SSDs. A secondary design goal is to limit the impact of the entropy collection on massive parallel systems and also allow the use accelerated cryptographic primitives. Also, all steps of the entropic data processing are testable. Finally massive performance improvements are visible at /dev/urandom and get_random_bytes."
The current /dev/random design and the new LRNG proposal are outlined in this 48-page whitepaper (PDF) by Stephan if you are really interested in random number generators at a low-level. This LRNG implementation comes in at just under two thousand lines of new code for the Linux kernel while being API/ABI compatible with the current /dev/random implementation. Those interested in this new approach can find the code via this patch series.
Mueller describes of his work in V2 form, "The following patch set provides a different approach to /dev/random which I call Linux Random Number Generator (LRNG) to collect entropy within the Linux kernel. The main improvements compared to the legacy /dev/random is to provide sufficient entropy during boot time as well as in virtual environments and when using SSDs. A secondary design goal is to limit the impact of the entropy collection on massive parallel systems and also allow the use accelerated cryptographic primitives. Also, all steps of the entropic data processing are testable. Finally massive performance improvements are visible at /dev/urandom and get_random_bytes."
The current /dev/random design and the new LRNG proposal are outlined in this 48-page whitepaper (PDF) by Stephan if you are really interested in random number generators at a low-level. This LRNG implementation comes in at just under two thousand lines of new code for the Linux kernel while being API/ABI compatible with the current /dev/random implementation. Those interested in this new approach can find the code via this patch series.
3 Comments