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-13T05:09:30.744815+00:00 85f24baaa1635580a6d00b16df2b592f8e4e2e83e72a08532ec215bcfbb0b565 d5f378b9812da7ea151a3cfcca703c244c8644841aacf33868be1bc08f351163 bca1897ab512364baa90788253a33f2eb97d1e797cae22068ae5508d82926ec9 80a8d6b51dfaa5e8b0a0cb1fe614a5a2283117b2db51163f654287f63689bab1 3952548559ee32934d35dc3b9cd6399b016d27f82e08825b4fe193efc656a169 55807f3934f1e2f8cfcff3acdb188b6298818a680852c036d1cb2b6c8d8dff4d cc2c9bf3d5f2a24511bc2ae55676d7ba8d891af5177f4578b542df1395a32233 a555c2c27770aa71af9e21e5c606b639e446cc9a07556e846b93dc2c801c0aed b0e2d0c65ebea4b4d459fd6a720123fb738bc9297bba32ab158d99afd775aa80 c0106cdf52e2139a07d34d5c3a246dfc2afd8e980bb89c4160fcea56a8a88073 4c2e30c7dc09bd2800b8acb54b0d20079ce766fc1a47e500c854b82f82302883 b7d83236128cac8ecf85dc85e3d1f3534268e332bcf2499cd2950f0ebb896b16 4ac56be6a11b502d0969f62e83b933b76bcc9cfd99112c2637378cb7ebe39791 3102d154a92fe8f8e2ed819266cdfe2accba4929786a7cdf76ebdc782a723d45 7e51fc5a8e6b4fa73b10fe631f396683d89e982d331b500769ae64391f9ed66c e48fbc11b04b118f47bdbad4bc5c2123b82b2988971749b111df0eb776db96fc 81cb465f2245380fba611a8c0cbd857fb032a6dcee320083e9f01c4aa7766d3e 7d782f75b43c9a776548de428537dda2239f6ee38819a2d7eedf378c746579b5 7c98ef246a31b328232f206d10d8363380dbde3f5f47f20fcc583d7612a53a8a 6300b97452f3d0f52c867ad70491dd2566c73ba672deae4d222b1eb7a0b94495 4ead49bcfff0c7671f86005a9a61041b00051b0cf1c5a1c13861743999abe8a9 11b78c2434a4aac3e083e58a83b5b321406a06b2c072c1b1fdedd06d24e3025c cec083ef2de92a0da1c3438d3a1e61498229d7a634acce7834ddb51a072b155c f4a2e6bd9b5b2312291640db9fcbb859fc644c153642cb4e35bc87f44d7f15a5 3d60b53ab23f8cf892fc9977d472e9e9b97a5a1dfd85b0e673b0a7443c9ad721 0ec4cb0af088663f32b85b526921d42cccab987821d6b5b5a43712c58f1984ec 2caf6fb667231c13e7a3f81cb60d810a6bb128e29bc445065bf4476eeb7292bd e0142aaa20d9358eab64d168f527b522c62932e6aeb6ab84d1edeb6dfa66d61c 0d3ec84970705e2ebb96abc55b5e05d8bd123e3e5b42e2019d86648209fb36d2 e701a19cd6d8888acb807ccddb7ffb0c5ddf945042c8749240ee35e218ff3319 ff38eee074f46b58fa5e5ad82973a0197f8976051d2ddade8276e8ae111b4a3b a658ee8a86402eadca0bc11aeac2cd8dddc88ce75b11ff393684cbe22b495be1
From the PIN diode (hex format):
2026-08-13T05:00:10.741684+00:00 e1509ad042d6a8aa8d72ba42858f2667b454a5711365e2b7aeb4fe0e155adbbb e0cb70b02f4aef39fa094a9784635928c3eeb976a9bb3bb14d23d1214257ab27 c0ab6c28acd3ecc78765963b526200e61f44384ce6b0499ad28f00e6a57037d0 88cbacff8cab5648e48ef48b0af94ff25ff03e1774c0e434641fbd045f9ebb8b 2cc7edbeefedd28707d0fea3d502f4f63ab9d37e22891ec099636ad52d0e032e ef01053fc7c7fd1a6737300cd8b4c0e911e95100393a96119bbceb870df4b45f 9b503ad150b46d1ea2a67097cb14015d10f3bce192a3821f075dabbdf558a351 0dc458081f06d0696ef48e53585ae41e4da98de8e70d7398599577f26f74f2e7 2931db53053d96b9fd8d47cf69edbe4010edd6a33a87678da3efa4b3de4113e4 c4b9e2a598a8c2c8fa4462bcebaaf330f9a5fd993f14917074762645dd64e7b8 e37781c4152c64365afe04539078896c75d428663873ca40b9a99fdba8813f71 94aacec35ab142d65ca63dc52258661dcc5ecef5c45c09fee8f6fbf94ee0ad57 fb195c50b4e4d47a196d4fd1db8859adc027a8439de5da06fbc5e305b3501b46 5a84892826558575e22c5e6f8bc1cfc916c596a06249e8abe9e583154508813b 4cc60fd849be04683fb3c38e66dc1a0956c5a45418b0a05f3338d9b94ec89a7a 464689c72bab1292d516ea75bc70076ef7bee480d5ba3eb52ebe1be90cdf18ed 87cd3bdc22d8f8a0157dd9cf4634864becaae088839948f56a0a8d7241735de7 09bf6a37ddde126f9b7ccbcbf8e683a4d7565d6589378684ae21d13030f1f9e0 47351b0b854533ea92c2398d0e1e0bcb0ece1584b95137f8680b9c8c4043ab64 c6c640124e0d3f7499b439774e09e09e69b0a0b88e2ce35ccc2a2a8d9d913e72 7d7e232fb38197fb75775bf71738b6b51e98ce875525d4dab8da16be925fe57a e86157b2d41b8c48fc9000f56f1c0d4623624db56866f4e00b059b8269017cb3 eb306df02415cb557f4913bf71570c7ec982b3d1ec9fa339e8f9adc3fd2e0239 86897caf7237cdb1eaf95a50a7a90eb716dc0bd1890c06c0bff273b8aae58795 088fd3d7aef2428e95df1977c7c42f30e07874630e17b990c57d75dcb891dce4 22e39bde5c360e9aa1c30a941293d8dc7af522fdc4a7ac7015e5fbbc26752142 a5b808c5dc957ef4cf22253924a4a096a26bb978342fb00873b2c43c838b0f5d 8edcef4093212d0c02d74b6dc6e534508f0677755de0800166365897f7d4c0a0 cee1c06c81faf3dd1847923dafc961b01d9ceecd1207ae7d2aabae29a6789d43 b4cbbc2939d1a0b5e53dddb5db29e60344cc0c9468c09026ac5c9319897c729a 24ddaa741353be7a61399bf04e206f726d28af4b9774e6b1a31e54fa53f0fbb7 b8ccf41e758e1bddc701df37132f68b866c4b5bb9b9670be96329602ab7dc05a
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-13T05:09:30.744815+00:00 33757061998528661122438947427846314208834694218876 81012085294567212660126036763468322672560490279243 53179988613722811854757044203083636346852530212474 34063880413046102868812965766031206562404923788122 63016635543786775782843389504777535956575501093946 08309179479886610585282757527224399852293804088292 54430841417744556269178842861886413726232769208166 19496334516585949419127013755833980682577054078510 32074744282810769894906480890614013515394123865071 21415375177028921608821954077792583609424252118456 65968668682815764648990989400084728175133207560226 71008484473048403183505418407242333383660450887356 49151487370722749707612780450905463185518307565317 44385555408351454902846947294602428673412006241820 42146169268190420779675916993157023158524551278007 05740057315808438817767517437189868892333584434136 51237377171483185029709534695615869726401289332776 50665000312874671809622520471780605419017266335562 35591036256255401601218124523606497940354732091654 51286395711588611818655838990085168244342204453702 99596614747734433083608568497873738899033134009054 97042700052712976193569716575371691783403652647095 31383181793364060678921493770936029292314542136195 67415830977330416652722052812607432192628955913518 41226459848900762154667853883577272165619681587863 40465319148522902933761576676860543314961036026350 84918205334471522033818164551897432532447511820335 28196328821329100777405596690691711014468920427032 53427100043981349841507482713209022813627312129446 87507197919405891862629166015734003009540161563638
From the PIN diode (digits):
2026-08-13T05:00:10.741684+00:00 80546668704114866633433803808465131901837480142190 87127647745709745132998940958518698759777735336687 71399271084072993501505982980031685676767354430065 12553672407186724239107995622316925200318904955887 39449990350763025885263437309253990645140346010563 99992603554812809217810057585017558835138095558058 80800930626612512001931688466330310793718988638113 96880831060510428388903077694113155289491911164149 83056150854171059064166358350341636479651996856552 68946898887048655363204512161838690084192996214400 54900483442037081740025615648569596829631348709590 77669266619734880229949692097873872592808022250979 36897392396867570697057980277090323740388533174494 11399322975060987371312169082959769815739004046379 95420226098697648424766095515685785422707037994371 18462217881207109028866281469027122435593460212570 52347570363153720610411465159309910655181155243164 86930137553432743348487153271133695146945741143011 14213285815504115640646771009898641878136316538057 19780958057660844244924242415745621425263547792951 17199123568281305235853784229046952297877827407244 00112813703598778104021105553005012479480936218527 73199113871226307959635773954602573437247514557790 80676914832211371206929115847035490843746642492519 99964748201699142385449725178445345592541454619510 48184722349667721221883817336665840897492634375736 64605062078520524776081578966031391593426447334512 02750998528043061917932801025488519260920829247146 61759776295618077425427174416620576780884157608161 81410368124804924438729247253724145436701619839022
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.