What It Is
The TL100 is a general purpose device that generates true (hardware) random numbers at a rate of 1.4 Mbits per second. Random bytes are downloaded from the TL100 through a USB interface using a simple API. The software download utility with a complete source code and all necessary USB driver-related files are supplied with the device on a DVD.
How It Works
The TL100 utilizes random noise generated from four independent and reliable sources based on reverse-biased Zener diodes. The electrical noise generated by each random source is independently amplified, filtered and converted using ADC into digital values as bytes. Every three random bytes generated by different sources are used to produce one low bias random byte by applying XOR logical operation. To further reduce the bias, the resulting bytes are hashed as part of a post processing step that produces true random bytes.
The TL100 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. 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 monitoring logic puts the device in ‘stop’ mode and flashes the LED light if it detects an unexpected deviation from normal operation or complete miss functioning of any of the four sources.
When the TL100 is first connected through a USB interface, the monitoring logic will run ‘HCT,’ ‘Repetition Count Test’ and ‘Adaptive Proportion Test’ on random bytes as part of the start-up test suite for about 10 seconds before the device will be ready to accept any requests. The monitoring logic will put the device in ‘stop’ mode and will flash the LED if any test failures are detected.
The TL100 contains patent-pending technology.
The TL100 device passes the following statistical tests for measuring the quality of a random number generators: ‘diehard’, NIST and ‘dieharder’.
View the following files for statistical test reports:
- Diehard test report
- Dieharder test report for 280GB random binary file
- NIST sts ver 2.1.1 test report
Technical Specification Summary
See Technical Specifications for full details.
|Download speed for true random bytes:||1.4 Mbps|
|Data connectivity and control interface:||USB 2 Full-speed interface with ESD protection and Bi-directional EMI filtering|
|Random source:||Four independent circuits based on Zener diodes|
|Embedded Post processing algorithms available:||SHA-160, SHA-256 (embedded/host), SHA-512 and HmacSHA160|
|Additional security feature:||Embedded FTDIChip-ID security dongle feature|
|/dev/random||Through the provided software, the TL100 can feed the /dev/random entropy pool on Linux and Mac platforms|
|Data acquisition, processing and control unit:||AT32UC3C264C AVR32 MCU running at 66 MHz|
|Embedded health check test (HCT):||Continuous health diagnostics of all random sources|
|Embedded statistical tests:||Continuous ‘Repetition Count’ and ‘Adaptive Proportion’ statistical tests|
|Power supply:||USB Bus Powered with overload protection|
|RoHS compliance:||All parts and materials used in TL100 device are RoHS compliant|
- Windows XP SP3 / Vista / 7 / 8 (32 bit or 64 bit)
- or Mac OS X 10.6 Snow Leopard, 10.7 Lion, 10.8 Mountain Lion or 10.9 Mavericks (click here for notes on using Mavericks)
- or Linux (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 TL100. We will repair or replace (at our sole discretion) any device that fails due to defect in materials or manufacturing. A TL100 device may be returned within 30 days of purchase for a full refund (buyer will pay for return shipping).
The TL100 devices comes with the following:
- TL100 – Hardware Random Number Generator device
- USB 2.0 A Male~Female Extension Cable
- DVD with drivers, documentation and utility software source code ready to be built on Linux, Windows and Mac OS X platforms