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-19T00:12:43.229368+00:00 5b93e4756d1507819ec1cc6120ec9d2fcaebf8b7b0ded1174a5d861e3aed0f45 524d48e63a8bb8172f42099e50aadf6721bf30eeb6f75c3332ec640a43bcaf0e 47a1855ef2353bf58c821a02f528bac281543fa4ae10a7c371c5f51a9623a4b6 b13f367b9239e14db3914d9fe4ecfb580dbb32f4153356bf28e0fe479534677d 38ea7241d59f6a3c9bf157b916dca6e7fc261c0ffedb21ce47e66aa651080b3c 187d0c9f5af6cc5ba0a600847b9b99d8a16cdc07aa5d4e8ef90f977d24afdba3 8b9b9dc7ebd3b3cfd1ad6bc3a414ec6dcf5f00d1fea91e4b033d6c2861b7a9e7 15cfcd8b9377b5313d3ef6cd04bafa30eb6722355c0e6b05f5c13b03b2ffe58e 3bb91804221efec30dcb43ffc674982a488dc38114ee8b36043662d5ef06c9e0 4b6fb443cc7274bb0cc32e0e88d9673df9f72af38068259d5fab4a6f2bc0e757 145e7ab85feeb93d87153d623c1902b05a397745b7d66f0335404c2b9b10b637 b9258a4e2b3c47dbe9940d36ebf0e7b138e3b466e188dbac7386de3505658659 fb483c257d47ea5cf552bd3ccf093e03d6f56946c19429f94e9edef0b0da616e 35857cd4bde051469d5fe230b5dc7d327ff24b95d0b72a4279a31d909c4f04dd f12673c21b95a567ba6d9bfde5b9c91d868f99bd2c59a082dd513bb8481ad780 b0f17cbba37696cb6838ce888dedb1c446c339db8eff4d88cf664764a3a818ae a397595597bf7b4534d73e4b17046cb339235c8cd5591de09db2c5b430bb1c15 d981eb5ace3af5ced039272e310b5b39682465cd25509f6d420098d28e003755 4b12e026acec5504bde0c509cf6b9de1198ecaa21a5778ca3da5425528b7858d 7caf2b46a0807a65978a64dba7a3d5a622670c633b6c8d0740eb3bc1a81862a9 f7784dd4d63f04faa5983416bf1b3c0e478de9cf04d9c6b8435a092c76c1f3a7 66d10632c795e35c90f529412799b82f3bbcdb663294eae3c6a27f7f0fa1ea51 b115c837cb8400844a16114df7ee3096fd7d6f8c950f02780eb87753848c3af9 51cc8adb39168e6ab1c0a2cb74314fa2c9e263675af125889d088faa36214c6b cf9852c6f31976522024d0bb90d5921a8a5351f1704e84c0f624f60c63d447e5 5491406905a3280fde0604963fbb7eea889d994841398c7bb2ac30f00e2b9092 fbebe407366e6c01a93429f5907d672ea3679366b43d536ed6f48dc980fbf988 e1e6081b8392b1026b1aefc36b0f5a4a6459abd6329b18543548b2456938d0a9 2988a2c86bb160a79c05dbe25ad6975873d9687058b080415889ba7147ecf7e8 11f7d6b52bfb40ac7a66b019af8586816fb5cc1fc14aecba9851070cd4f5d068 b8c86ab8aa1e0a700440d78d412cc191f175b436ab99f5f94d0b5ac109a526e2 7b2e30ce083a58cd9b305612c5b5422815baaaf8e18f012184f61356f631e5a4
From the PIN diode (hex format):
2026-05-19T00:15:09.630463+00:00 627f649fe50c4bef52d6e788e4293199e25751f4d0ac47194313df7371b3f18a 496ebc5c1b4bd1d6ebde0069f125a0e5e4d99023d6a65c4c2fc3d9b0d47c962d d33bd53ed6830fa8fe4901f31f8c662d0bc75ced672e997227c5deddaf000b1f 1928d8fffe3358cb9248ff1ca22c2a9389ce9f3a72dd410402eea23c8c9f27f9 9478ac26914e172223ac8b845541187d7ff3e121ef1749f5aa508e82eab1c0f4 c7515ca9e43f3e2c718aea6672e6bee8d1c9822b7d3c67f03a71816acf5bb7b6 0cda265edfb374ee0b1c3e9c500919c34679900a5e612054483bca5679cee4cb 8e0a04a35f31050f3634bae9a754e2e92b016beb0f08f5ed60ee0281c9c2a336 90bcd5d746d0eb4c460665c356fb26535fb8fc54cae542881639b1309210843d d6897844bf1365b42836ec0cc34ac9ca7fdb4f3b98f6f338d6cf5383fffaa17c 53aeac53cdd2b2dcd074cd264d72281363eabcc7a280477eb19bae43c8e17e07 83d8c44586c5f745957d74b648fe0d36cc7e63aad91b06216248a07335587435 f6b73d86596025f95664895b50357cecfc8a935a30884814dc2a3a0b292a9f5a 18877a725863a00264d88649b775c4e09c857f2449133c4dedf1964708b70075 9df4577bb4114bcec313300a5b96a2aec6956940870fa0795ee8341f73e9b0df 5eccc75c2a88baed758adfb7d3dfa758a80973adb268b7e44103622f2b53d34f f8bb487e7a07ea0a24cd0461fc89dc1a7e03229c1ed6fd59c86c57ea8539bd0e 37238441dd9f4c8676ac7e8b19a68be32e5092fb4812a1de7d025667333b3e9c dbb8eb28038b7caf779dbcec914350fda7110143e8477eb8a8328e6311445c47 0a8549d05f6b81d72a3ccbd0e57aa543ab453551ffca3fd27c5c6b9320e3bc0a 1831f6c1e91c466b04866cffa031e382df04358278b0d8b5221d63000c3a68b3 6d2448050f88938d1f3c00a6c8370e03ed070c6e2f0336ac67c69514e44e642a b6fa72928e6e59aafcaab2c91898052f92d3b35696912262ce490602de6ab1e3 3914e7cf39fb2318589a54a6496a6834330c95d3fbe49e7afca08e45b84f864f 08dc88e93164317b8cc3cd26a5004ac97ec22818557e29b7bdb8c01f41a64dff 88aefbec5bb9399dee16f9242cde27694b1105c9d90fe196bfe7c5eb8cc0e1ac 836f5c09854fe1d3f40a2a5480a3c9a4ccef0f29039953277fb223558019dfbb 2149bcec26970c868be2dd12ea5db2b36ae59162025cd5d21bc847ba257d857f d8aa7b50d028eed76df23299e66e742ba67ea417a6adedd36882b42922353c50 92b9010fd236deff1a5c09b73e67ac55656730c40da92cc2def2f4109f61ec30 54db86004890e981551b6d1188d3b88c32dfe1ca051be4febad8574314861fdb 6972d540eaf14aaedcf94cdd88b60fbfc7be8dc08a0660e9e9ebda0c64eaf26d
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-19T00:12:43.229368+00:00 91471709210729589397325747837623749334305815698277 72583984234766095880700333914882925150001067887514 71613394535940302602408694298463647416679513972650 35648277635423465777794577598813875021518691407149 52032556146559066055878522663828153371066681081160 24251259909160660032235553610807709378421551253675 63395557997973079564200995006930750361084097836921 39471981496162048648033453921407059359037842598524 04343095136798165242724195292039540454980675118067 14168712954614360361422804375795717411439287209422 84958561352161986025027690571969831103536476435516 82558537387843607148135477568002367215345305013489 72603725719282896009620305709348417858769710533324 89817057954881255027754983426621632944567904381594 27496503860955852934435389448960308159847226287624 87631850045636417796709557427736027100636824746351 89855191236952627523040879573592408929577897804887 28212990585739464911915704360137805909660052420055 85751838728504899709075725426226872061656685408333 41247543706028220151380067636634031299590841076459 93682498692077630465525222912760147141049884679009 44189367020650994992444165395384475988025048986227 27156181772155320032742217774850251140491502201484 19833240588138572242067792621649796299039037365708 43705433760752829825188232368744462638838112783292 36129971844564050563401506045063872636575372655740 23787248144344460754100801695241442503466303470280 61831041283608273146770207269507159074008971505524 84537278690556694136620777966756059051881504128876 28658837861371178143647222027625753334291181319374
From the PIN diode (digits):
2026-05-19T00:15:09.630463+00:00 98270059127582364149538781727125671915137938731088 92277500053760443566927647957624504559623115687301 31400245119992034653143997750011312540518846722862 44424737595814650402626040593948207238457823343572 39328565242527332373708042307792998192696362441338 02149030432560035813290691838212389479161128625680 09259570214410949732847259862142100463954905155452 86678443010715089602299463544488707670060195863883 95848466362257774846163261372068911901804054129574 27795952568331612483747283781638771440199988996228 71267755746726073196693497694925168272135426997027 06339872601553881653836134899637860037918053243847 90483672204258114142599024352214889960020034738317 96563327367319607750710883001757872380177595194810 91506274984905643515602194523115769499924236861738 83678868091573780483650398474383798772262207103604 97372626033456308908873357891455353265597634187226 39256639468046721861250286035159625684400339247519 57884567806717016771268468504299176892711033739507 29426022656771695381632492074732881024499328700704 34086049300453302076813429990012580479093672051536 47413160006655140307121047035472039849207800428214 46421089707078245205474679865045349873060206775720 57352488548466730604525112495822604269847934790836 49004923409538650074269440248526418389849231656677 36749185575722364439057517051550919740927231119209 33791042842863641541035383392778358528258733738838 51123439189378790645980292277186372533277023804009 50531016436626642366730430804134536080468501155426 92098362037285010348961369449416599748843400724429
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.