New "Jitter Entropy" RNG Proposed For Linux

Posted by Michael Larabel on February 09, 2013

The Linux kernel RNG implementation for providing random numbers has worked quite well for its years in use. However, a new jitter entropy generator implementation has been proposed that is capable of providing 100 kB/s throughput of randomness.

Among the Linux RNG shortcomings as it stands now is /dev/random suffering from blocking, there is no in-kernel equivalent to /dev/random, random and urandom need to be re-seeded during boot, in virtualized environments there isn't as much entropy due to lack of attached devices, generated keys for full-disk encryption may not have enough entropy in their pools, and parts of the code contain complex processing.

As a result of these RNG shortcomings, Stephan Mueller has proposed a new entropy generator that is based upon CPU timing jitter. By having this entropy generator based on CPU timing jitter, it doesn't maintain any state nor require a seed, is capable of 100 kB/s throughput in a non-blocking manner through a-synchronous generation, should be better for virtualized environments, the main part of the entropy collector is only about 10 lines of code, and statistical test suites pass the output of the collector.

Stephan has published this initial working jitter entropy generator code as a Linux kernel module and separately as a user-space application. Meanwhile, some kernel developers have expressed interest in a random number generator implementation based upon AES, but no code has been pushed forward yet.

Those wanting to examine this jitter entropy generator for Linux can find the code and additional details as part of this kernel mailing list post.

Discuss this article in our forums, IRC channel, or email the author. You can also follow our content via RSS and on social networks like Facebook, Identi.ca, and Twitter (@Phoronix and @MichaelLarabel). Subscribe to Phoronix Premium to view our content without advertisements, view entire articles on a single page, and experience other benefits.
Latest Hardware Reviews
  1. Sumo Lounge Emperor
  2. Gallium3D Continues Improving OpenGL For Older Radeon GPUs
  3. 15-Way Open vs. Closed Source NVIDIA/AMD Linux GPU Comparison
  4. Nouveau vs. NVIDIA Linux Comparison Shows Shortcomings
Latest Software Articles
  1. Intel Linux OpenGL Driver Leading Over Apple OS X
  2. The Cost Of Ubuntu Disk Encryption
  3. Btrfs vs. EXT4 vs. XFS vs. F2FS On Linux 3.10
  4. AMD Radeon R600 GPU LLVM 3.3 Back-End Testing
Latest Linux News
  1. Hot Relocation HDD To SSD Support For Btrfs
  2. Phoronix Test Suite 4.6.0 "Utsira" Released
  3. New Intel X.Org Driver Supports All Of Haswell
  4. SQLite Now Faster With Memory Mapped I/O
  5. Microsoft Releases Skype For Linux 4.2, Has Bug-Fixes
  6. Qt For Tizen Launches, Based On Qt 5.1
  7. KTAP Released For Linux Kernel Dynamic Tracing
  8. Linux 3.10-rc2 Kernel Takes In A Few Extra Pulls
  9. QEMU 1.5 Supports VGA Passthrough, Better USB 3.0
  10. Handbrake 0.9.9 Supports OpenCL Offloading
  11. Freedreno Gallium3D Now Banging The Adreno A3XX
Latest Forum Talk
  1. Jolla Announces Their First Phone
  2. Microsoft Releases Skype For Linux 4.2, Has...
  3. DragonFly 3.4 vs FreeBSD 9.1 on phoronix test...
  4. Intel Linux OpenGL Driver Leading Over Apple OS X
  5. The Cost Of Ubuntu Disk Encryption
  6. Kubuntu, KDE Has Little Hope For Ubuntu's Mir
  1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Motherboards
  5. Peripherals
  6. Processors
  7. Software
  8. Operating Systems
  9. All Articles
  1. Linux Benchmarking
  2. OpenBenchmarking.org
  3. Phoronix Test Suite