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-07T20:35:00.292164+00:00 f9996bc27deaa1f569fd5c406866b8886dc4f5fa18dd48381abe601b766195cf f64fc9edac6168b0899c2e8627ed63d5244ff35d186bd859a5a0826d19e3334a 143dda50e32256b55a3afaf5046363c671888594a94625f949e190d6cf953c73 512e736ac08e34ac7f5eff5c43b781a1eac5dc01efb1da1f50e35f636a59830c 6672faf94330927a17aa168d6892dca9d16dc3ac467c1b7a4beb940af962eb0d 97102a2765c23ee6a391d017ccd81554ddaf3c8a3e709c466aa232a9f54f6841 601602ca9eb6b575c801ba909f36b742f4fea6ab4da84243c5ab5c968f34be99 56ae5e673ebc948ae75eab48ba5284f7159f737971eb77f78ad90e0dd27dd0ff f71f21732316e47da2a31ac44d4c643dfc567ee4d68f71fba2d09fe2ce81b503 d5ab750a18076f706150dce6bbf4b3cedb7a16e2280dfab2f42500f2a5b6fac6 9518d2a8487f0ac49510a3d5620f5eca80271afb925822210d4d26fb2fb8f6ea 1e01c866720769ae6fc3f9ab0bc6f108eba8238a528dd0b68c7d3366175d3e0c 3fa04836dd758a26f2a6a58e27221ae19e94472c069ccad55161aa800206aba3 0905ffaf2d28307e2e80aa2e5a90fec4664cc98b7c99ecaa14068327b6834c4c 8311449c39e7999ea7ca3c53dec31a8c6246aa7c557624d583cd3f7fab903f51 8097b733397b93af73a578abdb0a4584016ed261ee0f3002c62bf070e7ed58e3 96b24e0f2bd2723871b46cb5c88799c98a0fa4ad00c47b510f320781d3d7ae82 4c70f9960df9eb143b4fcc28afca494f4411e5d4dc9def9326a596fd109eb484 6d51e396df2fc0bcd852d228a1caee78825f0436a5317b7ffcf1ebdd3488a12e 37e15a9d62045f81ace5f0700fe7120c99a46c5a262b9d8fbc2c1094ab604320 111d4b6cba5fc7adeabedaa7255a686c16bd5f4ca1cbb9dd3164a5718bac6ad5 76484a7f6a0421f718e05257bd3cf2841a0de63496418c8f11d11ca9e16ae073 37e374c6b6d345a70a40a2ac054ea1174d6f85fa4d4d557488fec8a0441b3d0a a7e998d405563e0f3412b4dc607375f3583a897b1bbe8326f57061bbc1c6a66e bfdf6b2391fee643bf6fd8edef7cc55c9ad16a0815d5cef49ab5f9b5626f11f7 ab4ef193e5d10fe4bae7f90cfbd3507634052ddd37dd4cc286c2f3d331cc3137 cbb988a9cb980c1a3fec659a44b0032848731da6eac82309a24f25ecc02e2e02 556ed36d5a7d529a02ae62ce2e3c412bd48b15ac66818eddc145dfae928386ba cb53024d530fd964866a36471cbcaa43b98b3757fce3856362ea8f212a5f78c8 67a0175deb1c7d88ccd83d1596a57c3e5e798100750895c3df4001550f2276ab 57655e9ec43ad9e6e0c4dd0ff2ff202457a6a87c6df14d4cee93c015148bde9b c4c69fd4152d0084f52cc9f3345f6674f2652bd5f1f4063a0d4735fd0ff99d28
From the PIN diode (hex format):
2026-05-07T20:28:07.088609+00:00 82931dc046bd411ebbad4c31ceeb2a8a2dd7a355836a9f7bcafc929f8375c90a 04b5eb8155b5f0b9c18defb2a4aa1fa0143cbf6a417c362b14617263c866bd47 737ff2ec8e60bb705a52bed14aa92a031e4c1665dd46268d660b664d02041ba9 c8b1d32d2a5cc4018a33d8b6ec72ee9018e609b95ff671ef31121bac846ec64b b1e025a5e791bff814ed45fe2a95834b04108445cfdf7eada1ed2e70fbc481c2 55c51882342e56b2cafda1e02d85794d3d3b152fb2e3c7b65dbbdad754627b29 661a79ad804ea6f507baa457c6bc46a9aea0bd0fcb155f49cb047396cd626f1a 729c2b55428df60fb7e02f35f6d4a23659cf7c324efb1162588315e716dbb661 e000cc33ecd280b434257c4b074b40249b61b40a8cf88b4f88f55134b74a34c7 3d9de713ad07e929873a369875272fb918283eb9cc5e3bd7bff724684eb8338a db8dfb44106029b751915debb8c1f3329d623288405e924a3eafef26a21db8ef b7c3be1e37771bc0845dc3cb87a6436f3c3040ca0d065ffaeb5f7eb15287f3ec fac2807ef0b09408f30686ae983a088e358d21200c98e19389aaf49f4ce6fd5b e28d3724e82115f3d29b18f221f777e028dcf8f75c843b637b3c244f2aaf9872 a69de34d36ee496dadc8a2e868e93444ddb0e5cd0fc35bcedbfc991ba767df7a 55e4458bc99c56f45606e6f2057cd7091f0e3968ad9fbddbf619dd7c929ab4b8 244df45a54035606cf07f60c768f2ec5e665798b6d75a4a3fbf8de9d70f97a7e ff953ac37f4bbd461525c70c3c4d4dd40e135297d7174841174d6c97c28ef1cc c0d1055017584e4a2b667cd2e5c41810b1eb2d36b7e05c0749c2fec37ef67128 c6eaab96cfed8840102c5e6fc649a9fbcbc68946a04c6a35a2c62b4c5c66b920 7df581179cd048c9d03187287979ae76d1d7fc1d49794d5b114c884697b14ec7 a7f489490a4af15cf05c99522d6ac056c0311606d31eaece65c1d791d6117d21 223e5ca7b9d3d97989ead91594a4ed234f4c9d9b6ea38bc6627b76ca7682f59a 76b958e8c668c4cd1879f73028eec4b3edbf092eb71d2f61ec0134a3162bf3d3 f7a1c6dcd770907ae317eba4e82ea39230b73aef59ec4618e8655e143c6eb388 45332cb733bd209d5c0df8b51e71f83d46f6f7c917656c4e465403b3661ccfd8 d2050b42d748d7860a5dbfd13af12a117e26e281d08ec2dd375f8f6f63e0fee0 59afcd0b1954448977eb871c09b03e859e65a24ca97f4a258ce5c335c6d52f39 4ba8b8e6f6fa156851f12fd87baf3d224e9fa71bd430701260d416b84b64ae05 9c16a987444511d56224e73d9084278473267d5b8a6ff5bbfd574181cd358048 a1c0f3d5d59a0b9b7faa983805081c12d95dcb36b095e77a02f5e160f8ee3eb2 e9a546b1c15b691250fb3c2918e3d92ba67421824a154b77b27618f600c8294e
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-07T20:35:00.292164+00:00 53079425610592640402843609962472562690962718974979 72970476375646343999367993240789656030092551742061 80348681905804999998133633486970377344496015814615 06924252722794926783296197017731809599068931120214 67484622237022410446690995727024272275481098135116 42390194626345232184756038621256700662506979046596 22025882811701864459548366667177686667977192504352 90538674940362884838947172868232215915211319381413 25313315352225626326967776006186264313625929810371 17102407111297808779222240137837006582984924687227 10964916639815942839264688343313773847843001021407 05741195711198086835388241824025510223936212636072 54173838666542393426584871440656819770280206716309 05754540482646287046904496027639245370200631398231 76763117685657535867608395264098707024851836316327 71446381285183515723477515652071106932011097154802 98431288507878154314561380088135533815647300962381 15500729743076125013205979407573796817574738655016 58803209815047928882406120309504546549232752366146 55905798049529721215181253640890384357438844164871 96673217297508869599739067379004082289957661854900 65133972061872742706043324828789603226135250654043 17286906155516988269671064627205786123771133777785 16366068276110675205866215521880961517885837232790 31381297879398661091073545679111249792540608215481 81981117717847158612801852054555769434944949558536 69521226630154687603407215296635096279379246460285 10099025825402749846606543392172022942936974463134 86830277831500340654712888706785395587339998433342 95200360239328253661215065246294212900170849956401
From the PIN diode (digits):
2026-05-07T20:28:07.088609+00:00 30472992708965308773764942384563853106592346593117 10048129858185934178647031602060910665245443209714 99028971152742968712908290746942033076220170384102 11027702042769774542929601385182144424098595134918 27723210987577376545912069424931750416326926736146 12962994859724305246867861453321776159214778998293 87849823410226217328786607866487988870697460891521 95730415509811261456438566411583475362548924507817 98883121228297005128805237247507756436559780104039 79368152837452996157197307413558545217394785244062 85945991360478845138416816964183814593849350579850 36649446746275386229848395903055192792329395356667 11604864130695952677823594282676480806347452580842 53413332125247377059769141553633215524331940923259 99236036794275521466577754730973620452687615959153 27670322856939568686060524093114570473598925244654 80843677908403860607121843469701213909176463571222 26495895277589702137991260777714198251237265237708 51944292058023887874430224962416774554839207739495 26134098715036641644941198736998377060760653629843 76920285322529235672493540212174182973217791177636 70517778996737731074929253824506928692492206307401 93451725333462926785213721486435797657551063399898 23181830541885889804962421484096799109468329479701 52632243619812442223644663464883588970240194206010 79366951448351893257921381301361702301087870840379 02280511667234109391584217263829429455954311998975 11258468371935280976623358016276692774374095539847 57756884210481472375613478596727481218962284750074 05562269356869179836614432393215382591381187876529
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.