2023-05-27 | [radiclock]
next: Atomic Clock
lol so random
As part of my atomic clock project I also produce random numbers (why not). Radioactive decay is a well known method to generate true randomness because no one can predict which or when an atom will decay. This technique was used for years in the famous HotBits project which is sadly shut down as of 2023. I have a radioactive sample of my own, but, there's a ways to go from a Geiger counter to a number. How does this work?
I actually have 2 sensors; one is a classic Geiger–Müller tube, and the other is PIN-diode based. I collect random numbers from each. I didn't know quite what to do with the numbers I collected, so I figured I would publish them live.
The 2 detectors are set up to generate random bits at around the same rate - about 32 bytes every 55 seconds. The full 1024 byte frames shown and linked below will update about once every half hour. Therefore, please do not spam us with requests. Also, be sure to check the ISO 8601 timestamp at the start of each file, and make sure it's somewhat close to the current time. If it isn't, the project is either broken, or you are getting a cached copy (check your browser).
Also, a most important note: the data listed here is published globally, not individually, like HotBits or random.org. In other words, it is not unique to you. I highly recommend you do not use this for security purposes as it it possible another party may have a copy of the data.
From the GM tube (hex format):
2026-08-02T21:23:46.455353+00:00 44a7e23ff4f362e19f7e091548eb77407dfc7f5cad435208ba98a4bf0684cc50 2d3788b005117800d192c47c2b63e5f134a59e9d5477731e3bbcd88820b868c9 952f46b56591043a3ecc42df52628fef89cde810caf8b3d1537addab30208ff8 d74f88033e1fc23912dd1b9ba9c5bac207da086d59249c04697160cdc35e3f61 b3bc8bb5840c1041640322c63205692f958425f652180f36773906660ab0eccb b68dad661d7b0969805dc5b31a010e60fc0b1b98f82a690049ce647a2e7d804e a63deb55b0aef030a177674bd7f922d3fc9aa7396991596b81f9c99fa8472a01 4c16daa0b332d1885a1be4d7af3456bce0857ae66d33857cc24d0d9645649a97 92d9eaf74a573fb871f1312e5bef60bcbed829bc74b6a160c8e406836ff697c1 b7e6452a7012c34f737c99a85915686dcb09b6939aa8f40ffca831fc3853af46 31c158a584280f553cd401d1c290badb435aae046d02c686a6b1b1bae2519ae6 53e6f2224fbd69d2ef9764ce6b71f7b3c2660873209e599aee6121d7eeaf0b07 1729376e96761cbfe47251560d585b8d6cfe9e46facbe808a1cbf35cc6bc3c52 e54812b3c93922fb2c09798fae8fced08bc688c6c624c9770320fabeb959b354 3c129db708adfd4f7af1b25116b39ba1a1c749c5eaac801e1957da3b145b3991 895f7832e85152caaee071ebee1aae1e7e1f3253adf2a587e5b8e84b1d407c28 f09966ec764cf4808fa9088fdbd312f152a3323582f53a88306d74180e9f8b04 26be579b6aeba120e5ab734d91d46c5412478dd9370833f979d06ffadbe0895d 304b01b44f9cc8aebaa9984a71174f0624bc1ecf10c4e62f53dd44cbce5b9e3e 529eb12b73cbf95802324940127c8641e762ac96fb93026150257226a260164a 97b8d03d4cb875b73ac7c3c4c0b4257decb523de2e7a94c7899131a8549015be da706c19b001f16c6fbac9858d956965a72d1d7017dac20b50803561eb452c93 5d0bc51c2c8d635605bbcc90dee33d80a985f3e4d258e3016e9be0515d0275f4 e1ecf1131485684dc9f4e5a061c585be257b1dd397040c985967db3a6ac1bc34 ab7d6266df8b5b5447b6fad20fdb21348737bdf0e9ce38a0bc025f50809e22ce 6022ab556696a5d417ddee0731aed46c690100acb74f79997493c84552c14bd6 5ca8561d3ab2ba607f7fc285653243d5e12b2bb55e29d0d75295a51eb861f34c 71a3fb77d1e5385c0b5c016320c548a53b0211db0d56a1e02b7c2904a46e2594 913289babc957d18ba8c3fc70a3a29b3a1ec982d0083f894850989a69a017151 25cfe1b634fb3b6683a32c2e538207418146ecb84b0079227ba93f570e5e2265 faaa95dc2ffd3ae7892354553924fb1bbf2cc5263338cdf95e51dabd408a7b89 165a2e2b7f1b54034612692944068dad2c601c8637d3ca949f4f56bb94e8ceab
From the PIN diode (hex format):
2026-08-02T21:12:51.252226+00:00 9445c4fe3aa8ed43ada28aadf4a740ebeedd0f824b50a6fb28b52ecfe80c67e7 12de9a1137855f78eee3dd2d86efefdb05c110ec742abf43449b70ce18a3dee2 cb1a505a9a70370fe968a551849381357923e578bc7b3a529d839db00cee0648 08dfa47b48ab42f57630d0b0fccd7d2c74a895c205f990cf83cfa3ed59ec0fd3 f9e87fa75dda849337905c858aca43176bbbf4ef7c54bad7c87920c13073eb89 d23b2a6bd92e7d43a5361dd66bc606e257f649fbb830e87024e28588b6ed63ac 357fa0858cae221d889c77882d7de27456870161d68746b5b0d53aaac9284715 391611d88727033f1f7c2a13052336cdadcace3ae3239a984cd8cd2585baf15d cf673b426b12e20ce2bbd6a580540dd2b3cbba477bd7fab8ba21916e74d2689e 3ae242abede283bf8eaef1b268c8951a45b6377326e4f5341aac56f284103cde 4503490ca736d8f9f4f4eb8629986fee26806b236b3e0f73fde66a47cc8ee49e 048420c25c6518e6b486c9b4f8adb9ea703a01452b70ceae9f7f03c8f1a404f7 34933cc0a1eff1bbf4435bed5f71519ed7034b87afffc035fc5d1c3113b86ad1 80eca4c3f14d5f1bb5987a0617b79dcfc528d4788c48c4f4562184ca8557425d d01ba07ee2999c8a72c8643f8ccef548cbf89db724e85882bd04d453ef890fc0 a6189942ea7f7c2a9592607d30f40d53faab2650fdeb42591fe880472b9d47dd ca419545fa14017a74a4859f5e1ee7b5245c68c70e682202d11ccf0f2f447ee3 913de9764e743e02ce61d468f435fcdc4aee70181d332634e0bf540c03fad93a 2bd3125a0c9bcac1b329e4b0d192539504ab4a78bbfde4e6915bbbe9a2ecdc08 309190ca8ae23234b1a00a5b642ad804f42993a3670faff7e004874460542e1a 83d115cd98fc6c8efc090e9dacc5cad183cb64057b9e0b7f6c14ebd518e34da6 9e86ac3d0f9fedfd214704b0ef6560381d7cd8ca73baf242cfdb85614dbac242 462c18301981f89c10f6e1f767c24614be6654d5a4cc7736b40b18cac858e883 fd8039a5a14fac9b577c7359578395f107f1d35fc9ede2545c3fd634eafae0fd 8bf7b9212cd54e83ebf17f944efd6f415bd6a8f00e380b251ab3fabc50553837 1750227d9f0d5326c4919b7d9aaa0858c24c63a6516dc34ced1d4fd3c0f32329 7e847a066c69759bee7bba89a9a00cbf1181b50340ae6262a1ac0df3f9b2635b 7175ac10b43987599c38b3b4a5ba07ff6262dd5f1ff1dbbf57aeae354fc3cfb7 0dd525f86168008dc7a31d19e506bc7b63f7ba9aa51f23a5452e27e435326bab 9e625837a5cd67f5e3b0a9dca8b2acff78fad2017baf316edff18aea3d473c27 1f799cdaffe35047eb59eea9be331c16a5516154aceb03ca7ec08594ac4bea20 503db00287c96603baf94eb26e2ddd6754bd554f887d18873dbd5b14d0e389f2
Ok, so you want decimal digits instead? I've come up with this technique:
To determine where to make the cut, look up the binomial distribution probability. It's already built into spreadsheets as BINOM.DIST, which is what I used.
From the GM tube (digits):
2026-08-02T21:23:46.455353+00:00 68676398592609217219642527927367820886526491063280 45553676051720004696244399526558578419153059883632 84044947708101450458626682984337167983227148324379 36036231945718275569978694070809893656040513969594 63977988398132121665000334985005054749323782241554 19570602107682417302292309052893977926011496112752 42050073002246252878666185767448611903753454675705 45890729596871420176226079503690277552868833220951 33249477135069005451467487638413494691968890418816 82619606311151938369421218957915245368892104090982 47546815684956837570499388653240158560019444866790 74040902983466777786815483347989055100071379940208 15325889549733751107234155105018289114818613889141 08587008619298886082721879573444092143744339983698 98361903329085897984601857830873792278812279556161 99739772283025875920915745379520508182741326743026 31508373653584752964244053021876284369084318826350 53305836480916241459390438908755066132711577450884 18714155085121113793487501807956748669527413237906 36883016964783689158628258774315880250736418243465 98725047029780371438629622745184617684178358999596 92803725813546224899374549688444219012082576010811 86334149050167452912239411802853976944479311972844 41998605874461286933880110558193021719203304776097 97339037232951041252890358069388527125980239918471 82153352355589566088029580285834963471850250652307 49740805010072837921531647698293759268862958788696 27279433015067434381944182496530849776136319569211 92019932977265590217138661432441046410374845503786 88492524864063991058417961524500314833093766540113
From the PIN diode (digits):
2026-08-02T21:12:51.252226+00:00 48699658686773623873676415307580664081461203185417 55339520453405931616429167685512246326809054125515 04658132472953213520882358825731577612067208642372 71661848762544166849940544316389152767933247554492 33386723078724848621329348153759420746256765542907 98068773844812363336829972532760334074342936561936 45251686350197357081765870407121572217353903633124 42190535547358355452763733869303596607181287652884 13798671238486334510160458586671319142747804492669 82551538522672863216606903731267543441521138280735 07621515067142580432329492012480348073851258016943 12745927036404524760926187679195138158037535759253 93284919840628649577952781522206238357974020407296 86333233876693276026535638140063407257833688308904 83371592662453662724424946962548138371388066893128 71435771654969200122166433599430813692049914043402 28154768264561187816620297045374122429513852918412 03584318901255937941764683490471742087459187620848 45443850527760109100420441476303157504356896844626 31215208420914577297310005235811270820247766583472 61155933710476019656292415866633977786946670442448 25295616039470209002846419548011248831285765617972 55872415898731490795849263523985334478312748781165 91681456113726798880855655238034255913833896455525 54700888947699668109957629799235412632220608051755 23863769601291172981036474989861721378999113177216 80573589565679806586079898953191877474537995831337 97040041996329250688239986546531356569463953500771 58988855650376696878722001237549103861716039312156 80718969905128226581978472032692334872753280617602
Or, perhaps you want just the raw bytes themselves. Just make sure to trim away the first 33 bytes which are the timestamp header:
Here is the python program I use to generate the reports above.