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-03-14T01:26:01.143615+00:00 781f4b01930cc145cc91d84812ed81c11abc3ca1416ba20213f30c7037faf52b ec12a43a19d82d5f43afe01c27cbef16323faa9ac56a346e223921a5cb5e2795 a13428b9b8b6bcbb7a9b071e12ae83762f2dcb3e2645a3b10dce694c6cbcc160 e4162298fc1e0633bea4cc5914e829d79e3b25adf13a16fdfc303fff1482db17 22fbf71a227dcc12d1acaf8d4b4fc994eb09e8db302788ac316e2f800ab64c67 510630e5acaa16ebef47205f3c0d0755278610b2fbfd255c3dde11a0be85fca4 e95fd8cc20aa0f614f7de6a5fdc0b7e56b594917c24714ec5d2f46e1557e2713 14f304bfaf38b35b0e6560d269cef57ffa7e507f729f4e13b99ec6b1e52a2194 1a2cbfa66a196fd6a9cb070baf1f7ddf4021f64902730dd328b6bef40478381a 480c3b9f9345ac4c99d40b8be8a5b624a8f4bc0d33935592ac00ed9dabdcc2b5 9f8b5f480cf6fe852800dd3378ab45bf39bb916bb5c29fd44c547dd9859d5def 63ce9a5a4af93f1b7358baad27ce8e971aae272bea3a06701abbb7d0717930ed ae542bd352f0d3cfaa8712adbed514e9850e1136d337f205990a9bab8cbb1cde 6acfe09ca1b53f75c286d65b609d65a305528d0b36edd7b0419b56c52c56520b 14acc3d2b80a8ed57625d1ded95c11f366fac0181b207109b81245b07cf7d788 e809bfc97c43525fddee2b51d1c69fed4b96ea624bb4e544097ea8f854aa50ba b8b30e2f369f0cbbc2f3b1d5ea416cb1518734ebcf22e72c207203741547bd65 24458d87b5b49987c143f5d819548f5e63fa6cc4bfe113c2f70806ada4855a5f 9ed8a7b347a5a8bd5b8ffebdf7e8f46a1d310707fd2c225960ba9f3e177b1fd2 0b24510498313f1764bda70fc36b7eed85fef31cdd2f2a761ab9e3640fc966c7 481ae836de9859cce84b551af1208469866e6e56b09a22d30b4707eaa57142fc 7e2b5975eb914fcf7cdb1c23bee9a4c38966e791de24f5edacc1d8297df94823 8258546644fc6ab10bff1ba0ca6d94e366d4daf9a43f69ee2b7961400e2764c7 d541e7da3b06c8d1b0c6bab4a1bef6fbf362bf5ae765d05a269b8ccc0211eac6 0b1efb8b899b9a747f2eba0b44193321685e8c3cf680e16e45acbcddd445a798 aa6381ed4d11d42ae88ee64913c260674087d7479372b272ef4a2d8f4d65bfb2 67bfb3d2a0df5315294b40590069d1da031460fbeaaa492d1d182851d2c760cb f6c3ec9e8c06308c3e5390ee6149cea0774ae7f7c4cb6b3b0501c8aad61fa50b c5b5b2c6a2b5c340b0a5a01b4971ad9f37c79e55594cc39221c086a378b3d292 00aa36fad01f393d793cc390349b908ed0b31cc26d7fbad8cf0f9d6cd57d3799 16a68ac74690e9706caf05c08585ef4f32b997d43259949b710a2f13f4963820 a403af9a0c9e668855a35c8305370263b4401e6f7841f4d030b865aee1f4979c
From the PIN diode (hex format):
2026-03-14T01:18:48.941669+00:00 3566c92571f233bfdcb2acf4c55037d834e311886e7e452fc7a56f310df1a586 d6f3712555700cbe6c938dd77eb8175e33e1670e642ff6fb263f541cd544e749 044b71f00a90e33cd92b5a699bd332bdbc7c42f3a5e8e5cb4877ab128067c088 664eb1f08e8e118a9ae1339932ca3adf154ea5eb8feb1ef4c1d4206b1afff1f2 6908f8e33b2006daee1e5754c9ea98f6173e57c36e580dc60854c8e53cbcb087 afd66f559638cb5888a7c47fd0c3b9783ab1053a6e4240edd6e5141d833a8649 1eeb443a6f08705a85fcfd8014cdb6ba56c06c832b5b91b4098b1ab2a67a33af f04c2ad15bd4aa19807ae27dac70b38b3713f1bca914a993fbee399771729389 e1850f120d985ea26060ae8b3a0d1702207e6913bdccd2616290ffa27b93b9ab 307f9043204979cacb022ff226ffd8d2de6562cc230d1a8565173b66f1ec7809 c8f142084b863eaace04a500092d0712b6e79ea32146413562c6828f459bf940 4ce1bcdf94fb71375deeac2901bf553e7a0bfdc0d5d0ab47f1a1ae5186f810c3 30e69d1ab11992bedfa956bb22bbdc7526c57bd337ef9b796c93c8e0b1f92637 d4cef5793bfae9c0b54d67777312d895db73d6a9a17a5515f8a194349cbb7353 efc3ae0ff55b1219e8f8ea83f7222684a2b61c0296f726c4b8c619d9e72bb95c 03b0f283138e99a6b0382b5c7886b402aff581b725dd44f5af58ca7e99b09fec 2332e4c5344e5de8260d90062ec181bf6be0879e135166f580932d73ec3e6793 dc408d29a325cfa3820212f81c44df7c2cfcdaa28d2c7925ddda93c3b4d3f706 a4444253dd36b562eeb8731944fb4fbbd269573f43bb97fc215d29a91a82b161 b4ff0edaedf7637030fed0cc768a646825c73c3ffcb8be702de6d9767ec1af0b 058c33d97d5dee9c58b0965a85cf814711f9626a3c73c70c5ba94e118971b080 c29c9601f7467fe840b794006a28119ffc4e496e0cbb5716bf1b3e7f4c9a1b45 3846af78d135a8deab3786789df9956d3599ca57b64366c9fa9da2953d55f7a1 b2aef905ca97f2f887183e75905b18ddb7d319db105057bc80964f41b97483f0 341a5a8599ebf06b71f3cdc884f00c7aef4d0ec5be1b365043ddbb208e6d407a 1609e2673aa4e574d5289a5a99bf219957c9ae0ba5a8fe258e42d28ba9471af9 6ab6ac19a72adb1ed206e9430d630aaf120e4b4f8f796d4e04414d23c788340a 8849b64d8f431b6f596e7e9f963d3549b5186a5abd347372a4e7a89aa0376a7b e4c02967d44623875863bb84df52fa45851373a3c832d8fd5206108a3d590c14 36d619b12db1d3d449325ea8ba52c11f6bbc3cd84f67765ab14bb50f04f29776 96b6a1330e037561010e0f303b257383d81945cd995d8714b581044d6dbd235c 36881383f8f006c7426d17cfc1dce9a81c562ef78984647f46077ce38a40c14d
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-03-14T01:26:01.143615+00:00 20317501471293694572182993268860616507620219121255 43186458254595677528392250637054970652103457336594 39496152408584828887225507301874311847456238696377 13057608889396223452300651906489204158593773582248 63203023342634251872754175794809483936724910472810 82760381064872702271329560130785393416783792611760 90336495327015977925659283078973239471209347708526 39192004917556799114019605272680271459781985589877 42334826449166062511690711753125643373021513408290 04205626721259594769727653113965823668881351478546 72005771948159399572123340005120716991578745078194 59768425335793995490746327158886733942512674394358 06122687831321487484438270351873902033141754550553 10557140872806566181631794349196570163058241115476 65558697448682112072958410421837921702922427321309 84186976243609912467829543819859755098758068092668 84708086847914475459128794776508778135523444321403 16217189013669413581805335936725844394990896911994 08067364339095586779716568899143890629490707443489 96865962232331113681045249632300896715950726332847 42182685001502997226545289758526323205341010867654 34117107651366264389174579242835906495370245367293 41257235308884026806771127600948026463054321976414 39009965590676988680619098919001903855400217981130 39375554162746861168255133049440602810697288696752 70992977174242731994960364357147147814744543770191 78039179608321417564890005032096707345292440819996 95584006484062834497736019749607590501703165119781 78986281956476656027731373595599588589769546339234 63207946007054315761216095445255444279289409278615
From the PIN diode (digits):
2026-03-14T01:18:48.941669+00:00 53023713519178729780555217361026694799651149136534 13378512129008474126842394510314004738638428687304 75131044604390055550898824666572197118280392360278 77424217385451535058217865433093320726050859320630 87845223628795108813980884608876357511855056883667 96279585205877055810666420293158347330685811081290 33282082868692083143914580093926786622517576429170 25282225721279395519886920694757511314473733151813 52946296967439581323023226051989979844622347857148 27446732732102473801983513263301235902200966087534 62700465000945071882586333706553989830436955647688 48135593724101918562221192717161748134169548572677 25469069868734871738972355552108477738552159928177 03191518491569612285216148525687158395741591182531 34383262822802503896849825438592037631194253667656 43922034800275298337687588265376593550975278933813 44064693299107355819810228474515620347644141633763 30021828682444624144213747958006646866835481988415 25687987058763678751339341692630779780149912481838 00043799606384901245182693751105405125935688765090 33297117980660159912916978173713762894565001702764 83480006401759787310128787229127622776542769567075 20536871553420574909535387826702576249618561787405 51352462174491248325168087882850796585163152269033 53071332122277149790275480678732420964222209035864 16405490539133538774116568374266396971260682722567 42300667139910751814757943210978046577359936521036 73827743672711891026595061537381240690895215146468 54605506239241037035358899873282693319156350820616 38618912205425774577735094688682933107886079031890
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.