AlphaRNG is a hardware true random number generator that communicates with the host computer over a secure USB channel. Each session is encrypted and authenticated, which protects the random data against eavesdropping, tampering, and replay attacks. In non-secure mode the device delivers up to 199 Mbps; with encryption or message authentication enabled, throughput depends on the selected cipher and MAC algorithm (see the tech specs below).
AlphaRNG also validates its own health checks with hardware fault insertion: the device can introduce temporary signal faults into its noise sources to confirm that the embedded health check test detects failures as designed.
The device is compact and lightweight (22 grams) and can be connected to an internal USB port inside a computer or to any external USB port. The software kit includes an API, command-line utilities, and sample code for integrating the device into your own applications.
The software kit comes with four built-in public keys: a 2048-bit RSA key, a 1024-bit RSA key, and for AlphaRNG V1.2 devices a 3072-bit RSA key and a 4096-bit RSA key, which can be used to establish a secure session with any AlphaRNG device.
Each AlphaRNG also ships with its own unique 2048-bit RSA public key for exclusive use with that specific device. AlphaRNG V1.2 devices additionally ship with a unique 3072-bit RSA public key and a unique 4096-bit RSA public key.
How it works
AlphaRNG generates a stream of random bytes from the unpredictability of electrical noise:
- Noise sources. Two Zener diodes operated in avalanche mode produce independent streams of electrical noise.
- Amplification and sampling. Each noise stream is amplified and sampled, producing two separate raw byte streams with uniformly distributed random values.
- Combination and de-biasing. The two raw byte streams are combined and processed to remove residual bias, producing the final entropy byte stream.
- API access. The software API provides access to the data at each processing stage, so you can evaluate the raw output or apply your own post-processing or conditioning algorithms.
For a description of how a secure session is established and how commands are exchanged, see the technical specifications.
Quality checking
- Embedded health check test (HCT). Monitors the quality of each random noise source immediately after digitization. The test runs at start-up and can be triggered at any time through the software API.
- Hardware fault insertion. The HCT is validated by intentionally introducing temporary signal faults into the noise sources, which verifies that the device detects and reports failures.
- On-device statistical tests. The Repetition Count and Adaptive Proportion tests (NIST SP 800-90B) run at start-up and on demand through the API.
- Continuous status reporting. The health check status is included in every data packet sent to the host computer.
- Host-side verification. The software kit runs the Repetition Count and Adaptive Proportion tests continuously on the host computer as a second check on the random bytes received over USB.
Tech specs
| Current device version | V1.2 |
| Maximum data download speed | Up to 199 Mbps in non-secure mode |
| Data download speed in MAC mode | 30 Mbps with HMAC-MD5, 19 Mbps with HMAC-SHA160, 10 Mbps with HMAC-SHA256 |
| Data download speed in AES mode | 5.2 Mbps with AES-128-GCM, 4.6 Mbps with AES-256-GCM |
| Available asymmetric ciphers | RSA-2048, RSA-1024, RSA-3072, RSA-4096 (AlphaRNG V1.2 and later) |
| Available symmetric ciphers | AES-256-GCM, AES-128-GCM |
| Available MAC algorithms | HMAC-SHA256, HMAC-SHA160, HMAC-MD5 |
| Health check test (HCT) | Start-up and on-demand health diagnostics of both random noise sources |
| HCT validation | Hardware fault insertion |
| On-device statistical tests | Start-up and on-demand Repetition Count and Adaptive Proportion tests |
| Continuous statistical tests | Repetition Count and Adaptive Proportion tests implemented in the software kit |
| Alternative entropy extractors | SHA-256 and SHA-512 entropy extractors implemented in the software kit |
| Data connectivity and control interface | USB 2.0 high-speed interface with integrated EMI filtering and ESD protection |
| Random noise source | Two independent circuits based on the avalanche breakdown effect in reverse-biased Zener diodes |
| Device security | Secure boot from an encrypted firmware image; device access and debugging disabled |
| Software kit dependencies | OpenSSL 1.1+ |
| Power supply | USB bus powered |
| Power consumption | 220 mA in active mode, 90 mA when inactive |
| Weight | 22 grams (0.8 oz) |
| Compliance | Certified for FCC (Class B), ISED (Class B), and CE compliance; RoHS compliant. See the compliance page for details |
| Country of origin | Designed and assembled in the USA |
Use cases
AlphaRNG is suited to:
- Live entropy source for seeding a deterministic random bit generator (DRBG)
- Retrieving randomness over a secure data connection
- Generation of cryptographic keys and nonces
- Research (statistical sampling)
- Computer simulations
- Gaming servers
Statistical tests
AlphaRNG passes the following statistical test suites: Dieharder, NIST, Rngtest, Ent, PractRand, BigCrush, and EA IID.
You can download sample test reports using the links below:
- BigCrush using the
TestU01software library diehardertest report- NIST test report
rngtesttest report for 12 GB of generated random bytesea_iidtest report for 1000000 raw bytes from noise source 1ea_iidtest report for 1000000 raw bytes from noise source 2ea_restarttest report for noise source 1ea_restarttest report for noise source 2PractRandtest results for 16 TB of random binary data stream
Visual test
A visual test is a quick way to assess the quality of a random number generator, because the human eye is good at spotting patterns. The random steering wheel test is one such visualization.
- Random steering wheel test: an MP4 video recording of sample output produced by an AlphaRNG device.
Device output samples
- 1000000 random bytes retrieved from the device (file MD5: 8a2390697f71ed3d48e4689b5bf70436)
- 1000000 raw random bytes retrieved from the first noise source (file MD5: ed28b56d087e33220ed36d9e39ac961d)
- 1000000 raw random bytes retrieved from the second noise source (file MD5: 183bcf2b744582d8bda3aee4293b06ad)
System requirements
One of the following operating systems:
- Linux (x86, x64, ARM)
- FreeBSD 12/13/14
- macOS (Intel and Apple Silicon)
- Windows 10/11 (64-bit) and Windows Server 2016/2019 (64-bit)
A USB 2.0 or 3.0 high-speed host port or hub is required.
Virtual machine compatibility
AlphaRNG has been tested with the following virtual machine software:
- VMware ESXi 6.7.0
- VMware Workstation 15 Player
- Oracle VirtualBox 6.1/7.0
- Parallels Desktop for Mac (Intel and ARM)
Warranty and returns
TectroLabs offers a one-year limited warranty within the United States covering defects in materials and workmanship; we will repair or replace, at our discretion, any device that fails because of such a defect. For international orders, warranty coverage is provided in accordance with applicable local laws and regulations.
An AlphaRNG may be returned within 30 days of purchase for a full refund minus the credit card processing fee. The buyer pays for return shipping.