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-05-27T18:52:41.154556+00:00 e1242d57257c486f3118d48d95d86219dba1a23034fc2d9e6f1b9f2fbbacf996 7da19ab2703a48ed3654bf5fdb9cd2d778c462025013e33dd1ee496a248bbf38 71dc18c83b2199b346e29d97784513624f02a78d61d7b1de0fcc20f74b580f7f 1c36b145364dfc48f80c0ad8d1b5f610e4e518275fa37afebd2c3ba29d91efa2 ce8961bc17b0a899eb37fcda802de6a5ffca59cf854a9c2f0c069c94a105204e ac4dae421dbdaa793001421e57fe0ed6255eba4a1006063743fde92e4032acea 1b49b11905f92e5d5ca57f2756b1ba6581284e81a596bce198c6f458a7c31121 a9480b537c98527d7908cbb4f7b1ef334a82fb5861899590ee4ce9e2d6fbc8c4 5456d7291e1cf58bbec9d7e4abed41583061216f7606066ed5cd07260ccb471a 85ece94dc6d5882c0b46f73446669d77260725e18c2bdeac9999adedb1cd54b0 d5b944153c4971022a8e1f5e4091dfc174ae43722eafc0a2a6bd1efb0cf2ca50 1e6576374403a815bbd9ba5163e4c124d71f4f5aca7d57bcb8648f63d85446f9 d4a83db9907576ec50c5fa36304eff4b6b62f3f28c2db3932006fd97d495e02c 9c1f4966727b7cd795032c3cc5201d64d91ef89b0027de5987dc8d9b47f5d6ee be29b12148a11832aaa2068459e58bba14ce69e64c888bed61e0d240ff048704 48fbdba41c077b3ccbbe827a102cbbeddb2e353e8c03cf13f4d6d630d989f66a 84724cd03d2285836b61197c2004b500154316c0603c514e8cd5d423ee3f66de dcfb23830ddf69938eda90f419dea98c21c69cf17bdb062fa9fa08cb124c52a5 e0967072bb562bbb5a67c4b90e2885268e5b894ff78d5e45810ee109fba2df22 d0ab300e13ffdbb423db8d817eaa5d2a956485fcb1dd240475ab8edffa642a52 a3eb19b32547f1a291f74ec01d1b2bb81dc3a6971f138b032ebae707cb4edc51 3ae6dc34e0981be46c34570df736d78c8f72b3d8e4fea26e87b40a5f907dede1 978a50e5a7faa0b22b00b2e64a4287735c9b1fd6df065ee895522c1f0319aa93 dc4032d9747bd1e6f128f74b7eb12278da61bc80123e10c2b04020713323da0c 13be243b5cdfdb4d954624e8dd4221954bacb1838ce34ad98d9b59f62807b8c7 46cccd29e0988279c598bde209000fb4edb99b4e651861231450832ab7392438 07a4922ea098dd3e1704e95f038185dfb209899b79b3095bb463a3172cc1e6de c95f4301b70636696499051c9a26368a0741af9244443c5dbff8df741dd52ed9 c2a4f0cd21a9cf0eae0b8d15683a8b0a22013ca2f738ca2c3fd2786f7ff332b0 b56c404e45bc6f86c1d8a33f58a1a315bdf0122f88786d799709fcbac39350b0 37d1aeea5e5cf5605eb2683e0509b3778627144b704135ba2c89a3c5c73e7eaa 6f15d295e08cc2b75a302db3037b7769403c56a272fff2f76a9b954282e51911
From the PIN diode (hex format):
2026-05-27T18:46:17.152123+00:00 471810ecf6f0469009920c7200c28ff2d37883b26033a220a1865677f44f0f28 19d08ed7650c07d4d53401d7406108a25d057b20e2ac7093d0bcdad07dbe36c7 6a2696c6494735ff2137aee922c84941e6a1756c7ec825f12948e956e08c9e8c fd0d4937a4b2fe3d37f507e05d34b36d6c303b6338ca63afe3e6c79c93340e0c f589dd95ec8f9d70dd1b2e81e8193365126c0dbf15ec65c062e7db340db369c2 a1453b0dcc1dfc7c4545222859f7920f06ae8df84461ed5960ac261fe31c85f4 90979938897f12e070b1494507189d4a651fd726d04379f12681f0180820fd70 04912bd8c8ebe6f65636de70dbad603adda054127280c51f4d4c22fa185b7d8a 377645678e8a6fcd3196de372947a367f4ecde970d9314cb0bcace14888a3e67 f9d738024b2c4c825586595b291c5ff8d688182be59361ae1804d12282b1e99d 644752500e6c99f1a1156b9574572edef77380ccc4de79fffa1039d7847cfe98 875aa37a0cedc95d4502bbed50a08692bfbbc5589ff19ba6118bb567c78c7d89 2a52dc39510b6748290cbb311d62385ca3132b0569caebc38ec77f8b8bb41ff6 9f7bfffb0515c9382c3a1f8f4eaf5e769ce87ceec9d953e5c15995c96f8cdb83 87d6a6e47ff8f1556d6a1ada507ccdef1343563ffbe4292411735fed2465318d 36342d9042bcec50857cb1883a8b4d16f156d0b56b89a744f2ed22a68ed2429c c1e3bb6823f7fb88ac6fc291b089a77e9430d3fa53fb5d26ae4f71c4ce971abe 68b1d4d05a16cf45e9fa53b701e4d957d7c7de400c05ce7c324642eab371cc95 90b39a202eed55becaeb192cd69f63a540fb31cff80c54dca4c2a1bb969bf810 48f21483d19239129dd441787c02f066c61075f1a88a9e89257e47c069075de5 019a127fa6e67b68ca43199cc668a7c1946c2bc4ed3e19b1e63a2404d9ec2fa4 b27490a5753d287680e309998d55bb2d25ac6e9b850778a51e4879095dc02512 4281949da2781849c956c78949134b8ac5e605d3811ac6d5568cd68a1003ad44 e0f6c42a670c997cb8e9edcf51909eee6a3c87c91122b310f94dce7ed4faceec f98a57d6835d0adb84a12933d9d610b5c7f0cd0e7062d358bacfbe7a95d20065 38b65c474053dc80e80e56422c3103b7d42af0787f59e33e0105da0a459d6d2b f38d840fcf4a00e11f5f91c3d44b85277b5e55a25a00967f50b516c98199337a 4aa128e7d356d80398d8e5a1ca955b6c7f5373b856920928b7dcd5d6f546181c f55ac7103d9adc6e4656f60f2bb6a65a46c382b2c57682d8de5962db65317421 81e6f03118c63a979f6ee00a46cbfede35a249768e3bae90747e8ae9cb2482a1 0bad30e060e543be6c092d402e30a901941161ad093e806b7dc802127d59c9f8 b1cc1df76cda73632746950655ae733775d47abc5e52142182e15fbc30144157
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-05-27T18:52:41.154556+00:00 36458737247211492441499825616248524558112759478772 50256154781258725484919556209698028019617306363991 56132459335379705751206919987902674197771532758815 27285477695477721210811624399563228944596257456237 97882376685355284565893374564712065648610532787277 74662989702148016630871437948674160606556746645072 27737725054693926527398677860129407829655088529888 67951733697211832452822521088077517430889737494476 96848641302839907165884897331118060610073812712633 77983644117052700257193807374043725353737784768568 21607313024242319464459316746714467592626689301280 30011855680368218786819993363179902587888400439984 70686185441718809754487875079840457947320651494456 31730214232449034460973229003055003989354155719041 77337261245070620632893986200576363997640435047264 28072360903022164487465362400319483706321476613433 31079725243204810021672292966081784035630235311305 47424425694033985623064769081876826550121487864387 90039685144033384291377941946929140962347148141980 35412926709342490033773604177142004282632579377162 45789229274384299566513119390346860778815852522708 52871354404314796210358010954425513880676078430078 74663515925531069449824431032570476450162340752677 34209788281862169476643213513512199036599277497036 66334975727731407441558940078499704152302197528909 00158085557801249735208031428357365607644646605262 23049503293378093755217909918099632344939567018306 54050053052854385438076575466868609391162946946433 69147411412104583910340160625644632011275076810864 78698811349363638861632189184736200921510986954780
From the PIN diode (digits):
2026-05-27T18:46:17.152123+00:00 71241670440946121400944320317896516232613486197915 40254201120752016497086293052332721247882590549906 38509873715333557434736561170826374172864058401373 55647861550793527909084859995699759956475214123749 43571227462925510118081391210192985213790594616959 13292469693440894615067441689789967238312833445153 56372718127773690724577401313867213829240832120445 43865412739658608418142897317776342491253855186903 42381149505541716303511347201120363862035602754476 30853489914128953624434797742404343077570071828014 08536121074916874615289621165732245235906322129369 02878060344691879788595566173981039940253742825781 11037241128749299856926319430505954299273939803159 23052156445831437875941856248393894911403135662785 09062680241967866341361715953601494154524544668880 33247736583977228681073767683466426656938704353672 11944576376726484883933874791396512690047790226983 83018799641205245070667913494479543246859025445999 65644912846494618750551672203146571857652024020298 16176838583737267192050793015418276623046725569804 67934808439662257758360447647816446517614018280953 41858745377210553307206530722109939237186629485762 20247386993773197538970529269886403816037368964203 12532484814458066035173479167726388731931032614151 16819914129888869022490001568292716483281486664449 03834220278962010510695709434132157400319545957533 39239485629000502780812229535122746140860352614991 08278315848646094083702428909916615410708615438266 90709530789718308998014916332949249858515910107053 62731842597444162638363061117348966790080945644648
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.