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-07-22T09:46:58.985006+00:00 a2424d84d454e158c8c4ed9e4a9bc77c726c523f24d2541d90b282c2f502bea3 d2d126bf5c8c36bb9905083e506d270f3d28937ed623a0c7a9796f3fbe924649 2797ddac9edec683fa89039c8559659c753c09758ac5395a05a4250e8a343a32 f8a56152285fa19a84df1cec461c64af13270158cb40e6b4bb5b0ec26de17fc5 586c170e8c7373ba50b0d3f326d20adc2d066aecfff568ba6e3d6619494b0f21 3810e93443e1d433dff3242a2130efbd955604ddcc315b43bf68a63ccb36dc9e 4db3886ce72b10617e91165982e94dc71e57bec162391c28981c5b36bac368a3 3c01c062c3fb07a36b9b322eff8b3ffb6d13aacb6282eb720fee4788aa51bf76 f42d1bc6c5b3e41c95093f9ff7426bf219d976f0d4de30916f6d344b9bfcc170 808a918eef8e036c60b77fc1f633f4e1c0472d50fa119e6083679ebc43e7a853 e9b668655ae29b4c900335bb6787f5d2a1bb7e8b2f00c0e9a751f6c035ba02f9 a916c1279448632b71d2f2487fa06912d0c3d63c35942f52164b9c3f66429740 fb5ea20492a040d584c76ffdfd29a77b9833a49f0b93e2714112b57bd27f8e56 9b82821665dddb530fd57d4d6db487d451a52855f933d0cf053bef255282b5c3 be046a71be9aa8ad64fd1557b7b7d26dfdbae748d0fde7d1ffea04e60a96d96e 9b1faef95d124a3df966c9eb3b0f257f7e479f6f0790728fdcdcafef7b9edf4d 4d88d014dadda8abd80d4a703844bf8411205bcf493db8dc35d8074bc40b873b 70d88f5aeeb3f6f2adadf6dfcb7d1d0849a9ccc775e589bc4a427f1738695028 99d61222ab50f6ad9a6ae5b41aef2c0ed3fe3c6a679185ef86ab5a5bd9b47fa8 67d89f3bcf01b4f3909e7dfcf6b851e5d71ed7b00df766afca11b8752716d11d 6fab42f6532c4c1ba2e63087444e37dc30450d685f9cd75b7c435ecd554f4b2a f6d9090c99006d2b5125662c6f98f6dc9b4a3f9d691f0f38b6e56157eeebabe8 2eb411101f27c98f0536582236285bf84646abf7ab04725dcd3f13ab4b199b52 5b06bead2e72c1792ffe64414776e808d717304557f702697cd1d5145873ae97 899eed2ee5bd349d7a8c3286ceb8c63933df0f2495b54e66a3389ffed90332c4 b2de8aff7f76e579ba618f3a5d69cd0747e51678cde5e3c41f974dc9e25b0fe8 85db84c8b8e956a084edbbba9911098f35e34e32aef8f782357a9211690cec76 d199cd7eb192aa77f958e7e52a20eedef4d7e70086487ae87c733abd6624d255 d4e56c10eb759c7bee1cd0c09de2dbd801c883731e8db27ea9a4e94edb34c8bc dd415105ee80fdae8a85bbd5b1e6a8617c6f78cd2e1a687c06d790c2419fc305 81e0d3498f647e88af2ae3560dc6983afa421c633d8dd49af76590c79307fb43 c79902fee4c78f3bd2c264cee5b72274c831dc9582d55bf7731561dacf94f6cc
From the PIN diode (hex format):
2026-07-22T09:39:13.784330+00:00 3ad366ef8e7bbc19b02c49c14994561da47fafd962965615bd8cd236c7014adf cc7b7b11f25bd5e3aa4a693f71c0578f167732708bddc6a157133baba00e47b3 2b13cb5366a4fe157e215261b53488f0fc1ec48437b3944ead6a45bff15f0664 046f046f376035fde27c40cb4daecb8ecc9e0ea0b1bc44e9070e0492ffbb00bf a8d7e8ac3b4ca669224307f3c21a19b4ab8a30a378112fec70a86d301e001cf2 167b5340596c15031ecd39c074c395424d4f7ddfa77d9fef8449e6ad2adfe676 e084186f8e9076dff849c92ddfe0976984e7ea622b7414b9050035fbd831d25b 361a0a34b2acdfa44f9910ed0a6202413b195d3d4ba7b8f40c8d58bdac0a7d38 228d7dfc04837a5ea90b7c6ed2050f8bf3cb0f28b757940ad2fedd7248d802e5 ce8f7853c0284a2c5ae74537bdad815370ac2643d3a36c36ac97ca3c08bbd97d 07cc2e609b6e933708506df7b23eb244ce3101738c3d9f93620fd27b96a970df 15d625baae3d18444a62ec77ace056d40cda0d3cd4bd1aeef17b7393305b40c8 d9beac9b96ccf025443da3b25034924873dbc3947df87f9b4a48199984d1bc05 fb66d98883730f3224016ce7895146e7a96a1baf2cbfa54d3eda67ee58960cb5 f87a66a501d2f5e17c2216af55ed766b3179717093b49341e77b8ea4240feb72 b4d39b4ec7760e431db30f9872539ab15d996d33a165f7012a18239bed26e21b ee1b98211e683d7befe2d8bbb002a0cfa660812e0aee38691885d6a41f509674 e4e25a841b466897ba91a42bb5af32d6dbfe4a19322c9db79979479c50bf8f0b 307c28c5be9c2864f2e2b32995f8d12c8bb70e159dda20756fc92ae9466588b8 3fb16cbfe6f2d96970bcd0b2a0105344bae626fe07aa762c8d161a836c6a066e 8fd79efe926aa0c255148a9f8e41e5d4b984dc2d294725a808bab8b2b2cac1d5 4f02eb8c95942a4dee976c8aa55337624d391e7f1e674eddddde00e48a001bba e6e19843356974a42427a38429b3f64c464655275b0028b96c45aa3cc4cf55a1 376fd1638a70aa3688bb15a8ee54b7d5ccbb3d36ebd64511261905dd7a546fe1 e50fb15233fcf11203f9b93a8d4c7e9f44ba7784ca78b2ff2a75b0e60f500fef 5c0855fc3a0fc10c4b91808382e4ce5263d45d0fdda7ba04a22567bf5929f6d0 cc8de6045d7e6187491dbe6bbd58f16693f9559efc1b043eb70c15decbddbfc8 36cc8d4031cb6e401aa95788d33275bcbba2d4917320db2164fa6e942e35c331 95c0faa4a7e754a2f1cfd7aa27ccc9fe9cf4a252c9c35ff9df445e624c7dd340 f60f1a93152b9a1b742cf3b354ba65ab00af3c355b0f40d60e81b42dbd64d759 8cabe17f1178c3f53bb2ac998ca130c7bd4f53304bb7bf9bba02f85b708bd21d 8f36e84c7472f17482aa08fd69d4db575f8c5841f878e796e423034f3df4e32d
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-07-22T09:46:58.985006+00:00 62667732848896587455992414088263368429447830940290 63389192405487530508628009391561404726356099692111 63904670733951725898313703563389015617600917389757 90056437143852585065978240956154322870280075193901 88648087911494092797880823144015158680763810450606 04861061022573751533561652675136423348894986044991 67910466605458777936084316972645228930779930879093 98572840522891548695046360019298950763075550463963 09197098301415713670819118452798977928490963596607 25184845110952755593122838454242030896832793519271 45801758963103588867688382040190557644035387033561 87263947009267819253860269229339487299431372276005 18956053484782227556630266516494620446606432991141 67235251645911471365188123274286553030220183152577 09803581654085510559378230819590040613905468730021 87838309867204105010553174931874610259153727267159 11074414437523587777362068711374125668913217329173 61845307759611355912439079737325290873699917378874 66272356058040531834718073540680264414600603453334 71909180276803595901804458258481307613027517841739 22291171668344762762483568785548691304955691246794 85797542091253000943813702441152557463570531155682 97877146801716313943055488345440917070717104149363 19717525558291069073461493214700657118082348698702 05242088157451375846895257224050348498575115364981 78026356590350967838271821869743589305077122209631 51779115333284866032878653170943537850743053224617 05121853267746701988423200347222241558890236850816 17562328925701311530417826696478528865810528743833 87776897241120462604240644946559950529734300263675
From the PIN diode (digits):
2026-07-22T09:39:13.784330+00:00 58024223882576447393734886296427759850862189405499 01742323179170740563139287432219501239986187195971 60147179431983026421263382978152363096325579487873 06699195060004110411559653246477744258146077886807 14044687009168725976660534670794262580713848632017 47126809483000282223836489082103305792169549667779 25672559327373421832241142441873455105329843162085 05005349915426105278726479531610980265592593617567 84124188897210255634412504312294691124100515391540 83874810147202432083924074449069558973298312723867 63085472516008872507469655104755088009786278684901 15406159479815235069122137867461246874981972861213 60892623154748916490725550376861637880524672159548 25275574722553328805023631151550360108378170690627 75449165776203885012812202650124342275851807492113 12478047652342643615148055789918146729791552148354 77935309516101014224355538272752333004612387760260 66962946105605243364318050169032277004518645644381 75507425504457835321715680914311482440979056400079 41494439831421573217114270013684637708910512887860 16836886380770184441222631080606104358460660948520 38594265853245417137680886847878937902404948427751 08386583559877573027300378003800278652675305166436 39633241797670708539910040850869706096856155119938 12705436872168848387615469173825052284111577825118 03855841762659688619322078421776158015920885581593 12754528313082999315678604623703918941410493269735 73299007898802478558270462831221915441644910642669 87365017888762451532330010484653954949926467846270 39566282959568949876256415264721435427164479848601
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.