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):
2025-06-17T14:01:21.873267+00:00 f360e1d10d09bfae6fc1ceeb34c99b806d8e89395815a6dc14e4b2524af61b98 5ccc92ce21bd9a307b97719068f83762c74c436178fedb95d80fecc4e54bb1ea 9255c05b9cf897512df913ab10bb67768a2f69d5e4638b616283e159b29d2436 538e4e3dce7df6fdad43f83aae125b35f3b66c51fdfccad2be876fccbf84bdf3 6f6cec51d682aa960a7319e48404e9dd20ef661be8cd9e70db2741d822cd1f47 67f6e335169b8b514f79bf963520a9117384c304af61915190db65ee651e6411 35751ada2b0c6603563e265d5459c7a4b6c9f79fcbce7ad49723be7fc0ec00b1 30bd624dd11fa31f74898b545b86fba63dd4e73472528448e76f47f7051f4ca7 3785a7b082aeb9ce53be83bfe870d94faf60ea2aae0b94dcb7040619b39d3d06 67143a930611ec472bec58f67a8c75507373b146f9cedb0582336ddb621fa0b0 31322c72d151a54e3d2dc9d25064226006a0bc25221fdbb9434254b1390f3717 292e53a280aa731127e4beca65383d3251f80e69eda1489a7d6d7d00297b8f42 0e74b1d28fb79937f2e72b6d3bb48d97a62ee5bcf826023aadb43388731374b9 2514db7c62507d86feaf2f3279661ae403a3868a8f48e4cb7d1f11303de6b053 a4c458be5ca01521613c5efee3e527310c1b739616053f86c75513f421400aec cca7e84d5866ec247fe92ff522a58bbfbea19de02afbfecb862f8c3d31f0a676 b772e28053e6c72f70c4e5e0e65c1d4f99abdfdfd23fc3275549f56fe43d96fc 4b69d3f9a2469668d8e2041ba8c586738cc36139c0f5d6c7215366b2f68cb60c 6484ba926ae83f0d36bb87c45d6a372568700962194e66c6953bb97812161658 e05e0b934bb9674399785012617c2f6309cb7c92f743547261230c0de4aa2096 caed23b5b9444bee479dd87ed7f3ebf9ca8185f1527b088c9131190b046671d4 4f372f0b5c70e0b69285d98c11232dfd5a5a1dd990acb77c230dd93e936e62bc 01c56438476c2a4b091ab6808cd725b75ee7f772c539721ee1352792552026e9 9d7904ef848760468b551d10d1c406a70f5bf45fffdec66d4143ee02dd62071e aba089b53e2ac2df9d5dbb3be3ba1fd7d27e71570f4f3a7f57cc184464d9aca2 15aacd43cb8e888779144ceae8f712af08c7728b832ef9d4dcee7dc42482e385 2cad0ee99a721ec581cd75d083fe7ea98d69c4569de16c749b4d3f04d9d9b359 b8950ccb32ed615ae9e3ecc99103326f2cb61d08734efe00188907e476c8c0a5 ba129ad7e77cdfea0d48228cf795c671739e86b8371e8021867503009860f14d 23c7af7a08848cf7ff5bb175a6919415e9d207415cf76c58e39d74fcec344132 6767e6754978a175706dd1bcd0f047ec845ce2031dad3b718f71146b0efd27bc 291b32b935be244b4e4d7f212a1ecfd044827f76c3a9727afc5a911819d03e23
From the PIN diode (hex format):
2025-06-17T14:04:12.073301+00:00 1db2c889fff64a5bd0e53c700e8398be7750836588d3fb4f49829dc127badeb6 24f6f0c16c04e91680238fb1231c53481a40aedecb16ddc950f877e8d0a52e83 de9d209dbf7839b191f95b063306ffd78ff965ef845408eb6327cac76e29e597 3abd8646526703685b64f96d67739e60793404c39a62972d836214d6c10cef4b 94513cbf05bba8308331f5961e8d1b72f9a97938e6112152c139647d1e63cac7 70ab273e14b5b36fda773810179ec3f3c5c851ca9cb80fb66668e648a2f7682e 2e9430ae6aa019081512835ef209c721d7ca8656ad9f30530b4e3ed4d71385cd 647437dded55fa39874c924ba388d564652777e81710a676005c06b0077f6b95 a530d9f54d40b396a7fa4087b617661d6e2df704d171d8b21b75bdaec3371ef8 b5907c763040fe59bbcb731be83cfe93df1dcc33a4b520b1f32c5ac89dcce173 f018cef5e42b618530fc1219863c90289d9a9d26fbaa0d95edcabd21f59d490f ef7bd2e5d80f3ab2b6ff69b6e62495d7f11b0e3620e423039a9c1b9d5de6f37d 65c11cc10113edc0465f45b53faac736d3460f0662ad8d380c3cbf76fcf39f9a 5bf5840b1b1c4a05df56f3bb3104dac7ed3f6d3f0a752a3c7609a43c15204891 4c60c5fbe976cb38af608c399c5524f54f0d00572b4c7f0ff864006b968d7c97 708a8248af75c5fea1b13d0200266bd0e1cde45d5807fcc8a269a62f633269af de4254e29c8c0d7c93aa80ce79f1475510126c8261d80c681f1528fdda4d867c 32b366025ae7809fae1ce6af3ddefbc236131cab7acb5eb41718f31f3a874e59 e1bd843433d8beef1143b45cdd28b0ca8351255573cd18304f1065540de3bc2c ca48d432bff78819eea2e1054ca3472b0efa80d17f2a112f8981dd258d1a80af 90442882b369373ec553627d2dc6cf075481eabd83fc2e1825b5f1d44e05be3d 7d97f6046f039f6f159ef884b3fbf2d580aa905c371b4564f2d82c048e79f2eb 41c4b27dea4e16b9ab71cccaf33fd3e9cc0f84ac6f67b955e9ed59954245e2b0 d34ab05b33d946a91005966eefa88022b99468d5f86b1415ce794ccad1404c31 f70bc0014117d6b3a6007997e8eef734f9a006d24801b31bc1fe775726a6d8c3 98e4ef7a0b8cf82d7c6104c5e2e4e8647ad7eb87981f04112acb950943e6dc9e 48864ae1668c9e008e0e0d13fef2f3c484f876908684b9392541817c0cca442b d273ddd413b9e48532707890fa8cd9073608293509fdce8982d9604c370d85d6 e72341a3652ff28f66bc3713f553fa03abbd0c516bb994983a457d304bc1fdc4 706d990c4cb57c89e26443d4ad0ee4a46afe02d9e00bd61143bb9b098c9b8d4a 046ed9f8abba46502e3030f9fdbd4c16da434ad2ae66caf1f2b076b7c7c72f97 edcfce543caada218cca697468bf210148b115010459a9cd03fbb27b19c46c5b
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):
2025-06-17T14:01:21.873267+00:00 96130991741193525528094237578821662078827427529246 33895448235113440455989976679720491596757746859291 56518145197116870318384705993997983189785736548342 78612573675874189153820881903511913289110881307050 10152532043202275812396534317103532255398179219150 53326917153295047597458144010130001753172643120203 86623893848999648259225135902792007748899877316331 16373984913466615214823272117105317667553367763074 85839031911279759642741148830406257957610603205847 06177143882240178015157770053051099831607649504414 81657861458000349606608837343185676684775715552341 46836228701517399001566150811405617254250925004123 43661416774383535543095980415166468838025873805136 15191685372024988025347547502102260363343843722531 17486176836496889092602133976094394912271550220563 34998519336410677788023627473465399190615742344740 61496618831428839947129692297953716395398573116150 75056270500404276897341540959757929933830278408212 00328646066313548735969306553704120998257802984959 85201822228894114775850367532080189724479909244667 84149735121370325035818568757157262933822308404549 25110402137955471192128246334017354590902944728324 35136247109888019700567108427509268228403783941497 57143053394685323857210432359670398529169606671591 95980965670298073071603781624294579387598631261387 15795827872468007262217067423635212076187508991439 31462596363033447314541430972917312669410596865708 16557763047989844912509790450350114482290815780024 37071892658618542413723440499813155834845530283334 17030052967735997522083240917717664548210765920888
From the PIN diode (digits):
2025-06-17T14:04:12.073301+00:00 29783774916012143152901980310136797330579339868236 93080422283543773528837226647422801965463157325791 20577745910651064301328408993999104151588934708203 03049100090315589621520495549851453198209312754881 60910587684831495030412714692156173382935700253099 99127139622081791119561623589597815684158202047262 04464648487406602508211831940999333486735948831178 62193300165585573576467563360001391923166618009206 76072707496548776479506764358223022910450413782717 89749555308144241848648987152760472951648132774490 57152443973348182534604440575457387013498933577315 23155878820582364927145432350354562757932501932893 01199270956981637099547015069873415612609118595491 32112728740586874904996309631017426018096460213272 45769697185675964057568536791300874376271500000750 41245112383072751797617761020038079388076205664799 50057566845640132447702821718516180830971204312140 77342450790202902859742875619454192871229480232431 58357889893252519017678092407631813785152448791601 84138844725091362562057663714314282742174737293741 26287544684030790555629783982545980784298931462437 81780590612551041103591121583279287044925527690044 04422165967825782285711363153272110385858949666976 74769151706916055010682834854804072021217664764911 92016523796600215152600672017927931987386695522211 40452497049700223552310417424909675872347402405800 42141319963218443432855737652924126843151985335012 20444007540841530937309676551333356563014743028855 19830371891281078548525869254875939612095312768124 37006773146406021117678755094055417404107186708046
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.