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-05-21T11:18:45.220121+00:00 c285ad12a73fc9158f0556a14c45b05a824dd57e6154742dad781b0664d66890 93f29f683f52b939654ef1336971dbe593dd1b94a4b9daf4022215200987f891 2c4ab730e7ef39a200b46b06c6c03f59049c433c1acd68a03a758f12671b5845 bae78f5fa97ea2a75b3a9304fff239c507a5d209533d0c15740965f59e4c841e 1a3f01f25f7ec5a095bcab37f6046ddc040bf1102fd9a067941247e08f7d7b99 9831f3f5db53e3dfdee4d0a0445c88764bf53b4423e08c328fc6ceec9f391934 1814d756bcf00fce7a6604a63357afae182b38cb91bfae78f4fb667ff1ff4f8d 6d57412a5e609b975c0a0996b6f204eafddd7db7dc6567a50a5e5563e82239b0 9a0ae4ff785d67f680c49aae3daadf11017bfa605768f234a41605d214eac26c 2cee56db069220b375b8bb54774ef76885cdc08ffa5cfa7ac9295096efd83ac8 5d77929846a1279cb68efca69b02cbbf28685fa27ab7104d3ee49d5a557d9338 c98e8e9624167fbc88b22a0e3e5a94c9db833517f0a87c02ee9a2bf5e048c22f 37ec0ebab902a82a85e349ae2418e0eefc6cbd636ca71b80e1f24e4a2dd2bd24 58ad0f2d0e2a732d57a68bcf06e0d891abb2bd8ea5b340a0d111d3e7b363d3ea ed3065b09e44e4fa0633c97aefdc1c7999b2d7133f56342f012cd1bfa8ef2b41 757f46c52ecca78680ac357fa04539575b2619ba69eb89ebc4513a425abc4f3b e057dcd3c1de8ad94530d403792931b6d30cc56d8f880693a67f23131afcea1f 36bb12780e5b5a17bf6c0be6fe47b0ca73f5a6e2298931b55653128e0e563998 3fe2fb12abaea10054f9b43e52f56ee09523546e67e179fe6092f62ff0319287 4d442f5f7772d39c839f4c2758015991978dfa717a396c3ca260aa10bb164190 31606e7c47e29f1a8d2ca71b91626da833a56cc346adcf6a41a9c964cac47682 92bf3ecb4d57fc371f0a86ec9f2eaed929366349c738370871b19f0d21625875 3e353865440403abcc51110e9f2d5b6c00d5c75fa765284aa747ceb0562d4c52 31c5e15ba4b51830cc90180415f0dd6152cad851900f30d130ab1930c656927a 02065b28fc19e421ee5325451a5ba7ed2cced58b132edcaae1206b307dd0f721 a123eff3ffb9a0ac6481882354f3f2a316c4e0e861f5a8eca63971a24ff0b505 dc53bdd6bf87ea325b16186caae3b0c7240a5c174eb367fd1161fb2a11019de6 5f6811cea2792f0e724f0bef6d98b74741af42919ce9c3551b8fc0adf26f6575 318d50df054e99b79f6a07dca6b16bda2811fc859ca7df40d122325eb3491d62 794fb451fde52a3c152e9d774e69c604d932278309e26d87e9548e052a027481 81c4d6bc00a7ecce412d4e0a0c8155c648f7f0b75041c4d0f7cea28ec8a857db 5a980febd4906bd1f5c552f3a5dfaa3b08f1bc83a22bbe8d246a78fc16682f3a
From the PIN diode (hex format):
2026-05-21T11:07:14.417958+00:00 80b9ab3f20d1e27ceb83fc79b7ae15381dd891774479ba7f8fe6c2efb49a29b2 b7e4ffbd9f56047a6aab53de5ebbd63524f48f5d9c7359d375eb087954a4dde1 3c9b45f00f6a3c336b8848f1505e86335068a6eb43ce241683e821642b09f5e5 58082580b85a752af1d7391512301663e4d04ff89ee51a4e2782dc2f6dc1d463 913093294527e4840dabc536d17eefe7f7feecad989f94d9c054c036e8ef1920 5a61c2c17e2828632e179fa26df517945fbe68e8812157688d9b38125025faca f4c3ada00b7e4f342df4868a511f01c24fb609250d95bcc771b1ef2ce0bb40f9 df4d0ce39b581cbbc32b94bc2d8a39a3a7558a5a83f162a71d3635e2544f2bd0 1acc8c322f1877cec5266d2cee19d964958ce374076ba35b46ae27c92074101c 46016f1abc5d8188692da763c3839b48e3c970bc857da8172101047acabb97c8 b18be242ba33f02997146b9d3d308aada3efe9b237b28322f4866f203ec4d0c6 2965861b4123046509963b466015ab0136b4808e24b32f08066e04bc74ea2d89 1b9d5cd379562351456ad6239ddcb2e0e19389279bfebe9f72b2a00a7fd28412 85b2eda5e0228c4b0e144cedf24e445944ebe6cc6a19a9e24701a3c89dcdf63a 819a62b06c1db0bee57c620bfc401fbff93899a89be701bf1b870ee76ca90d61 4dbc2aa661913dbec0e2485dc5eab407479ad6588faa91b7e2605d3d16df1d29 3ec796a820e5a8941b47e2dd7e9c17b78731e5fbd5cb3739b80eec0efb9f393e 2a857edd37d11f3836233bf78e92d41fb976fa997e12f4b6cf200efa7a20c311 460784a2bfce1b8409427399f8ffd31d1820e7f8f83dd89920b64358f74db016 7b4b5510c39f2d2c7876480262ba007e7591d5046dbbae391720eb7de77701cf fd8487eb3f2205819dc2173b426a55cce41648e2b341e8ecf14fcba1f05efd47 523545fa28692d52bb7645a3ea438609898f9db207749b7a79d4478796ceb336 c97fcab868259d3704b1c3ca402b1a00ef54373d75764352770ef36f6c058cfb 8788119d6988760d095f3cefd354c40819fc9b7ffa424afaeb2c4347d0bbaa5e 20a2b8b410d08d5fac1bd38fe7f4fe78e3e3197bc62c7a3edd688078dc37246c 70c8969bb88f8fa527e12deacccc13719ece323441080260a589269e9136ec02 173ae0e66ed1e8a57553f1f98789a921d32c2de9453d4f731675f594f9c8d672 5f2c5233941cb0f84442d77597c6981b3cfe620035402bd1c92c6d862a08d004 e34179b41afc554bde805db304774795f384442505ead5bb31f40465920a9c55 f9912a4fe7241c8d90912269f05d6936a5d4ec518672a8c9da74ac84216e0cfe 1bfe4bbba9fdabfc4cb848f69a587cf9f0ae8fc12d4554fdc733e8ce6c2d3d46 ad228468847446f98f83044cfdafa3af5e9fbcf99b62206b34f6c1d1f9c7c205
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-05-21T11:18:45.220121+00:00 94337318676321430586617669769030772697841645732027 06000444475904638285570178510513472748648502342132 09354544748348576200800706989263890456676026046058 17431803278869864395692662679158470457970765098361 12211609015876323026630195269760498871550409041116 47600348187143252353524983606892361875596835405043 98595725522420868815220204665187757424435645917420 02277941098765429496555192100950820425830103651094 85993457765410209303289654746170170123968704526422 05209408448606463279178487841978043392439222418050 58931946527061395682426655029140049562228316776257 90852547564242503622278836784214629048315323682402 54437294475514868502684233737436240889990867272878 74458936887315451442154587663906457178894265796460 17799948017658680651222821537819638652470144916843 65172770974667342872532760695787913825860537968158 66908879598793386948032141498212970943360647662735 19263154871820149190239108117176156641374981868318 42148657526318717461008480628210493584100321964647 49463577684795191456315976398801894551411322570860 62967016872265444996102471592641446727459809685165 08957073066569009618304691627787553110345946744154 99739956550813775913339888176253560168040371811714 59459108009995670140746771768645768249979164812448 44240421978281441548487125489886462202069140253383 37692691674439194670320748253361358560720029363584 63229697686657136279810583899135509122240870769936 10922378790317974217015795041762214714147911095283 71657566455695852743927311011749418005785383590607 66770740173356676434509479732998217980814260214657
From the PIN diode (digits):
2026-05-21T11:07:14.417958+00:00 28857163322431218374215629451968218627439480544178 83895986042206718394875336439356158917082184646055 69150660510736728094345180046667362231330043098808 37288490174257211848229979582678393047099399454847 41693932137197542673525948928492542532909794932640 40994623596209234895900429338704415556188037957360 11267952453438813101947982093713498899137744876477 12558828879543488845385763678538903198672954538479 43264050472419973809442500494016070763917074393216 16287001112688932936054567999531557212883325682333 01042287517739668651415120075761483873637855783134 34113262969841013427653504010950597096217101548028 42367947080610048816453727579221863581690635577847 37395590591478601027321833786534407514207678688968 06256971016357582954987608297690249811643191565368 55019127351408691397778842669745619092729397800771 54884370458396936122294162995068326848277126562383 35495557841414595762423326553156543559424631851853 26188232142232951770073262912732096615532924326153 32826788777622237585169559454420187202988600261745 04098774572332251901323563340529579423596606852272 79657961947182536940054582871869636734093743577807 16552221713550795427840437575504779564432600845561 17186782191411080540353617570536181309956084960825 55276674446771877094326284801641957227432025239844 22620428205536081250558443436539451913585052650802 96653738584554022358106517833537693344456961791522 17481495448251482876686617519852276098005364434409 34420804652180268575289379041971493268370587490401 46105685454279362841444534059305546581341468167232
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.