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-14T21:11:49.783520+00:00 160afa82f662a21adc90e1d3a32e4c16f4855617afcd08a191c8dceb6276e4ea 0660d22421fd6b19461c61d90d97ab47c7d3fed0bd142d2c19b6333a28cd2f1a f4675d246d8dc1d0c218715195425828c06d04119ba1ec642c0ce5c90d8c822c 285b6d853ae69321d23b81ff1024314cfd455914e4d70958ed943b8730477ca0 6f06c32793277138d600f420da01f7354607ca4b2916095b2092b1ceaadabb3a 89f06f5f03fb15dae8037748163c6d5f03dfddf4943f7f23cb445d67bef393c8 bf8cd8a7412a068878568928557a3edfafcdc63a314436fe566cce5426e73ea6 37a5dcf81c27d1f8055b361d67c1230b410a6fbf5c692c95f70cceb9a7bdd4a6 3c3e5de0bad21c60d68cd08f9443a28fb0f58fbae60bee88e6f7d54f2a4907a7 23d40064b245e5bdc46ff3d498edb6746a9ee5d86165961c14054742b7a16660 f4588c5d73dc4ae3b8bdcafc946140801fdfb34681d17271b3faf0b9712bf4f5 4b0605f2e50fd410f2c61f7140b59d4bfbbdd1e257b893566fde0b398bdbbf36 3c6a6e5c043367ce5597560f9cca15668380ee1fbbeffd655b886097b2438ab9 f99c47bae16879ddf5322df8a292c7a90a914dcadd0e93311362999d720512be c8b449b4a47d11e41d4faf82ce44611ae984f946fc01539a0908c0ff3f2e28cb cca60e646a8e1ad08560d58833c70b341bc00799e7bd1c91154d69e17c8d0b1d 76ef0bdb28dd4b8ec56e174ebffdaf97013665c36f470a265c61cd33cd48a11a 8ecebd3e4b345958bb1667248af1664c8dff3a94312ca42e5a529c24ef304eb7 c3fcc23ac18b63424d4ca40549680dee75f45f68ab8da1575ac9faca6c3bf1ba 39fb14c545e259a663203b589e3733c64e7035a73d3fccf80375eb99ffa86251 51cdd27b03166b314d91fad07e93d2ddca94b46480085d85585225b09598fb75 0544f6d3735898be24e6c89df1687a6607a0b98b0a7bbd50cfc03cc2b5887c5c c90e58a086a7bee539bb16e616dd30ee428940d3a738a8929cce0afa1a5e64f0 169ab5a3877d52311b848619c0272f520c2eb3f018e42ee6ee80f793e6c5dcd3 bb1030e2bf6a83a4a21f253eb50b056d2672d9b184f843bdc81bb10adf641b49 fb463668a2ddda46ac3dceddd158ad5dea6a167d21fb3eca2db640b37f5e5802 3fc6087b4efb56a4ec347d240750ccd62a5036304a2355b56a54f28321e69a6c c029585747e1f0db269d88946219c62e3eddf3ce00088ef7e3a3cb304d33baaa 8d0f7b6bda54ef38d769bb81cc086b573fcbf509815ce3a36baeee88841ba3cc dced96e3ff8a1bd6a9a0bc44e749017fa506a0d031d876ac18f88961460a4bb3 1f9c142966501441c326df4fdeb1ca811d7c73d5e02722d77852ad45c7974205 73ca694f97bdd421d40cd672d099449535631996e29ecd5550913d4fa9f4f793
From the PIN diode (hex format):
2026-05-14T21:05:07.381879+00:00 71d6b2381324a0df69c9469d1b406eca6c49b2d9d21118523cc73b1e7fad216c d8f913b71c1e4003a92386fae92a94077c1e976cfd8e99e18885b9510234107c 0bc1b6f0ed0ebc1152872c5ca171fbae7b91bd23a591000e1601a4e5b3c04ee7 a76bd520d1ef9fef0b48b7734da82532cd8c5a4b9c38570d3d2643bddbeccb4c 629b44ee81793fb1e38f3f470db7eb29529295d5fb3f20e22895035acafc471f ec8964945dc80ac10d0724816d6e1b4304d93e8ac9265aa3f4bfed4217bcedea ba646374f939e1f07d2fb09525f3f4244f7cb3c33353c86a495a1972514d6c0e 2daf82cdb991b37a6330e29aedc91bf94b14e1887caa0e1a84f3204923e0ad8c 8a9e04d50c6d1c31d89a5ceb5e2edfc7d3406dea668f5be6fe87d5eaab5921df 1c70ca459c073cd4d896229a9c6b5dc64f82ee96bf2d6fee2c56c2f4ad0c18d0 e4166a9aa1513d4f4d36a4f918e0c5516487dd020ca51dc1732ff3498a2b19a7 93c42d2807a42ab39dbfe624e5200e499bc572adbb84ac8ed19dbb89159846f7 bc04351693284ecbee11c5b13af0eb816e331744400afa1052b50aa093a2760d 89f42932c9b03a21f9342376c3437c816d9a5a9393ad7062de19579b6973bc48 13573bac771151a911dabf0342596e30c285de929ffebcc449cd544893ee9485 e7aae5ea3a3d7121e93345cabe621801ef520fea04156ce983be2762dfb59863 dfa2a1354a47bdcdef65aef8453369c9aa5d4241332029e20f5b164dc8c49d00 c5388d54c754327a0e5f9ab5f7ec5ff30f091ff1518825b51bae93312c47ec21 76ede9f08fd0d07337657b2d1903ebd8b5f90b645787eaa89d392f3a425a9e22 685b4a36b83d0fa5febd7b8109042adcc9d85189b1f9e958ae5552131da3e8f2 efdc9634930c79276555a0e744b7e69abf5b1412ed84f2de6875fbc8324373a3 4d4bcf24ceef35e443f3e06ed8ca507826a2fc881e1e46a32c61891d4ed1ff5a 5a61df1ee75c90bbbebd7a59a9564598f8fc8208f6c1c186b37bcc71340818d9 2b5a98001c48889dcc356a641620ae8148e7dc8981dbf081d8a2a28859acd768 8a39fef5b6a1e4bbc1abe4c2b384c50b4e1ffbda18edf66f32a68e819e1d1b12 6a75ffc0f39f631b884b47e4740319fe98c31ed275e5a281c4e6683d7331cf57 ff8609d53541465155e8c60e413e3ca99b4007675acd92754cabbb3f5c745ce6 ae522cb7b43351a7562d98344b00d3a7c1c8dabc5720ed9cc2558a8d97d6c2c0 9fbdc83728ec53827814c904ad44908e4ca7496c5f333f1fb2bd9cc433c669ae a2860819b43654073e08cf7ced1a8651a9730a4dd8ccef7ff7662647833d85d1 8c037af4579a5ee2d0e9c912a73a5b28fde9df9c520300a353ce54e59749c10d 028418bf0770c67726d3de8eaf749ee661f9e97cd94ad66b67943b9ca2def27f
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-14T21:11:49.783520+00:00 22103098622644634676223386237508614598180696363307 25702897135171719989204544258251584047260393360941 93942413814966884092090417556100441213403044409109 33584733592916364976698920098848593548712460110695 39473913560032015370077541220991324677708758371195 03210319722260099503486327356893039047914067654206 36208637408522627598584968548608843862665565283905 91542903933511651011919205444912856789666062938628 96404348676243764386113679427307673500007869899611 52821606589701502820057166836102968840931574848948 97642831797029141379851343750605151698311364815775 89878447861111573991546006109204510385518615562102 31283187019136965178673885567186042150456246996910 45771447491998535714051890807380642517297975306897 26327001835409089263464066140006422633963651991152 27920753892845217705244111291811407542971023789175 51015401951171103892975172612642896275528988872203 36380276415848494464469082563648788395945893399966 77766405730413179504714161879008598657209769896699 32598858555198781253676163031753689881812303220749 77452647488000280893338882377649521705681588529036 57042202076085391023898092609481362492148860346790 57872222486637646756684656102694002254816335258249 27323425923947821246792446284797871648910631646231 37628111050938147732678927771000277370540462707261 88739306222533624582647927948802639808237886645225 36078042805448743585810684313354089241888771385736 48982598466200084263487751867041152307845605872908 07876309299263077436322763503827696088687301276506 60491872243797701075793156204102802065953879772929
From the PIN diode (digits):
2026-05-14T21:05:07.381879+00:00 13785619366005705727641008737817248260995930277333 08198328306403693534424807243051084253363385810252 16241193821488178235449261137423458935654500142201 64799278670732591172831577683750409075565687136138 67897698556829216377436371138341824649633240490390 71313700489310931307362909102767046238389063916623 88860099165725477649373679247995518306739025148177 08144575308545792299485427752036247014263232733573 40385804120928495492944699640902439135718933281269 56076050345456079398793050914511448694731224220654 61816179775464249781003502126529931547733843256747 96454007644279579136321473559714738732724257873721 52708804532247407817977758291051236864101682811060 47621813374150765833523518956724290954904747731298 25875505158872198759721917816917910366891048943346 59889673847247483370586113335169909824018215042108 31903998815299626153747189017469510570936665513241 15912277965700975641849984502214955481951509318136 37812774474944713318431555012345250381110087356857 57475866905834049174548461156589232909044281377788 74858219296350524712213901856068835491912018320417 50671563777536536710802038623630307063449737297890 90973092448790892289698669523008939334792313520824 43905200287236575306002232742972372929626236897204 38578261879371947932971178312411506642295829271806 17925999273675711603255295301762299604611549873409 53657081859814656260695564070390461776718763921692 74824483805181678645525275006793888732569485384151 94925989554083302020047368444276677308955163317889 56965198057462340825805484076208242634816915107727
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.