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-19T02:12:24.473974+00:00 d9468f9ea5777579b93ded8ac0cf72a32e561c8f3201910d1443590ba78d498f 7837b86a117aaf85089ee75bfe355a9497fd152c69c5c63253c3938b2954d73e ed02fe38e07864c5f5afd1af8df76e7bb8ba65eb973739b5f538ca5cec872d2c 856cae272225cbea25972d71063bc32862c2d889e5d1aea0ceee46f78181ed0d b33eacb4f8f45a938357ed7a03fb120fc911ab0091f65214444dcc368b49bc8a fd894070ee1a2d318744df0b41bdd4602db73b8f01892971639a79e56d82314e 6978387ee5596b33a59bdf51863c3f6c0f332d0d08bbc603824112d593c29980 f5c355385e6c15f3a698eb56e7536e2c680153dd98b0a6fc18402e9b4db2bcac 106c4ab4c895ba754ca3859835d8828e5b773266dcf12ea152ad5d10b7d4342c 7b59151def5051ef4fe0ee34e333b5221e7168bb7de00a755eb489efc1cd5413 acd293d27386fa3868e9c94dbe44898801078aff03274a3f79fa45f32401c109 10ef92f3c1cbbbe85d22f2b13f5c448b6d4a1f9bb8a2d38bc499ca7bcc8fe2da 3baae5990e0cb2ccdef3609b6be6c08a4cb5ed3e6a4a4496a141957ed04d9fe6 4cfd6b8b36ad67b3280bd3af0bc48e8a913260d0a592c9c0f65996625c8d0d95 5bbfe11a3e171a54edc8229445edce7cf98f016cf423fb2a54a4198701d70cb2 54ef0926dc1194bd247237eb2fd867870279d42bb47b62cd202457134b47b63e ecaf7008e26e774cef0274ae7001a2ca4267d409276fc63679dd4677bf9c5802 23fb91efae987e68c1773670ef21bb7afe7c44d93d5c8ddf593ec00114da6a9d 1de021dd0f1932435dbfcc881caa8807f3761bead4b4de98c5166f67af02dcec 0799eb07933b18de38d9f81ef959d366525e2dc97b1c0562cb002dc4ecfa5344 090a568df6c064c281cb5e984fc03709830baabecd6b4706c30980fd4791073c 1145503c9b279d15c2a1c70fe594b396134a64fc3d3af530a204ce1af7f938ee 41542f860af9b367e542ed2168db45a0c9789ca8de2ef9b4ee18735ae0545c64 6a50f301640b59c602615631a067b7b9cdc8f5c4c8ace02d97f7f0a4ef7fe064 6e08a2b6cd8851d14ab9a58bae74daec890d1996561b24327e71fb0f84ac63c9 f9376b0288d353821d96508f0af19a6e507c92868515964b1a70cf6bdcf5a521 001306181e6819937eca9a707754c8d9b3fd873ed5d3724b7693d4b0d159977d 21fed2ee6f00d49eb2b12ea7718902f117e1a2ef1adb926999a539a5f73b5fef fcb7b6703b7d5e369db9dbd971b532ca3723fcf1c7f8ca03d59358c47df8cd65 fb0661af6ccd6dc92e3db3785de4ae1fcdf8be867efd4eb0ebaa54632604970f 70dbedda58af7c01097cb5278d232a9039fba64de08872c3eb69e3dbeef7b369 119cab244db5973e1ddf39823edd8a2916129e66a03afe679f805fb560b53481
From the PIN diode (hex format):
2026-04-19T02:06:28.868750+00:00 9602db65afe132e0767d592dd1b1939e827d1e4542c2a5428fa8f5e2e1dd00f1 70267f3a977f54ef32cd53a783be9f5ba6c087adeda9a6f4fb51cf705b266f7a 30f8387521ca2875f295eca061eb0efaac8ce51ad69e77aaf38dbc6788367593 da3925dfec891f7bda2a14dbfe83af1f73340dd31d65d57939448f9ca91a02d0 795759b8fa653173dbb28de04df966689581a24cdd5ef46e4624d890d5a187b3 44bb3a54453c0943b546b2394a26a4d415e68c3fe98c6ccb39e967c24259bb75 c5471de277a28b8b420c6d6e1ebcd3d930e9bd9cf728083e85aa8ec631d4fa5b c4095ebaecf2589b4513e411cbeb7b64a2a6ad725f95964e1a5d8c36b2bbfbe6 05e093bac0971478b75f2e7a840139c5b14cd8170052b197c1519522a9aa0bbb f7996d43aee9956fb32de485ea1b3620f383906aaf48470325d3d5ecaa5de707 24ad0f73d4674048c139beb92a88ffee049e983d7d0655906ca9e07342c0a0ef 377be9b5ccdc21f4f1317f5e397b9ed79d3e886c510e18b399da8f0c47eda178 191fa571c358fb0561137233bdb1468b4324064207f39d221af606c09b21a6c0 23b18efdba6a6c6ece3b1736511218e16823055756c75d94c90553bb07f6a16a 82d1ab573d86d5d4db6ead56223725cbf3838210810ab6ab0e8ccbd616b9f7b8 8045204310f24185dc376c2f73f862668c878333ce78c1e85c640ca7bbdced1a ad9518d3979d3fad323dbae8bbbf25f2672c23a63d1db3a9833d5eb4b42697ae e7c4dde6bc11125d3ae4cb38572e49abb9539ab6765014315d02aa5880e78317 1518e1523cc0b944de60e660cc8042be22a689947471a8a81b22ae3075196743 5dc55c8d2f0b236f2d224e43212a26fe1a2deb8d6cc38c41df3a229ba0c843e9 1b8f58f26d9f30563b81710f19393ed7186794e57e9eeecf0402343db9d5ce09 d871d8cace6d83f3d37a6c1249fc7655c540c1e18ddb0a519d3effcc6ddcbe59 8fc9e02ed196c4359185e23dfb1e5c133d26248729f1a74cbd4c9fba97894f1a 8ec381e3f525941d9b1894b8ae7517bca94d67513e8e35987665e4c1f2d37834 73a8053dbc519dc5f556102920033e807f63c3d224199f710cc4d2a486f29984 cea72dedb63e5223ba2928a8874aa93c32b7c41a40c54b83a80839286568610e 0a0b7b327b885af623bbbd68c5dfddcbebe4c4ba8af91557b7a47b602af0c0a5 18ac5d61dff5d4a6459b8d553a187caf27fd40edd3225c5f1c151cdbf1c432f7 5f1fe87ae785e3ea7b45e2029f76912f37bdf019d62bd26ce5ef190fbdb70167 891c554644bd3707b39cf23fa6fadb5c022be5c013479faff04a63a41c28d2be 0541143e3a5a8a7b837dbf6cdbb23faf3e0a568d0fa6431896fd4b370f25d6a7 4e83fee58665014f6fb90d211550758978cd5149f7a555894c16c3179029f9b6
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-19T02:12:24.473974+00:00 70435865191721856138921463468628435001451320678911 67417343205584061722753308589153904851214405979850 83954739418462025620009775754110238486015155578156 92354544330874393437375145130659954098943774607029 29137962728090473187220318151771004582206877543973 88383764122645493568116589964583594301374113995421 09304978052056268907516555813460630815514513088798 03306518479453289585569408216652868310440401835276 66246446557778887216087480498617766333525330429119 50024661827393168352442389212980817952518134301304 87251017948037938419724715345604779068373601073803 39746321693601930916469387933477639268390974315584 62399653234359705314127896550792387681620674685061 65492677597607395473037940117511964238455096654692 89509892411349919126622326843448692443010835428464 25350112788409381748893614554703350221438023983236 87197571826275120810197602167412016266030939119854 21701991568802354574522604931954123387222468619241 89629201200657293315255067939136287036071827805297 22110375020753074759245630890282944523280598004596 83680910864192009429945279925509311170900771069509 28714507601769806055395721946199154879501974006158 48620426566584473410790366330469602056684680241590 84920006800100118998029786496003838596724551642700 10086282368174856539741637132550862736502613153272 99550702368330295080431054108024463433215075261207 65330019062430042547265412198479356214751847768951 25331100587877466713370223622646055365576559958382 12592594545785138150553599034788962501069775080946 61792093743190342678767084993804511512887524010924
From the PIN diode (digits):
2026-04-19T02:06:28.868750+00:00 50020175501825894577475830253069669465664368001238 27585127845083673190599166923573696681129138112248 56173340174960971472402658197041880336541747573737 31234220317531155213290121576843566926022187898401 49157841770204492962769410703644613579688758846960 09678170785774386421406340085703946689871797712919 62393966120910308848895640086233704298499196099486 88556919172300626673149549507826934054788705478692 51202083954622320157977776230082775193814934697011 87530967744911794533275432314406757271033770930736 73151503647293579085423604585261250685440869156692 60552381334927945723585762360881142479534312716120 25316513958805971914518977703967360666075734260692 55336692357742860608105923548118240435058786999348 05838707610630718761341073863455373130162910827114 40228584286932671665335508471598024035315120939200 12678726734924515763735061868791370344356661297969 31619480803851749688171893585687467371858354821880 20499302708828312321248260928568969628669034663748 16136868273474481725036793979241471135114534786733 42382645410895406558345560672743880959488659291315 25576224034826580402526185091309312208187318859764 93411081576209908943465096534533613092196138363541 67768976598651377926429529374829552448847417238869 77038162425352180193205215680561888157978616413203 62282799953625591312966434533267458262823586414068 35746960508396266497753168085740010497141011235023 36903587890497968638218783642396429265247293976669 55418558242475396434929528212896509531223323690259 18454755892543082515898301033728857068895507795663
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.