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-03-26T11:54:51.929769+00:00 adec5838973bb89b93d20904398308aab094db6d281df3ecb8ebeffb4618d89c c7ef08fbade01d345a836e7f48307f20e8bf390e516af0a1e2611bca7095cf64 340e0dc0855ff7f5b7a5e38fa3859ef8b01a5cb924ba20d9387b5ad480ca2bb1 ffa6834869aa27619eaedba77dba283c4423268ff887cbf52ea5484fc91e18af a5d74646fe51965fc77c301ba0fe071fcb2d321a316034e360b953c0a0ec6639 e11b1553d1718ddf7cf2ff7fe5c339ec2c890cdba1efb2072bde1f5f88b209c2 63c013280fb971dc6755a413cd5c1e1e4541d038f093adf42247d1936c115f47 665a367b007357bf77f8594d1508786ddf22b6a2e60b228290f76208c7c9c68b 79313dca1d7d10d23f0dc361c105dce16bdf20bd157d870d511476310995531b af6dfd1cf91f990ae64baa99f17c99ba9883c04228d3485719a7026685ff86c7 4677ff7da6c1af42c8ea9faa4e0498d6423c2fc48b4be4ee358a765dbf0fba9a 4f262d2f916d2cd8f1fdaa786636dd5259a5328f22125b8bc0e9ed7ccf0ae855 c2040dfc5c044f92f8cdd48780802cf850ea8a02017c15e722252323d2894187 129684bd3631a80be67a5b6735215bfa15b2437d37675254157b9203456ed73f 692422780d97a314b8ff04c407366ea18ae8118e2a945950fae343aa3f5d597a dae56b4958f3dfd4f8474b398e38609df5195a70ede8536a1e8f66c1c29e263c ae818868319ae85c15d7b508075a2424937c2faa1815fc3fe3bb5937dae487cd dfeaa0d1dc4d5ed0a8ec39511e5669dd2c668af97171a73968ea60e2f9a6e890 0960f248316a74c95438a7d8b0970d567af085f1a4eb275112eac604718f0a8c b618975cf412e0d39e4d3163ba7e9467803eb8d7f90cf82fb30cfead34ea2b0d 2940a5917dbc3061dac49beaa7bb3fa76918ddb8e7a59b4287032222e24fba83 028e8b2cd3e01c6ea30bb7d5b33b89032eb1d397bb8b24306e5498dced8f6ea9 05efae61a99446cb85928fdad497da2263c375a98db179938d8df2540f22dcc0 b3b2ab27f410086f834e419efe091ceeab7eb4955a5b451fef17abc33fa20211 3316676739d858c018a21d0316812df54142f54d4ce59ea69b1090cacf443f2d 069642adad9404b058029b0c77fb072304597f1e545b212d2b45e617696011ad 9c2ef605d2f2f7d065b6c6d27c032097bcc2567c91b2be7366d5aed80a2b3738 132603367abe0960c43253d4c25bb422b513d652103e947a8492149d2c8e1a48 94f1e115a417e2ea7d134ae4d96ef11c6d0cbd8bcaed282365c4f603812c7e8a 8bdf0a0b3436ac6080ba40a83f6c9598d9771f2371020c6625fe603554fdcea3 9fa50039ec8aa3606fdb4836eb9e2672312e10ebb8c22dce44475e20497e07cc 22f13335b7f81403069036852244a41d3a96b4d39e7ea4817122a89c7ec59191
From the PIN diode (hex format):
2026-03-26T11:53:24.328806+00:00 cf8bea938cc0f0f1ca32cb8ccfc266cb99c7aa16d87fc04e48e82fc21109b5d1 c239da4a7c09aa1f0a2a78dffd7ab74573d3e3c5d97fbcb45a3445dca3e9e3fd b7715d5ac3ec38ad273395a3e098352a57b79f8d8bccc0ac4bec5bd71e712300 2b65768a3491c19f3694360245060447946d82d43060dc8fb3722c6563a257bb bd852424b65ad89c32ef493ab617546c85a53ffd2386cb7c093f98e186046af9 b4b96f3223bcdebfe7f97621feacd24405974156bde7ae75be1974bb07c12621 5e9e1a77d1df776935fe3b4cc7d57f4579d7e2087a3c0b2d190f64e5bee0e0ac 95b203ac82e2624f1af1373cff7e5800c4cbfc2903cb148f48f1824d7fec205d 9df9a5101345cdbd555b4d70b417747eb43bffd721e8a25dd715fb7b2baf2d54 7f16f8f88d798d0d9177a0f0c2a336568e3daecf5cc6fecfb99c6dd64c112ef6 dd0329c2184f1b207756e9411ee53ddeecf0071b6b9e2fba552e9bc9bff92fb7 04c841bc145d95c007867ffd71eb613b46e70904463e5a3435dde248bb4f4ab5 145485ae34a67ec3ff7feb41206f7b42fb230972bfcd348c63a4e6e5e161cdf3 a47864335831c819978909afe41bb38c4bec413035637a0838b619fbaa3a8738 781cc42f4f0ae2fe2d0cf8d9292f3d0ba9aceb5c4655be28b90c572cea51b2ae 15ac6476807ee66182b35256eb6ce1070c42587f38850323037857ebea64a092 507345ed6155000164fb882ae9a80b062819b4accf80dbd70df0cd14fd93d31c 1c40a13cf7661611e2a9d1aeb06d0172c1d26f62d6ceea1c7f15daf40a9c9340 931dcef87dfbc3aa9a90772e4cb48c652e04c4feb7923c6f2f623a660e787d42 8b500ff61cc600aa3e2688322a26e7f9656ccc916665cbd96742a0c5a42a8280 b9d7ab5b37b3329261c900ed5fd7b573427ab8746e81e2009a6e60317bbfd9f6 48de64c9c324a54b9b8bf074be2714b85c1f111a383ba64f095fe4044fbeb5f2 7338af2112522438dae7e5d47b404240586f96015d990da151c5415df0f57eb4 78d5bf67e31918d40bd073157533dfcb8fc396a68efc9aff6c4a09477416607b 3d1932828db9810ce5b4c5c3cb80b35f662f975f168be10703388179ba71a001 3c2a0c19227fe64b6dc6c65ab218ad9322c56ebe33cae9229d6bb0ba6ec40cb3 37609bdb3bb4d2b36c20528519bbb92b3434a64bc4fa9044efcbb9ea115280cb fd9a24e22158e224bfa5dd4e876b251a63da0a6a8247a057e10835fe86385a65 9f2f1d728175d758137cd372ca966da85295921f1d28ac22a35a807b305d0893 5552c0f9e86c8a0fb0f5fc5c6e99b3b4b1b8c4e1884cb139ac76d7ef0a3d3794 fb604954c2a3ddfedc80a89db5641e265957ae29aa1ee40c34e0962b8deaa55a 0a2fe53a89b1326d105b9722d285107b6b9b6f38e86db0e957b00ef1944f5ec3
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-03-26T11:54:51.929769+00:00 73885651598455470904573108707648094029847024569908 73295290311027724827329157148106619727124900521413 92339583654363335876269285368632562390284377663172 05703997587467258640606835384335466572793024756570 70815095992448276007314550264996529685839260025727 21831341242795574437126178074331953678099499921940 15851303856419923030696556477334714708179571029054 23001587911989772108200934826211343044980899983921 49612925166313959793050732892125351381201849094983 27750928315310757053245386523192664072872567020233 34997019256693756659707804526660479639755338189391 15865479384547450944702002548289655043341891399224 10859404139204794635282844803802012421343735353765 35185032895449681122910353339121786725550382842123 46036910630536342013516320840496075410613817424248 89806770639389220773887175574256965725901283063043 02939458386074293604495492218108079036364724477024 21638789553560779468578130860544023813136757049666 44099672490616845667765113862233643981189804134310 40822451921858774999862648032862841247791273524313 41646545258848979655678763670524846555663503343479 86310242394428106311837959370346775187393648108452 43106905749769487033464351349995176941772147414184 15349279787139160811317865580928712680499091693123 71956362021751220303578892246229032229456566777658 66551644686345065066737348047688025512190735048927 30849133454369230596177356460501829824033251889486 24457890150274104355561938035422900996965083949180 34811982166248223246205744422672482164232519741028 09128939403501960329442638391011525472962886646863
From the PIN diode (digits):
2026-03-26T11:53:24.328806+00:00 39474092504094025399702227927872479417098194577424 09703110422022836915972788809052696383139390955673 39514963525342878359413992727591301335004301183852 45935954485402690604714809304896437914440199628787 89333636829056507358822384083365633534240963523404 06808511503588911833726805516586897417902516870793 38339458261919055359769927692108226011452515009072 49780372309879265560268800964103204372307727329357 65161969898591771280231626805933629321234375458427 22412141134519609463548642617492988556097617460341 94247927321986653061072707584786854655914783046588 20934992073427139759700904706290525372877974812084 33745266269527653211236635091491524099649764200051 88492551370975277940756548539922085682257058355620 28964779104512414761116972927085904085128744817874 21720018282697307982860807126688275633033503208700 60468015699785000100364268110640258072281320472828 64616002221769747609011493119828272110564764472925 95705444194676804001460496834660114798580214202566 39801528980070623836504238010845020103666097644230 28857191557950469700958115662284161029005410964923 91720095366575553916903920849231172656596679099504 79908115567533188236562364666488115001935313618197 65932680209103252411152117514395506642540874097116 22962361255030418529128097952879950247519522390703 56292186136001604212253427750998989078247347349710 90513457077686109612795596555980790832823325878543 52526675964468851782285436338836916578350737269910 06307160870853345690015947291429178819241450096882 49463129407234639028234893084785829208381576921053
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.