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-07-01T22:27:13.780952+00:00 9eed9c6237438086cc487096bb21e944b93b76e719147866245b867266c0fd6d 704acfac4dba9afb39bcd1bad9adec6f282f52236fad6c116330857e8c2a8db9 3ec7365aa3daffc2996c77e7facca9ee91e733f5ea11c60ed7f085684858c924 c10f373cf12bbc4a0bd9973094e0fa00738e1b408c859819f060834c3da9863b 895c43e39e895edbbad3897abf3cd6d8a3a634dad46d338fa5b397461546f0f2 70bed14219b501cc0552a6ee8f54cbf3ed9769588a7e1fecabf7e8e6304b79e0 47b0c298e6a9a2d724a7a6b9b163a3d9c233782be41d58e2e40b835deeed4b53 70580e4d84fe12a67bdcded84ec1d76af385df9b24bfd058dfddefcfeacee05a fdee11bca5430facbd35d4ad9d758798b1b0dfcc05cc63dc823388e2ee47d7a8 f20fc807d7e5f9ea1aa3499bba4b9f2f601ebd26d2599355a80ce98825265ffc 2c632914a6ee25977c62d6674b77d5eeb23a243e867d24511c4ff215085b91d0 4c55201bca326272ff54a38602e0de3ae46ed0d9636a6f00cd7188a6d5411eea 0dec74a99700088b46721ca0c361d28c739bef227762e67190721d317a7da9a9 ddeb4f6279de6f43b8574dd05991d60fa7048dd62245f04f080a270cda945958 45cb5ce7a851f9e4599a59e62bb051ca7c1c7083218d73065226c627040da5a3 736553e8b7f1d0497d63c26a02ee0f974ce10597782293b64458fbebe0944c15 d20fa5ea4140c1e99ce2153ea7ccdae655991d9c734d1c57768daf8286c6b621 a6d9d75468dc353e405080ef5f6f9c6ba3790a2479ee38665df82b863580cdd3 7e12c40a38f787cf1f6fdeba667eb91fd2e1f7b86b252495045f376689d09a01 5136a17b82c0189feb0fbd8004d25b70d2a8eda2aaa708b8fb62400031256419 8006dc652f65c2faff35ad1c672104e5bbe4c60e005e99855c4ca0887d244c4b 73766678db9791ef5f6882c47bdb0b3f5d83bc71dbe1c32737f2460aa2da3ab4 589ef2493db402839eaad24a12f7a1e7342a7d99a8295ae1cc9c3e4adcbeecc6 9462a096734c0099d18689c69c349d24dab70c11d4e8251fa65b22532bdbe856 325590d4448efd2057c85879aa3cd7b3f9fe88bc3f3d74027af20aef5323c64f eb0f20fcfcdf0e56a977a478b065023f591b40027f886ee82fbcb60d60270a7c 662c21e9837ceb2ea5a6a218b0984ae410f090b35f86ec39347447f5e2e6f1c2 532e378cb00e4b113af92ade080d336839645a8e4aa8fc0e4e36ceb9abf67707 e2ac82924d3d9d308d523544a3d1bb186ea713249443c5fc1af2bda8ad8befe3 75b1f48faf3b4a152a210a4efb049c1c2408b77f94eeef0d1c397d4420364b17 6a56a7e7b4414781a12a4bdfc387c7ae7a3efd5462fe387f2c76e6e70a19da7f 4d5b093be7a803274cbaa1a8518cce8558df8f0c11c99e10bdb22d8f811fd1ff
From the PIN diode (hex format):
2026-07-01T22:30:15.181342+00:00 bc229b0d4496125a6eeda49a5504171b5b21f24bea1946a641b31cb4fa86f3af 0c3243dc1896339f563cca338db212c33d7ecf2c033e8a0c9ae146f5a5fdfed4 8a8d8d8bcb787a91faced96eba6fae62ab8af9b9bacd752451a34a0d00a2eb71 fe2c1c2ab2aff19e71f051bc00a26fbdaa1e792baf1df2f972825d227b844973 d3c4cca14be304cf25dbfc3b1a4d580ded44b7b154fefddc1b401b8f961c8894 3f8746eae391ed3b2f0b77121c7b16d52a4db3df9ec0af142cca1cd2c212214b 7f86d60121a51db85d20a934a57ec8697d97976ddb1f3a03df2273ef2ccf8cb1 59ba70770e82e4fe05812b945becbc1cad8bdbe8ec1fd537b4cd3c9ff25c907f e22988ed548dfed5c32b9c58dd0d59490181b778767762c071bc67d8a7366b8f 572134966cee6ef4790e2c08a30e10fbf8a38fc03358082db10eafd4995d7e57 daad4fc09c2e70c1984236366710ef0d0808b7c0ca1c3dc1e08a048f2cdfc08e 4834af2535f79214047dc05bf55b7c600a920d074cb5dd439827bac7d8f03287 dbdeb20fedbb25462505587f01e28f37aa986a8847f69078c349054ef46b2052 9e704c4135260261ef0e9b2587d0c85154ff67a67b5fc3cb522e379a967d44b7 01436f690a84227121f163b6e36c9f2bec10c7750ea5b38da944e85ed4ebb1c3 8badfb2601f8765169573a87c15d2c326cc7cfcbefd8de6cf99d676e44ec6989 fdd3c45d42730c0bc4672e3f83c0826425d4fc9a05c35924e541590b295890c6 8f275fa812660535410d80bd10b57e44fcd8ce13d466d4997e96557224423a25 e63ee4f2786e1b77c2d841938942f77b3f8ab017ba48a8fb1f527904ea3d506a 17d7666f79969a109ba38a6f2520254d6d1ef95640a996c357935635df44ce7b fa2409543fcb1c78757cd8c17ebd9cfacdf62ba98dff63d059c95c4750dc7ac3 639fda17c6a1b4c174414f815803a0dabcf857c67bf808ce71eecbbc750d78d8 adbdf90123890cd597708828886fc8e908182b0d678deb0ad14892ae8c6b00a6 97a3feff35a7509d5b315efb5e47c1bf53fe734fc3c36c44b0efd74e8194199a 7bfc4f8bc71843464213d0932cb542718ed753a09217eaa9749d0cea3900f673 1b3c33df1e354fe7575a32fe0c074b0858917846d7bcfa10a61ac89294eb141f fa7ceb8ffffa914468501ef77e736866b0f8eec4575056d025d6371832ea7170 d369752fefa6c9d8c8ac75406977ef7372bf87fb388b2b561e9c59af247434cb ae5ddc7c81f988d2c96e23a440ff1dae84c644106765adb8b22b694f96b0288f e6a723354c22ead25987bef784529e343208389f29e2706cdf2b019373628469 9a4cd1addfd1f1424244ebbaf126da174fdc9b618ca733f9b9f6487d6f0d2f8e b11c6b4be05045fdd666458c57e82242af1eaeee0a0e772a81b63a717e2ec063
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-07-01T22:27:13.780952+00:00 58569855672834721250873368855918252020023691341402 92091274727786545788867311404782351173081799483326 40424185629954906394530819694551179814330472883693 15556043887411514848001542276440335225963176616934 59379267583794863722916063665209514365795170217012 90662581010582664384510588382631714875217176945269 62366766857799639451204329881131937583128814773218 66237893063355369188901788656715728953735717355277 76059930513671681507266373558675594796308938894785 68123637389544994120663751249803751978583662342536 81287921089145768532275098148463340258109906110013 36666530131669510008397014286095974015553419981344 14294922256969799821116784877789451567044134697908 10391248898869926881895489437681242812313341150682 38983904136563150183837325999406021551760551203447 82688848762115656564935621626785532956157728871841 75303498823366840453626480289511560763211036215602 93433453282618961056353111860226853184073736490495 55023754018154612330922459158928049112686270670884 98640049370025280601470194537328033304879814009453 33927660362536767515180220514595043096231163933188 13953955701062588088587361800231587074186152422553 68419056627490984898605015760053343798565257368312 17373166913483438650854468423287882170607936886361 16022210833598791532148669196420760102638927640227 36104788821396391024024433312446656662247652741644 79953457521671948346554076147517584208135104570090 42746814785485711907723046776157484182536863872410 67193648679726896873391777437559742142331078045628 36088327481328572568325475230686678065712961427595
From the PIN diode (digits):
2026-07-01T22:30:15.181342+00:00 88345513685018901064548504232791337525706665792880 34751250672450515986605141781895612644036238125470 65384141392022451086117498713885861736816374130062 13442842787558138188006211897030214375291430933423 32731596617504375926778813688377842764274350283648 63357045594711191828232242777958927520442894183375 27340133652984933269526526052551510931580334154440 77898612191430052943489188287339315580605992442741 36844195435688138973012983201819989213880367540743 87335250081021144408631416634392518808457714755393 26877379925646129352665454031613080883922861933804 43449242725275375346200425929191249610461307768167 52398699503578158737703705882701435570520636714420 95730578073282581276655338029714553735818403662395 95824655545025688301671105103234133399820859431699 17146579416968947795397338011881058758359393445008 99085703106805379693661512119603466331923000375405 95893665891141884498433995681802055365132889168126 68190253265085143666583762201027199465473766236338 76238672683182210461800623021121505416556338113732 37770930866469509587478653682336098463282017249326 89564369419989927180229599592398618093166579298803 60888798230813881713207389013537125112364036110824 43130341107246744007006651635367805791499494719391 83157995950868767829482554237939992467706619474481 66134283604623691657125700152760513053798790501207 75088845207088166626464820312443456804803026150402 76968780863755245013120517476672176405191514913556 39438630568975361652749324293610356464297432986816 03017384784305795076404367355376348935903282585250
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.