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-09-17T08:01:57.520035+00:00 273834e5da4b46a0bdf0c89afa4404cdb8bc02a0a44e01e29c4a9286a02b879d 2a87daa5c0b6b5389c495cc2ae2d82510542987ab1ab5ab121d379e211c270a2 f6686eb60b0d77059a0b5517c9d5b878d8cf720c30cd1eb7bfb8a5d969688078 cca779afed4d6ce6a18877f9f014bd4e94b29553b5ab5492fd2fc42aa88f60f9 515da5074abdb4488c720fde5c5f17ece05a0d01b4f4667c4293020e93dd20dd dcdb33aeebaf3caba31e67f1f49ec5a0e7b718dadf6dd754b7377361d48f4f88 5149d64b104ce7bc0e5af619578a55e5e1417fc62ff45f4e37d98877a642a7e0 828a681059630b8b84b71cc6eb8bffc90b58f3025d817090dccd8f7596da1dbd 98acc3b7c8933852f55309975c5cd8b78bd7e126f70c4395a9995051c85ba4b5 3effc568cfba2bce8a6b23a0551e5355e1c2ff430b3d4dce059e3cb3483c4efa cbb8f730d3ad10080fa7d737bdc75303379b23e5d9e9fa1b3096c175c091c657 a4020ecafba64a36e03b008651e6ef7a4f975eddeba81cbd2a1378ad007337e3 58a656b743d38a03eb2c85822a57f93293d0fc87925a408023830403590efcba 6c2bab97d48083b09849fd419b2a3af613a9a07ce1fee6a96d93d2446d7c11f5 74d18906d51ca5ecea0f69b5635c7b30202f3447ef5e52d01e38ad1d82d123e0 20005f1957f215a2154f30cdc43929f76ac39aa14b4129dc5644dc4cb68eccc0 e934745d9a27d9af2015d2da08e9d455650df86a57374ce0c2ce34556c288686 3a91beda2225b924685b4aaa190b1bedcd24f9b23f003d9eb9fafce4e1b013a7 afbab19dfaf29b1c829b9e8050964b218cad2054009781cf02ef55bf88761676 09dee814f8c115404ab692fde31f66c98575b30d92c6aa0d751ebe5e845d8556 2230b7b2847805d575b5b11d2fb64ab0d6a99002fc1d511f0a1b498ed3104941 d1d6a59b492b9270f3deb5d0d14d2606981f77ec1d8af93cf91c762fd24c6293 c287323b2bd8a3a5346decf4f78c277b81a81b41d6856aa18b58e3474d486848 0efb54325761cf5d8466a33819afd196392bf5168e31a164df6091afd7b54245 efb3a2de2a18b02282410d466c04296ee6e3f3456bc138f01a2c7d53f185838a 719e3fa188c20c160b164403e66b83e9bc47236fbd16f0035547694aba6c4868 d79b82033284f55713e229b2eed265624d698a3d93586caeac6cbf89ab701926 cd25d504ace1bbb215f9cc73657d830e66cacbd50bc675b68020b2e2f345acae 81326e8a445ada030ccc21325a6758c4b7c018e5ab5276898094d0c68f13e4a5 71db292e62ce05e14812e9115f02586a4c382c65b597ed19c62e233b5805532b 112a276a9466e6f81aeb2f25e274a8a4a7adb359e37a66ce616b0de038479ce5 4b05322c2dee1bc67fc46c7664dfd18545a7a8b4b0d31f2da58101ddc7f11ac7
From the PIN diode (hex format):
2026-09-17T08:03:14.520031+00:00 3009d3e26a7d772635d58a311cd2c829bd9097cf977a74c308a105e6dce5519b 5339912bc605c6553115a462199ae8a56de728dfb38080cfb93ed58f0ac6d606 91e0c0d6ad951679ab89b87ceee1657f965a82808e8aa9b4dd9d33d311a49405 be9700f4201375400d65a613abfe608f02b7d62081f6ac606b3037f5ece3234f e8264c12ef376eb2bf5acaab25b2a3182c48dd319e1f2e03e824d5c0b2a4a87b 2b4a6fe3632349383b18d1d71f8a80549c7b90e357b15b0afc3855d983380bfe 9143f9bf9c9d1a32b32383cea324b7f3ae4aa22e72273648345366c8dae463ae 07ca273d8d2fa044db28d6eec9206613368fe8b85836b98e8f51bdc610d1c5f0 16a838676d1b130bf563894f2063257020f447e963b701fd00f46c23c8ecd9f4 84482c80eadcb7cf5cc2b2904d490b4d0755dd3dbe72f79cc9ec486214fffe40 0e2b1dcf1dc1e4738a93318753c893150da063ef7ded9bd40cefb83f2735f57c 7c0bad15d270b079e3ef1f60485ec292a7888520d462952b048ba58a82678a21 5fbe9701c864fd1ebacf695c2278770d3c3334512d85c3769b43291ab3ce79b5 f2053c95bea57577f847d94d22fbac260301c2c8326825b365c44be69847f19c 32e53863802695986571dd7f4a6c18f3da4a6c0f042fc1e7026863be5bc9f7f2 1622d393c8485de53ec62ecf219c5ca05b2288f0a6b174d9c50fac78093dc704 eeb64537b807e7025b316173f66bc792e9ec9bdf9a049b7b5943c70e6d917eb5 14595e6e6e8bd811b4525de905dd7b50d3b525b993ff1dce728ee0eaf35b9200 0fcab22255ed60499fc4b2bb01f64bf7043a623b248067bd9cb1f711ef7b6978 c7843628be5102224db09d7ec490a2de0d8ea674d2fa20f473b91724c6ae6f68 6c7d8a1d51ecb72ec5bb2a5501fa476702433e16f025b5a8e2494c067918e095 81ce9a9f03a6793d7aa0b8b772d8c3c793492c1a8489ef266aad541ba57c6ef4 708816c5d0393bdd52ac99393695ac60f1ea5fca8645ec227b08e8b2abea8fbb 96809707fa76e30fea8d29976bd2a421e4851f22263c8934e283b38f04e1a054 e1f97f44ebcfe1933a53ac89e9ec736f0aeabddee1352d28cffd5c2abd857d8e 53cede879f171bcf70ace8aebfc43deec18eaf0a13d818c9fe581df4e087eabf 3a8d02f908525f61c88424750cda0535557e3f32ca86784531d44479c9dd5287 81981ffec9a57219c3651fce6701fe97207ca8801997ced32c45814ef6d656fc c516e6ddcd665dfaba06b1413c98662339e7fce3590307057157b6ffdc146245 3027ec074179128cadc6c9a2128d6a47b22d632c88eafd5b996756a3a66fa42a 31a68f3a77d993e01fbf51e3838fd6db05583a4f484ba2bc4988d684f4516382 eb5dc02fe9e093afd72a305c50a7fbe185bb8fc94fa2126792c5909d72b41a6c
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-09-17T08:01:57.520035+00:00 39565275706089546804848802606478015674463460433557 42356592828156567392947445308105665222777190773321 17941262041082111319055411852384201412483083918465 05042820672175770861361920897848784983817184464796 42684396819365077489807240141592952390130180022466 47021447325174756071633003589760832409848355159743 79368173751676881490258738856527984795785536196666 67303804168999113932832898391188029329124443175029 89527295834756828309519292833938126749695380819164 81629704864338073560853083859467116177055860797260 78844873160815675589998303555535274850931792459887 64021466745459003481227951946828894219207300155588 66868367380344333042875047354690642835310403891486 08437151283176527365554258196960246909476809241716 37062865150581999223483247527194823056732930353200 95258721622179489657410695546175654186687682429252 16935439753221088501130687557694528508403434584590 34378536049174702511273678630061588576196775867757 55283055582880507533407332840051290285913618221809 20932164748246310233177913469870131730909432933386 34488378322005178177294782747669440229813110277342 16736565557343461281773806523119293860281847769847 94355059436365520940392329682765330661398871777204 72148450879793320263562575505743224249610096457581 66697962422476343065137008044110690793562644258333 31381358636136941222112268030731887135118922038571 05748608720455300350328719417801987705386147880874 72089137711225383704728778211501253114021198178228 32786972742950103868900312335090038896839224718218 37284898431965134146980572181795028806765644018151
From the PIN diode (digits):
2026-09-17T08:03:14.520031+00:00 48090625193853384928418944515122169508610581558357 45439805988549216498255465094079282885624310980645 92734922217137842401275090302842386980575117644805 90510032191764130166197196430283322972960748553579 38761855107891907137786324447249583146033692786468 23437411993573565924313828845623448777911056853156 11456791565726507935316336837474624614395472528302 99740739614147606840320219544384885485424381899816 97226856030927191199377932993712327199830100083532 72442883929478447773117707856190145672982064144329 29931538474935834721136099255512846339532424117321 12762131967294944667363332984943043965383003383395 90510100308605923420191360515281453395185567412679 21810560499065171971773472380301945004377901967552 71565056992838495201132774082474081504479302049990 91223447729362984633569260913436667716971572200961 99048269558407029149971507994655540455238967991409 45268120899410103917808293052380813785472914429146 00157834859673599678870175045898593628038956771723 05209932544090810234777657269644621342661632158523 36987411040825382981834697874285017103026762223781 68737606212449295459036621612260848314959947734426 32373806738427652410123622975759827253575449729695 34693423087871438750285107181541415107643333313438 60375231794304608427684758837237151110895345409242 89332542833559232712727491966193427510192488293591 58410208829597323617120553852663503420694968218235 29523165142595013103015132246828255144692978869722 02938606776560520235578903070513878220986948390765 21184073986218410671784599443691530386636611644249
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.