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-08-11T14:38:00.619124+00:00 8cc533f5fa339cc4011a78d18fadec140e9f5df585530bc5188ab6658c70855b a799b2335a58de9d2deabbf09363b339b77802d31fee7c2ef36216a7021b0b4a 1683199b5af27d64d42465e8c91131d649930b14eb83469b0e81260c41098fe5 a91157c21b1670ead51c6243c4a8dd6238d8490118a920cbdc4213a5868d2a12 fb1723f97ae1676cfe977c55ccd433fc0b9d190d40c7d749cd79aa84ab8299a3 8e13bf843e6c5c5f2ee03bd4f905a7a322f8750af0f2f75b2eaef843a3e033e1 6586f35224094efb36c463146ebf3c9b5afbbe1136319128c128dcf42f17e041 f6f998c0d3a2863e2aa255045d8e7bdfe1b64c48259b4f6e3096c1d9f487824b 40442a331802db2ddf01d40d29688337506a9fc8f93e4a3ff15c7fd5ddb3234c a7b778b6785e194c9e435a593309268911d1d9257e4ba6c1634999bf89c41a71 816e3b9a7a14af5797ab1634286ea39f6f9e2e4420dcd1c724bebc536002a9d6 32ad6e3ef099459a2ac7e7995c0d434e2b8b5fd1176ee658b1bdeb68bdd59c95 7021cd5a64fe61fc460ccaaf276646f54e1cc65068cd8864dd0b48f65b1b6b62 6b7ff4ff5cbbb701d5f597e2d2d3dfa46309517ffddefcc1d127f0ebb51f2b1b 653d3c11d405ac6e7aa84b34a601d5d8a17922ce60635e7f25554785dff44f63 b8066c78213dd6e09f80a7d55e518ae25f32ef77e0b070527e6c715a5490c45c 5f8569bfa1a6fa8c9a8782b2ab55f2c50065f51a062c49dea046d871ef997dab 26b4c329312178a7945a7793674eb72fa9369e8e57e6f15f0414a78ec7dadaa3 b1f70c83a198b11aebc835bb50dea461172610462f4a930ed0020f21c953166a b8a96873e18ed7d6d8003ec0476a35cd402c37dca13294a918fba6bb2a7cad44 23263e9b04fba66848f6ef581e86b6e1185fe6a44860b7ffa852c8426bbdb070 fc5655baa8cfd823b26af4ff7c2d9b0619c7ddd000a86a5688be8be836e916e9 2af39f5b8497cdcfe2613e24753658d63d35447d82f356bdb0c1b8125dfaf44b a59e7a275d214963181291ef2f3045785cd87756e53f80010dd99b98da1f8acb d3fc340e6dd9bcdf0775505c11a1b52b8addad7d486858b40b3bcc1603d35f37 3e52d1452074f969d668360366a5eebbf76561a6a888c56b8f1344a9d7181b25 38918ebcfc98b999394ac040d7a9bd367ad39cba7fd7ac6a91918a54ba584fe8 9ea97234c596ba665b9d680369b8010e2fa6bc1499dae7fec760290f58bfed10 1dfca67ffef5b1f845d9bc07916efe0fb7d88f22d4bdaa282da68572c362b79c 50ad032b337e271ad263807d18317a74c6b656461bb3d7a76d6abacf1509e2b8 dfed96ccc4e9f3d91bfec79d2d23326345ef84a1f95eeba5268febabae5e631e 8bbc15ea5cf7936ccec1da6a06900182c88e438936718cd05a516931c2c017a7
From the PIN diode (hex format):
2026-08-11T14:32:26.217677+00:00 0322c43516ab3f3f3810fac85d5ed19fcefae33cd91a0963b4b37c4d4152cca0 c9a52569c32bd61b6b70f32019f0a4bd87bd27da011d23c415cf7d2c737ba976 cf431ac16be9f2bf93d16acc0bfd9d0b1d256008410b18e616a1038b7fa3242b f06ea3f08bd12966c291c2c3e9d08e4261509264af8004505097daade6464914 c4155622e92d6ab5aa5bf2e75f14d383b5e45de669bdc37c60bbfd18c8f69c02 a43c7a07e4e04d89a9d19a0b8fdac29ab4dfd466c4984cd6444c8245175a4d74 b15afedb9ca8214a38e9a707bda43d8a61cb20a92390f9bfa5b399f89fd62b53 317c2adba06e2ac93f0af8af7da6dd85f7b6149c5007693d79ec9874cdb09bfa 8f037eacd21eec8b66137aa4b74a5eeb1e79ec77d973b6213190d7221a368d8e 96be9342319f90ed9c1905210e8592d0c6820a54360f7e4c1eb6c0b6dffd4df7 d132997b043e25696f67a65911c70809a52e8ed1cfc793532f5ad53b67e9657a d21c1d85faffba98e9eb88ca8792cd5b261494f3bca6bd8f11e5665158956b59 11a06028a0a7e9fbf6aeedc6c355427ecd274d8f2c930b8962f1d8d981550979 a5c1565407e3f9a78c5a4453f45bfc8c628a46aaec9e5705266ba7f95a5b030f e388acad485facee397896cac2d97c0010c2d0d9c181222706612742c3e4135d 4e2f101c39429fffdb7d198429f68d6c502f838d48ac90d67c96d29813f84893 3630986d99b0ba4f8a18d91bcd444e41923c31e771ea8f9a9be546ec0b3fee4d f6547612a283a13bdf2fdacf1dd10aaa9d0a42a0ada2ffe7bb4a15df172b10f4 763f7d4899dbb56e574b5a4a921f3066c43b9a0905a7887f4bf460ffd9cc2438 e107472bb17f4c35210e4491aef5ae6b475cc51f3894b45d6d204f21f273647a c2df75adc1986688cd6d3b261b9a789567e6e930e2fb28b51dcb9996a3e47bb4 a8a2376c2dbe55121ead6ed0bbeb9bbbe7bae6ebf0e60e04e7a0e1c5f54ed260 1bdb38bce6555404865868dcdcf3ac262049fb1750ab59cbeb5c220c6eec1f13 ba153ca0fae4f0ecfb843d1b74d0c8a95e307d2cb4f3d1d39125e736b8b3eb51 c8e4f71d463417e9cf148a71530dcfce3918d12d53d4ce079a27f64c344e0398 9c92bac63d2d8a3361e364f6e7f47b8a6bb7df7a7eff30a1522d6315c3d4929c f6f37ba490508417e64913c8e2a54173f00226d279fd388806fababe33553593 3e437da94fedd76735af69e14edf67f0744de9dd214d9705601ee0fae33f8eda ad7bdaa660fc09fe033fe0f4d4e4738b777f2650d88fe368102175747fc19732 798eae90328b05909419e88b3f3b45a0f0c2114a610af931443bf77a3f96eca0 763a7269bcb9f4e499f8b0f0e4bc10c7b1c391b58ee9586e32e8d8d028f2b4c7 58f48572dca7d73418a18de308925590e2ff55d426dc39d55027d2e9c1d41e82
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-08-11T14:38:00.619124+00:00 40975151569601262043732014599333831197243882014012 33916753785190885745874799795783200231244698226702 27117422312555902500360117497347112031705514293812 65094369178794272212289867966898567301246932661965 34414218233522030851248551115725136499732170327130 53634219913262089295465905676334171091467467635101 34823609785496992010916055909017544945409340472365 52926234624262850493422382767237557910485093353075 64684251240245011341043155800659627463922779357667 83208220942576586790895109383717372675669399735391 37962613291059542220758751712252401063591158466832 99369088839602695073106253695442995392136778433995 23108877890489564912339000977012753902707828988004 36001172912707980727928783015164990981279339813143 27016160170572102268755266016121349699942737857133 79998406082033615928679481389550197612822608139084 44969295330591616640543530787185970001260644736070 13532571388095414933206748901947037883476954584287 95042067429963771231615277265387806497233816704774 47140215338322068469041542006292710653644455615048 69246687422473683538625504660472883034822495647296 83688266078976128685866835780624455506259900680686 36903954224259913251976236175488615368253086897693 84189375655822399333739924184547486920921986632801 13555231385214098807178092176181433873257204888011 59220395556282693216050454030265870197666836970743 19686924273756454288528553577492646989542256862772 06454538848688795869145297508602915704030584011447 66882053999641158891162966277769880745101583433489 70404566331495988356807303435126392699282524492216
From the PIN diode (digits):
2026-08-11T14:32:26.217677+00:00 03349653227163635616939459602609998079247765826065 37059543270712322564893589390129359621254415236918 67269307914706115711293796086511242261033927633643 10633941029445949542669780460075280480805173707320 96218634450681709195203181930589952496872456026460 22077737695411439454800296527668763069239077167790 56683374566707896461389732693544916579535943834924 42601042631075256633822056800705612152167655430326 72303902192264837494302119158233494434265441425090 47664959445625053314334698301084541526763082928277 50532304623705110366891799080965464299478347905903 01222829338652363546913820488866894317028188490789 17609640606774989585662639774344471137982985092165 93868407674090688391409838707058870538076790910315 36727372957257205094240016949329343906973966951993 78471628576659252532414108804731417272442450521972 47544852095376867938242768786546604913435455701163 77841818623161594729107057106660736287742123431618 63257253811087759074463148029659540905673627759636 56077143772776533314684574740771929731564880930932 79331500229417739352023609593827542049034840812953 50632380686255084590851830731087558786140460977896 27568885840434880472383273238071899234121031198621 60603261271669944825448045375484798129705223203813 83135724458307543976527803525646869861453851970023 38078322264861824599219546562364448032237319656515 02382156360686905185534762672569790353750578031677 33775105963063427323669609036315391927388043041633 17162793515021427444503905444825396359696094177497 10496859226350601858140588855376881699779545814288
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.