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-16T00:51:43.622998+00:00 6a5ac9a545073fd37ce7d47bda845c7967ea644a9c0211720bbdb26f0c62887d b4581d2b9c659190d1fb5e7a8231156a4c7da6477ed8bf7255a054c5265fc7b4 d57a7853c1d8aec19246e52b3e950fd094dcdedeea4fe14750db0051f4a66d15 6714bf393c600829e0b407d6c9e1c45875cf8f2747710b6aec6657023c776fd6 286cf7d6c6722a696ffd1fe00f5d045ff14fb485b186705e4bbc5722f5e0329f 2a0479153446a4713a846e3438cc0209570236463c8cedd428bc44900b96a945 b0e443e44296545a009d2003fcb76bfcf1b7b41c8a3dd9ca2b33eca79eeaf87f d93f1c5c7fd949694a6198c15c48e60dca4a302de23b03446ef848d568c816b4 d5fed9c447f401e70cb9c5b2ebdb27d9fe8d85743b3b08ba54a907417a7402fb e089941e7bf99639fea343ad4a627a6a66a6c3721b3ad2be572dc680e8cef592 122831a78966bdf0be07d802a6bf1b408998118535b10cc7cfb4fd2a0ec5e0ea f372f050fffe584f74d6b1fe5133be6bbee551eaa92dc777e8bdd57b692b7cd2 102dde6a5aeaade7886510aedf14bd4e78610860eca2a0f62f2e38ff631871bc ce747750c06163dcb43175c980eddc678ce528ea26544218f15237c76e9cf229 f1710089123db183a6463f9f5e236c09895575e9da32f72ff6be3d93f53d62a9 8bbac80e9145ae57fc314c9f9eae2dfce37abd4d5b5c9564cb2ccacc4b4e4630 3a8b5407a458e9a59d0e475189a90c758a6aa346273b91754a273d71bf1decbc 1f867f3eee7e66a318e305ade59ac76fffc914d58f0d6cf5dd0c4e1c9218bd52 7f53bf07e8aa6eb39257ab1280e0cc66104e6d6c1693583c86700d17d59e1db3 42ca3ff1b226f33d68ecc750a62e6f0b43d0ae9f0e96e736fdb19d4f70ce6ab9 b7f2ac86a0c80aea1be720d552e0f056bb160a41c4cc1b150bb0a9e06066984a f0e2bb1a7adbff9bc006786b1b02b95f34b63e42adfbcfecb5fe8e2f37b8e196 30792c720bc41d51935359c75dea605319d1cfc87b6ea0e216022c61ddcce9e0 cc809e8efb0f95f74206a7192bbc1e271fb83254fb53f40aff423c013d8fe0ca 0cbccd6afde51fc61d15245111a05c7246dc7a3dbec26d2e4e797d5f6f99e8b9 8e9e582bfe60dac9a468ebfdcd47e7d8accf1694dfc9aa761edf3b3fd67a74fc 5f88bf7922a6d9c2dc130f393a6442112aa70ce9c26d6cfd0727dab872929aaf c9788886cbd505f2abe616462a0027ea7a8bfe10c17eb73a9a326b29fb5ef925 67a5cc45de14ace44a2d8668ccefa1507c912c87982399785a6eaad385583fd4 f6716f1a6ac040a0128cdc4f902fafcd381c8ab688f8dbb0449dddc2d90e94d7 24bdde178b57c4e662b273dc32074c9073401b624502751173ef85770ebff44a 1f9a5701618e51b6e7574b4c61ba8c73ebe5b4f6d803dd2ecbd49441dc0263d9
From the PIN diode (hex format):
2026-07-16T00:52:28.023126+00:00 e6d0bee2c2f1f0d1e470a8e97d39395a0c3a45e5ebbc049dac7862805da97668 c834bda13d20dca10b51facf3ecc3a5dad3f54994fcf83f46ee1c31a8052eb65 c077242248dff6b325e0188dfc9ea8d21f66b9736078f1a0f4a463fd5e968d40 bb011c904f1e04a8f87962f05d1e64029fcf212b1be16ee27b6a76ab8a6d29b7 a38c18385dbeb68dfa074974e38f77c7d296169054f368d702f0a5985ed4582a 5249487af4416267a6c5b9860fba3a2fbf909c2979b1352f9dfc7b033024cf65 3082648ddf9440980020a16d0e5fa1f126f3dc7abd98a57c2b3160b4789a8869 379547787b18a0aaa5521abf2469c2ebe253281c064de90629dbd40580fb684b f029b3f8b1a61d995857f9e243457d0e412e30fcef5794409419bff8f3abccc4 c1e23d1ac36f71d47ed4634d2a65fb4179dec9166e9bbfb3562e62195aeaf6c9 50f7d4e3d5949a8ca65ad5e9198fe805dc42db271d02372e89a40c544cea11df f2f78f1cfce758ee4e17b05b44d16676208b9be7f77095bb62db81acdb6712c0 245e6d5e3a369264e3cc3148b1a1dd478ac026d4d12823592dd6d8db3be24518 9d975b95a2afb2e3d88bd3980c7b44af54c8f3e3d70c8aef6c47aa38b0e04f6d 880437c27609333ee6ce853fdfc9ebe48fc751e74284b301fdc54f7908ac4811 44f448dbc82861b29a02c46d82e56c99627f73fe8d7689b5f272e569ad4b3ba5 9a1d430b05029e356627189fafd4140051f6254a4ffced44c1bbbcdf79318df1 9bee4e75241b939910583308235fd6f622311cb412861376121c61c8663896ce 8c2e25702db92ad050d9fcc76337df5a5319fdece726376a9ca88bc79e7dd90b 4ee5e865f95e37ec949139514d47ba2a3d9bdf5db7bfaf082ed0edfe4d13c184 021c55a9f4d374b96a761f1c043cd8242432fc0c68d6436c8860cd43fede9483 ed2c2178002a8e414893b7c381577d5e331ee53a176e484d543136edf1303999 134171919fd4ed54ea1a4a47c031e9d91a84ccbe4806ff03136caaa53d2fa15d 5aec932509fcc9dc89aab9a2101fc781e0c633f013ebeada07d1a936e936ce78 7c3ed0428416aa9a2479e9ef0edaef4274703d5dac3530e70b43a0c823e16b23 6ff4e08d3078d7ab661e3255b26343ae31c48d0ee3cd40d53757b74b1bdb7857 669d27efada74c0ddb4a349d2d09d21698595693dc9b39f0b85f624be4bb414f 8360c0f0272506f30af2cef8f7cfebe768a53d1c15681b3f1953b614366ab9ae 5c26efd08bd3540846859e65fc8b4e3ff771da07ff777be6ee9ab070cea7a66f 6fe3aa3f5c130d1e99763a85ce96935f179ec599124a3336d0e31f689edc8bbb c7834ce8e828b9ca9b73d2f3609c3ea1e1c4a1f6a1cbb803e274638c7d3a119b d73d4e829513686839dac8469a1a6c9e2f9805c86209548c9d61550808148aee
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-16T00:51:43.622998+00:00 06906569076324233292210300745602171411897811129836 25808829435601454494223049210676256671269114856084 97389599802220839374934670436249154879718000816609 21032091576096084180079688174339711311060287026019 11400898144205113115930495798033773412947588873450 59420421215270641358321052560209870254706040408868 44115069697667665084900057320383078380283861435167 58276328922773057497529392721374484559036810720422 80967101128597783941331659590886846907652216023748 30235057636773749822060266951427589087459828461840 49673702899007026691276437521733537712998042149714 80887916778151900790816945991989230543241645069073 36011674208978209708966260474656992413881619809297 99804917280340403884662482559910564113003718617731 66706359943508093785175047906147619869398614456974 87497659587445228977919249004475787048583984076488 65571471813769121738066370395945177439611391298831 34276226026324057354991120431308127828462489822783 91077010794687711828021678090822478860341213235829 79666378386104998066461111677459145054775779120685 83723460102732828687221065962721117669960252748726 22559206200727028595528262667381424755845048214414 11962981478389999396832523106022024497285842154966 06672543883039318450848310666001614312880631982921 36811760921470226190940946782125951153854258884396 64047172224870183059632216953691213466941915575800 66174267129409080739841446547520363405712270420039 22391693268358545007419437036569207274453404618024 45443552355320901070338863131126069264601840794447 75562838823676685794144836892339879698781550077644
From the PIN diode (digits):
2026-07-16T00:52:28.023126+00:00 90941268255757901258698804577220982893691804528961 61326111816258937363845379311095262882019219363472 79372441586831028515962060649994504164870128447930 04682198933000025933432710230618713809418363402456 93908241077316431999502244840402655294884282737222 65980366978534158658479144564121775347572303483601 48300041486452003261091495613822895265244349968020 54360555497120232460706582269136059483402806770641 05280475417977662953888767692514654648874864482591 71969361269511132699774201652122105591798646982590 80485440669025430566392902554637641284761743288878 23769168021832395512498798297203189236940994585446 00497277617138923840358945596924575191496275783952 12236875841238087170567679093604559418095162336343 99816632790197792108727217687240977854029609300853 98271541183781140573755965542967110502585302392459 75200081377479689387882149415578173627475316885108 35953449288018341918182897025650404637124585428099 99559083253855065668399958251178019455484557817771 86426155938391750846771993320228856916850618312804 60363650120467083696674831443320004242657247839529 87259451305823107277844954485753196513455984267471 92492632907206031908706561476193904737093770856216 31992998511907695454202462663222705436211466161261 93725348116760350735114148207102305085789967744996 41146455878375272087025739736776137452574509225289 86475557849598758765793196923937061004656128210427 63258382205406857492383984087033580139786313071923 54761267661111706392191330531858335047952358975318 74515431045839879931764085551596566261966161840316
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.