Docs Downloads

A SwiftRNG

SwiftRNG (100 Mbps) is a general purpose USB device that generates true (hardware) random numbers at a rate of 100 Mbits per second. It can be used in conjunction with SwiftRNG Pro and SwiftRNG LE.

$249

Devices will be shipped in 1–2 business days. For bulk orders of 10 or more devices, please contact us. Please note that for orders outside of the United States, the buyer is responsible for costs such as duties, taxes, and customs clearance when the shipment is picked up in the destination country.

How it works

SwiftRNG utilizes random noise generated from two independent and reliable sources based on the electrical noise produced by an avalanche breakdown 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 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

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.’

SwiftRNG contains patented technology.

Tech specs

Full tech specs Data sheet

True random byte download speed 100 Mbps using USB highspeed compatible interface
Power consumption Draws no more than 230 mA (depending on the selected 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 avalanche breakdown effect in reversed-biased Zener diodes
Post processing algorithms available SHA-256, SHA-512, Marsaglia’s XorShift64
Kernel module With the swrandom kernel module for Linux, 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 are lead-free and RoHS compliant

Use cases

SwiftRNG is a versatile device that can be used for a wide range of purposes:

  • Generation of encryption and secure session keys
  • Feeding the /dev/random entropy pool
  • Research (statistical sampling)
  • Computer simulations
  • Gaming servers

Statistical tests

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

You can download sample test reports using links below (reports were generated using SwiftRNG device v1.2 with post processing turned off):

Test reports generated on Thu Sep 7 22:36:18 CDT 2017

System requirements

  • Linux (x86, x64)
  • or macOS 10.6 and up
  • or Windows 7, 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 SwiftRNG. We will repair or replace (at our sole discretion) any device that fails due to defect in materials or manufacturing. SwiftRNG device may be returned within 30 days of purchase for a full refund (buyer will pay for return shipping).