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-06T23:54:02.441412+00:00 fdaa4af798e4fc06812fe48f25e7dba2a3323876bec2f27b7d50ba2e620b34c7 fb0cad31130428ed9953ccb5a6d752417b5fa5e8a59b3a77f83c6229c6fb5ae2 daf4935aee33f2aa5d0d491a59c922962948daebd9173f673f967f410ca44205 53a5430082c7455d244a2a546ca05ea22534d7d7e37555fb79aeac3bfd5a4ba9 b25cd095035a5dda4f7e33d3909ea0c5b794a6a2d8249319fa93eda87d569e50 3a905400104e77054a9972e96ce74a32fc2f1987459d16de469d5a88973957b7 0ff0dc59c823ec0e5306a82083c8399b3391b1fddda7ef04400b33d78d5393a8 29220b161881187ee6eae66ef00a85cf551a701cc286aff28ac066b62953d767 e21af65e4db418812e4d43d404ce5b62491154dc0b8550643e9c882af28a1d57 5aa37a45c8470565cdce0e0221acf5ddc03ef26059441703d653ba0015b2e135 830ce8b8d8b5eb4adc7ec1b917099bf387845f4f06cf6113c32c509ecc3f4f2d e96c6ba5999b0cd9c6529276f905272f1bc12f432bc57d65667ee7bf25a89a2f 2f85f74ec19d5e8d7fe655f9e48fa8ae7f1431e2fecd0e630e482cb3671beeb0 6fdaa5e3bdff2cc3034d6845d09da29f98eb99bf467e8db7b152399040356a1b 85fd4bd8f3425c2f98698782084784921946e6a70c43d1152a51f41c93285d23 d672fb39f2a544b6499a262fb1049331e3c1074ec0370fdb4ed3aa18aaaef62a 33fd2834ad7b335c7d4ff876ca79a47274c50eb9cecc8d14cb4f7b4510c3d2c0 f2b5cef3cfc11970bad27652d03f2939b2c1ae8cf6b56897c802c63fd3f3d39c 0b967b184875462a5152889313010b6b414e1825a81b84fc5e5e9c2f05b7313c 37ebd6648cbe6bc859a2c8b0edd361c108cb1e11a83a50b6fabf8419f6aecb59 c95ce992b3c9885b1c01e9546d95d5d8a82a4eec1ef69f1cd69eedf5a27a1e67 a3e977830e19e4ddf851a84e76e366df6fa0e5104b4e12e1354aa8f9e48ccca5 1c50b23ef2764daddd18ffedd976bf840acb594af1d0ae3acc3f215b5dd72dba 1fa3782ea37e372736a468ee8347980d105e83d8153c1bd386954016821b84f7 3ebbcbf746289664700d858f536182ff57df1e070524c261d91fc8dd56728252 e5fcc43c465326b02f5a797b34458fc37564d69abcc4e666e686e127c3f341bb 22f46b2216c3d6a3077bb1955a17dbe9f44867bef381f31b24c569552f96de47 e196cb2c9076002958f29c83bd561795372904db4e6d9aa2615dbd9c7fea1cc8 73364fd6885fdf1b2fa14a8b589faa94f86e36684973bd219ed85e3b431d5ccf aae2aa85e2f69838e7d462bbe8b314a0368cc9386aeaa6e7738c4ec733b1d822 d3b48566cb572ef50491e37525127db48aec5302ac30965e015f123a862a0127 0a3e1f047fbe9a938e41c5a2eb1f5459521aae64f146c53e52610db615ebbcee
From the PIN diode (hex format):
2026-03-06T23:52:09.441213+00:00 ec1fcc3e39e4d85690738d7251ba8ca9ab1a7764372a9a8b4d560b0a3e31388f 37ac564805b2ea86f9a9a3085f0f0616c5213b0bdef3838ff34dd9dd45c64f26 17a07a43cfb2295aa5b1cae4dc49644587154fbfb919f524d7dddc8fa27a7930 64dba326539570b1aa86ee89b75a4b774690884aa0e42aa0ac9134686d1c0e87 2569da8aa6b0663d36a1d72b52eb16324fb35d96ac4b2a56a7fd2972c5860ba0 b96d3a409574a382062d634e83e0e0f0fe9bd6a98677972b745b30526d8a78c5 052c49d29adfb8524703f710b658d8afecc82ae7f827f92cfbed397e49f717a2 cf6b7f62455a56eb01ba1e338806d9595f30472d4c2fb0e6a7428996ae18cacc 2ed729c0ef14216a286df2b6712a1c8f0218ae9fc0ff9e630a8d4d15d6c0aa42 4216a9af5b9bee1df2280ec39985d14480778f2eda98f8c257121e645d1b4a42 1e4f18f4c01675dd84cd77a387e5a726735e0d6c81497223f3dd5248d1f76f3d 60a4f0984ae24a6e511490b066bc7bbd13f8f18d3d22f79b2e32f3fe1716152a f691774c444aada0bba88278ba9a7591a2f1cb5bbc66896e02881e218fbdcb3f 9c59e5d2905964072e390247b34226aa30ee6109473caad2d958367e261f0531 fc4983f1019872ae9c3cf0bf68ab67b056d359bc78e3ff6be5a0fe0948cef7f0 e6dd0379178d1700a2e83bc36f6968f66d316f2919b9d90023f111b8c81268c5 c343f988b883b5155ca8131e6aaf676c8f1608d6ab5598f101e8d25f8f626e95 743f1df0fbcc40fef40273a49c60a4d2659972f721a50995f978fb63965254eb 0a27bdc70b2cc35d69ea865b18e57ea40724871158c30f730915d2e365472b1d 3da41262c277604a14fe028f6c02c582c18a4f558a9c5b304e8ee0b5140afb97 16e7170212a8bb0873de783b7c6b88be5ea83269297e00dfc8fe3a98e55df9ba 10588235484662387fe626bde719f314ee90992f6e4c600133f5532672b983ea 99cb6e7eb0642cc2bcd338f708cad7e22ed27b5751daac76b5c723bbfe8082f4 7f9657711160a792cd7a2c1dba009984aa4c3fc6634af4a222109c8e07aed78c 1f0580481c3b47ed14638019d8b9e1c05b89dabaca8d4b9edf8d1c7c751631cc bebf3b13621bfb4ed2c87cb1ee1784580bb25c46ed7fde9e766815ee19bf4956 eddc7718ae3d97d917b4cadb9d8f9b96e0715ac0cef346c5dbaef2fa2a1313b5 2c641268fc5803c847978f03a32b3e6679263af606e8937e6fa7c71146b87156 ba7b821fb975c8b72af333a3d7a67abb005ed0085cd4ee17e294749029d93339 91a90c8e490d277fd354ab5835dcea29ef3cfd573747891b8a06502c3a3d02f5 b27ec5cf63c5af3b02816c361098ffc5db1282c4e5e4c9d9dc71d886d7f8f039 857d1a4728ef3faf7b6805b2a582aa339bb45fca01e0bb5ef35e47d51d6b6d7f
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-06T23:54:02.441412+00:00 70745206294743376263505618909423258086469811529912 73491904405383816682652395656555581960984198904790 51709313732689345041722363036350276512646605836567 00309969933674428408609462375217852174725990756978 92490390937926514458609783486662364725476825865880 58448400167819057453140874504725356957227057903651 57878315893514830668323157555145776704641151418347 68413411222429242610103385261228943475389202824183 03269477802429467767049198731784113380006256364238 29879063226971050114023372926296896823038386002178 53311284817426938523095535329579069719954480586379 45080765535512988246180539472793476743972501022691 37685447473378935794412785436874272049149914724479 03277611658944950377046957625952539170264183778257 44645306273375669247520535300871324625706712672142 81284740933514576568827354384777044749930778925515 78702470744251405273235192257918216414169714854120 79236916959281932512861882634157789374408104510298 63561150232472177042818236471901110765782437682732 94945647058349605500409007896276979308301768588082 91322574899246793691280184094968427830592858622230 03631931142581687818021160167578185374684065288078 62187773241891321089747458633391934586316320466326 55395464043171521316943121602734496422302732628770 40500012133343839730873007053694973186143082966070 83387647902123526943951700548896023439956587340734 22956307237749902372039029273697058547507150444418 00418856318986234955410478095462979389562728155479 36952747617439885970481054047315893358945967299270 70335256988779206054405606661540789951773480330287
From the PIN diode (digits):
2026-03-06T23:52:09.441213+00:00 31625786441541148186406971261900554254397786111062 49564355728672057834696308951506229733591131437769 98793823602267784190657773006935217991852536436222 21480063388349127770343783907519704436746042607245 52040928143537053866760261546143822250797993507275 42866741149734116085095864491663300645997831556934 19514316914882093820970544735484827103168288754239 44572673236207279869908601863051360689954871457647 76676637507424464192203306400982134228430224745992 58991041772192706666226975915529401495533368281943 46529487183000932774663079249222173219633567381594 13082973143582721161966452747410812044760288238919 41613455465023222142451976687473608768302086541745 62918802371002363033438963568944890007465702717966 38704897097160708854263831054973310152147456609104 71037686898820076009720321234123006259951105040949 11412585003517841804979567368431812192681930067503 08432208718552019543981049166329640215645696640153 14336509492099508284103989991144959305349124266407 36351788951515092101714329616418989419967420024308 02973093387985385691487842812010512223021868870815 20592407369094685005412600585293861688305372709856 27388925204453471076960151833814853153102676004494 88560846238781721881993587283027508713179667462244 29860053327076639899746234165642077440310528722859 71209928258592913786417558412824172249909159199827 78247723328811789270275818042125917386192474615123 80574355501390927097744219198144001804880371514303 63436202213858064726116799177084138686233031851783 42516366228700940892234816444151574569124273133927
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.