A SwiftRNG device

The SwiftRNG is a general purpose USB device that generates true (hardware) random numbers at a rate of 100 Mbits per second. In addition, SwiftRNG LE (Lite Edition) generates random numbers at 20 Mbits per second.

How It Works

The SwiftRNG utilizes random noise generated from two independent and reliable sources based on the electrical noise produced by an avalanche effect in zener diodes. The electrical noise generated by each random source is independently amplified, filtered and converted into digital values. The random bytes generated by both noise sources are then combined into the resulting low bias random byte stream. To further reduce the bias, the resulting bytes are hashed as part of a post processing step that produces the final true random bytes. The random bytes are transmitted to the host computer via USB in 16,000 byte packets.

Quality Checking

The SwiftRNG implements an embedded health check test (HCT) that continuously monitors the quality of the random noise sources immediately after the electrical noise is digitized and before any further processing. The HCT logic appends a health check status byte to each transmitted data packet so that the host computer is continuously notified about the health of the generator.

In addition to running the HCT, the monitoring logic will check the quality of the final random bytes produced by continuously running the tests ‘Repetition Count Test’ and ‘Adaptive Proportion Test.’

The SwiftRNG contains patented technology.

Technical Specifications Overview

See Technical Specifications for more details.

SwiftRNG (V 1.1) SwiftRNG LE (V 1.0)
Download speed for true random bytes: 100 Mbps using USB highspeed compatible interface 20 Mbps using USB highspeed compatible interface
Power consumption Draws no more than 200 mA (depending on the selected power profile). Draws no more than 110 mA (fixed power profile).
Weight 21 grams (0.74 oz)
Data connectivity and control interface USB 2 high-speed interface with EMI filtering (also compatible with full-speed interface)
Random source Two independent circuits based on reversed-biased Zener diodes
Post processing algorithms available SHA-256
Kernel module With the swrandom kernel module, random bytes generated by the SwiftRNG can be available for download from /dev/swrandom on x86-64 systems.
Embedded health check test (HCT) Continuous health diagnostics of all random noise sources
Implemented statistical tests Continuous ‘Repetition Count’ and ‘Adaptive Proportion’ statistical tests
Power supply USB bus powered with an overload protection
RoHS compliance All parts and materials used in SwiftRNG device are RoHS compliant

Footnotes:

* The actual download speed may vary based on the selected device power profile, host OS and computing hardware. Due to processing power limitations on Raspberry Pi 2, the actual download speed on this device will be around 40 Mbps.

Applications

The SwiftRNG is a versatile device that can be used for a wide range of purposes including, but not limited to:

  • Generation of encryption and secure session keys
  • Feeding the /dev/random entropy pool on platform
  • Distributing entropy data to guest instances in a cloud environment by using Virtio RNG
  • Research (statistical sampling)
  • Computer simulations
  • Gaming servers

Statistical Tests

The SwiftRNG device passes the following statistical test suites for measuring the quality of a random number generators: Diehard, Dieharder, NIST, Rngtest and Ent.

View the following files for statistical test reports:

System Requirements

  • Linux (x86, x64)
  • or Mac OS X 10.6 and up
  • or Windows 8.1 and 10 (x86, x64)
  • USB 2.0 or 3.0 high-speed host/hub

Warranty and Return Policy

TectroLabs offers a 1-year limited warranty on the SwiftRNG. We will repair or replace (at our sole discretion) any device that fails due to defect in materials or manufacturing. A SwiftRNG device may be returned within 30 days of purchase for a full refund (buyer will pay for return shipping).

Purchase

Drivers, documentation and utility software source code ready to be built available for download here.

Buy SwiftRNG Buy SwiftRNG LE