From d34f4c69e16d11eb1a362c60e1e52e7cd16bca87 Mon Sep 17 00:00:00 2001 From: randogoth Date: Sun, 25 Oct 2026 11:56:34 +0200 Subject: [PATCH] docs: describe planned ring-oscillator design in README --- README.md | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 526ac98..578186b 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,17 @@ # STRIX ### Satellite True Random Information eXtractor -A portable wireless True Random Number Generator based on [neoTRNG](https://github.com/stnolting/neoTRNG) relized with an Arduino MKR Vidor 4000. +A portable wireless True Random Number Generator built on an Arduino MKR Vidor 4000. + +## Planned Design + +Entropy comes from FPGA ring oscillators whose sampled timing jitter is XOR-combined into output bits, with no pseudo-random post-processing. A SAMD21 serves the results over WiFi and USB. + +- Separate stream per entropy source +- Raw and processed output modes, with a von Neumann extractor that can be toggled per output path +- On-device health tests (NIST SP 800-90B repetition count and adaptive proportion) +- Live statistics: bias, z-score, random walk and autocorrelation +- Configurable random-walk / majority-vote bias amplifier ## Set Up Dev Environment @@ -27,8 +37,8 @@ Windows: ## TODO -- Port neoTRNG to the MKR Vidor 4000 FPGA -- Fetch random numbers from the FPGA +- Implement ring-oscillator entropy generators on the MKR Vidor 4000 FPGA +- Fetch random numbers from the FPGA via SPI - Serve random numbers via USB - Make Vidor pairable via Bluetooth/Wifi - serve randomness wirelessly