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-04-05T11:46:43.473539+00:00 119f754d63149b523170b707780420f52e9d1699854fea4dc4b889165ec80dd2 996a7687e91370d604f06ac0b2e752d69f64a38d83bad558a7aa95d6ecb55462 7092a2dbd7032a6239c3aa11e7b781cd704669e23c7980510e6722855e02d22c 01007294b13fbf38367b35b0005e7218c1226d592ef0092336489bba51c6cbd5 dff40c8a52a27d8a944f68bfbfa52bedcff8ba3a495757be6322b5361c30a71c d1478b4650e7eb31b934fa65ffec15247767f3b2745df042ef56dfb72272b7d7 3a9de6766910a8800f69395d7abb2b2abef3c25517916d10254f9909fd6e233b 27779ef170e5e30157db80dbdfbb04c4e20cd5d8b7ba36dd61d5b79f63fca1b3 d6041653c9d9e0aba04f2554d154629717a3078f590a31702182c314a72d5835 996e71414ce773ae09e44bc969f3b3a8c4aaa6fdf13f6d86e88feded7d321b96 ffb6a4b20e147563b5e49323a73274a1407a60a45411bd9c1a0f25d739a65ec4 5493ac32b3154968386a5172abf2d79cec0649e4ca9e4416c9aa1a9b045abf93 bd963bb9d6cd18cf12a84dd9a43623881fb962b0c48122904f26b263fdd3f5f4 9d54051f9da5a0fa598aeb82654b7a2a9bedac0d45a10cff245752076fcc1e62 ee39f51b2fef1e1b47a5451d5e126defb84e5b566d240a41ae9e0ae2c5b16585 c86b0f36d10777acf9eabd45cfd605e85ff70b22b699ed8ce8ccc0b097406ffb 6e5f967ee3cb0d7f442879485daff63856f24a1946a879539207b67873b2cfdd 0e188deb440660ffd3349580c901b395e09f2322af96bf9b226eaad04a022b82 9938418bfebb82c106e1019031256022d13c3a39f090379dfd1f77caa89b5b57 e5cf6bbdd8b629940619b1bd6584b42f62560497df4fb7b6a3d7d5a16019edac 353d8978cf5eff8be74a96ddbdd3ee78cc2fd9958eb0772e0b9255e4a302e25f 6eb29b786f2970d7814c7174e35a4ef48e8efe55c187c8eb80a242d4a787b82d 89314eae82df61b8f934369b550534a2b76ee37c945147270d4238a03a3bf9ec f65b23681a6e1c39f2d5f9f149b05e517a7edae7cb0f66c8f55ee4970ed122f5 8ab99f8b0a87324d4654f4e74bcab2ed7723fa7ba2199522654dd73f2c912846 c16fcaff918f7bc151932ee0fa7f64157902d9fc40b14bfa2675cdb6aa76b1d5 b4ab411300f950da0ffac59f62cdb8440a7373563ca27615682ec40c99a0e946 a9212d45f17258534b71c97f34ca9aeb51dbd466773147e133ab9145594f9ac6 e61332c0c35169d2490ed2e7e8e38e1c456642b797ab342a85b582e303b45491 f3cd7236ea3068bc7b70a56f2ed81f804d6bd11667ff70694c8ebe690528c763 463f3b6d7b6514c07758d70f5780cb04bb6d9d43e101fb144ecb04f03bb93bef 1faba566cd6261f8df8c7a326ab9512e72b32d289a78f7efe2430b36071df240
From the PIN diode (hex format):
2026-04-05T11:45:36.873198+00:00 20dbb67ac8c1cea9c795347f169ce707688af38aa27bfcfc95391953355e800a d1256610fa32dd2217dc16194363a6e881a82f0bccb92a673bf200435375aecb 42a6fb416da541d4fc8739b1a25da26d5060e7368a6998cbb925c04dfc4ea028 f0281173f3eabb0d1b07b4c78d68f03e83b088911f393fe42d75cfd22aa99c5b 345b67e290341eeacb8ada38c5818e952deeeca25ae83a0348d157cbbf3bb801 aa0f1de47d810a956081eabeeb252b5086c8bf2198d4e85c157e0910201458e5 f6cb8ac79ecf078d869328f0e40a3f1ff5d5bc892a58cc051c11ef780ba30ad5 3e1d07222987c0b1e8d3a9ffba4e17adf1e2a1e4107bfbfdabf80b4abfa3cd1d 1edb24feaf8a9d475969dda577489b683e02551029bc3b69c96044968e4811cd 884b5c5a2f0b097dcb863751dcaef51f266c7e6227e33e054505b04a8d71cdac 0e5587a35875d078c3ff5f39ec4e1772be1aa21ba46c2cc3804be44e6a649032 795bec9f19aa8312a90fcec6924286101427e52dcefeb31adf8a1997ff97f058 b4ab29de46ae71f74702caa32699c15c41c390feb9ae701b52b80fc3ae89f354 a69d69dfac6d6c6d774e3bd7a85712421d4427c841fe2e91c0d4bd024e12d573 be104e12a6042ec7c8fc85744a2db229d54d9416869a341216c019d19fc2eded 112a9925af0d1ce7acfa031895cf89f49edb526c6528016e36be36047b9a8a68 d95c20e68fe382b6a74890504f771c41718a508793b1961c4c605b89b68d7279 83928dd541ce9f73f2a57965ad41fd3ea8430cb6a9fc37abc3301c4e0fad43dc b9a63208ce6ce0dc0be4bdf0e25e4d02169011fdef08779b93895f5fe35b272d e54c4f0c0b459c58492c8058911a40d7eda9258c7c17bc139551e92be7ec8227 2e9f050f0946100fb4c17e9f11759142757ad9aac1f1f22e9fa339ddbf2dc8f0 7d9e1147b56fdabe873cb05a5c76cd4198906c64e7b472a499f206f3330feac8 1b645cad91a8856e40beca0bb0c2f632451bfb245762cb4613931da437958bc9 fa931d49745956366c33896101fb3b4b581eefe6a28aa09d6c865e6b362256d7 feb8af8cf390f352219be5eafb7f5a9a9f2b406c7b4c83f3cc3a67d9a79f7820 0d3f06d89b76cb291555dfc4ffe75644cc06e998ba98dbc325f65f89bf051ea3 162b097b3e8b2b41a66c8b0a18dc8731c0ff6f345b92b82a7bcac5f07d091d0d 84d1166aadb5910bd9c2a0f1d2b9524f67b235b47e632a64e3201702c45f0ebf 4d067ff694db96142f9846105c127482208a4a776b1f21db209486929f74c821 8cefac7bff9a8dc56d084c0347202048f080ce6236d4c1e5dbe7dc35e076c221 95663161c69041b8d14c7518a446504716aef57671206d951f0550ab8d421d86 d29759c4711bcf182889d073fc16a91f593df39586649ab95ecc3f348b10dbcc
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-04-05T11:46:43.473539+00:00 17591777992055824912830720043246572253337977968437 22941353061835191204069278825900634131868867704981 84981246620342985795701783291270056021288114033433 94024401001448776391565423537600941424933409894609 35547255868198123882622538487904919165438658738787 90993481542848672871397080498552012136190378169366 86833414835857180516682815055793228743429094852345 09163779530910355939195812018728870496128386549783 59996179042283716079378484985123630743891049123330 95206745885353101365761574097505796896706663093443 25502750826478142017998147356750166164229664841789 56261537576694968447725079217304560681147156067358 68227026550490914789505985241868776454353631859876 96293444793878995784053157656089383001752242557213 69611236878207113098572747302771656929941809847891 86093610657458109777013307155407197289690595113482 53409276516411109550261327684021729375568674257068 21834607822015781424416806965249280179495935347550 91553410707402433053566539873093060144493796346058 57445557311968559187078982414806257789013280479886 04517983826361962572536137209439745089204749427619 46114685630295107855201141122976131690784242859335 28626667358445374978743097845254558505526283102448 81713913665660585991350426102857737694812226150294 51143438855939103550777084757819352362254934017763 44454070931145432393814746270021210264777538178270 18778071651900801597599884681015158660621821044696 12536070693345691488837513275254810219497151714569 89795498195092958105731442286902668351715242338130 03808445145448048823126511463128770722031205764290
From the PIN diode (digits):
2026-04-05T11:45:36.873198+00:00 32822293699949522722560704383862234957258353942810 37021650342322256799662968471185420359006783177466 66650965653557776293620980965438055285379277786040 40171587132707809941046231763645315763451742695691 52910344523038569729424945629058037287915984017015 29252910499629903743803491335292212609163220883899 58074134474010633188374288052817201163106229073441 35927769867823736116237111749163293036753857718905 65197255046202851641885905966850427217367592904711 09253455817431380826983962056905767441137214853563 88172095955778231490266227640844952875780600445021 91592570311869159846663416203945792638255151888071 41707413710263385393926595448574122782841595743784 66570572090809197859688718662968396546459289027818 15901678186604469933167445784177482234545218229225 59941742533775132872032449375882080140011054905404 23543804923243308267724480791928651338803547775028 76969137824114213146416559156521017365626867128269 55719548287815736785665008081189947702224417081955 47379595913945767912116956887344288845266469374024 23881949814330394659051509701615809326591717456617 22709346596357914525581771811190356076909218655244 08008014645306511527009273456833106490117694506927 36879870194729645549394729731689865408513797015975 88306238605708349407543486847540448233552790545943 64082376315803675920321363065518412185968668065286 52953795379105306322430923623943656608391024354992 11529146844223972509291332220673814511946085827903 78538026994200322302969514917706274850204752701692 18163032387419073133324834465916334072235441970908
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.