NOTE |
My keys can also be found on Codeberg in order to check for discrepancies between the keys. |
NOTE |
I do not use, nor accept, PGP-based keys. PGP is a legacy cryptography suite which was created before cryptography was well-researched and well-understood. Using PGP in the modern world is dangerous and should be avoided. See Latacora's article, Filippo Valsorda's article, and Matthew Green's article on the matter. Furthermore, PGP's most-commonly-used implementation, GPG, is comprised of a very-messy C-based codebase[0] which has a reputation for containing countless security vulnerabilities[1][2], and continues to do so. GPG cannot simply be patched out of its poor design; undoubtedly, security vulnerabilities will continue to emerge. Users should consider replacing PGP-signing with OpenSSH-signing, and PGP-encryption with age-encryption. OpenSSH is developed by OpenBSD developers and is well-known for being cleanly-written and highly-secure despite being written in C. age is developed by the aforementioned Filippo Valsorda and is written in memory-safe Go. |
CAUTION |
Verification does not verify a person, only their devices, and can be defeated via coercion or other force. |
In order to send me encrypted files, my age public-key(s) can be used.
Data encrypted with age public-keys outside of their validity periods will not be accepted.
Each age public-key is signed with a valid OpenSSH key at the time of their creation, allowing verification of the chain-of-trust.
My age public-keys and their signature-files can be downloaded via their ID-links in the table below.
My age keys are rotated on a 12-week basis.
| ID | Validity Start | Validity End | Type | Quantum-resistant? | Public Key |
|---|---|---|---|---|---|
|
(Sig) |
2026-06-05 |
Current |
X25519 + ML-KEM-768 |
Yes |
age1pq1ukwtakemtdc5vc2nrsjz036rye9xgmdezlarh8vknss0nxy5xvctjmjrn8wv3vkrpg0amys9hs6c7tzvk2xg02aghz0g0ayc8hznsy3ug85ty2pz8zzj64pf59aryvrgykc9wp5u9z5nqjyly762pt5sk6h7nf8rdwsjzrr49na68rfed4h302hau4m92rrtf9ygxjy8pydssg3g8dfdxkam0j5nqrhnp9j5wmm3dp09f3cwjcmuveszek66yzz72sqmc2yg0mm88cgt9aq35u0cydnuawcgny53a463ws8entj6z9zdpdr4h4r5cusghd5nfn5fnqlcknqjq9rcz0w8tqfhhr3rm3z4cd9jmfkgmuv68pr530zt5f0rmvrq6laj70zsrr7xglgxckav7uzuk2pzjjy3skwxy5cvsmqezjq2gr5qz5gt02hdfty9lw6tnwszmwq57ykuyxwng60hxfe3ptr4eap8wf6ndg8kca92vj8hrtzh2p7fyughw3cp22vlv8ykpz3fpde4xuuxzwyv5e7ak55p6497l4qgy9hytrdlzts7gszk556r5ypfkex3cc95nshlxuvmhrq0qacp6656qhgag9pxjgdv9wztwzcy6gph47hl4nx2h9rmnqgz08pf2fxtr5f2s7hf3fxyza9as0g60stthxns8nudmda7p764j74zwlnq409z0qrlqwk8afzafm9ypl3s46kddpjx6eev8fxqaj6prtgnwf7zgk452rp03vmem33z8xwtep8c2lj02lyj6vg2j34pv0fn8kw948gjj9v9mm9r4gcewfh4gdmngzy2cpq7devjpuypd0ue8aktdj2uzkzgxa90dvnghpzupytz0znysw89zd59zq6umsytzz7gkenswytqz6w2ytz3t2mkplqgkmlpwq8v76d29jcchkrs49pvc5rjt09stkreh9t5vwsmjjy3q2eych8ft379n5r22zprj3vwc6vfwrx64ccfjpmfu5gn88wu55jyexazngsld6sz229yvudmcfj8dz9y9uusqravf4ycq27r0dx9qgapuxc98xq53vqv0q7yfy3r24c5vf787c5p5fk5dfsqg27zy54kzvn579rn0zg84760w0fn0sve6cc9hf96790nstmc9jh84d6282jqqsjhe648yrjqfxe2jvh38r9znrucjfpex8at9rzxqatae7tsy5u38cn8x2e7zx8dgp87kyatps2fwu85x8vvgen9095l3zraaudyq8q4r7sugg2fg95j65ealq6sr92rp4spgsgew3dphprf92ycf9w6tkvzglkr4xr2am932avrdt2c9k80zmtnmg9v349uwetp36z5najhvceqwe47mf2hhrwfk2cnrh0cxeyz6rxzw3cfp7yurzttddcswzmx9j50576xk4agf32ffwd79dtp5ghfzs7zrkfvnrc4xsrjsgx9msz37y24h7smnagj8c8mzchtqqd29hzmf9g6dur906wh308me3zffktmzhdv8p76qp6s8vg4f29ljau83m3nf6dcxcuvkgnskazljxt3urmcufvkgq8fw8wq8j6qxpns0tru7xtygj6fcmnrx7jrq629w43pec8czlcvv5gru7wlwwqyw65tlts5cax0jmsaku633gvfmuppwsggcefr89x68txegc4m74uquxh244phq4jt8vhug4m7w04zuv8fgfym4n66qksnvurw8tzqdkn8fyzltyxh79h902s978mxnpmff0fa2d7uxvqqdzdqeyatla388l654t9lgw5jrer9x6xg4xsvkhj4sxtws5z502j7lve2aw4yemhk0tq8k4k6kufcvg8y50lhmclcerpz0cadge7t89z222z97wk0ze9wpsgf2d65wed9ar39gxcs7tu9xeqqnym2y5a6ewnf |
|
(Sig) |
2026-03-02 |
2026-06-05 |
X25519 + ML-KEM-768 |
Yes |
age1pq1tsqzkdzrvvg0kyw3d3zu4ppc0p58suuex7nzza0ehw2dzy3up4vckdcnwxz9w5lw4dj2wzuydv49wv33ztcxtzr3r3meteamn0trlcqxgzerykt8q6k47wyr0ukxengm298kxptzjyncu7zw79az8wakd2makc7dkqpmvjjzqztu6r74hjv7e0hty3zh25zr0hpgnqh5t5ckvhygljkf77vvk7fkkkuc0kz85cjuxqhasjcsuycrh9gz4hxawgahhqnyxcu4d29tfk6tqhhtxpt45ys6xhyd3pe2078993yqve9ljxpu2w3wd2g69r98c9n75c4uv7sg3cdwymc2qkpuz4jekkcz894k523stqqqdg92e47jquph4n9lhqgra0r98wey3huhw37qzz0p6dvs044pen6z3dl657sz6axyk0qpq9v4zcvg07ctnqdukmrndpmdl52359s3c9gt0dmjku4zvjjy7duz8nrzvnutdnjwf0q3aufl2mmulkskc23jv9g40sa9ezpensuvuvfsdtp68qe0vze9leglm768tjtenr9yvm0xq7agjat3zg6z8k26epc7vhdp4vdf2ucj0xkrq4gq0tmng0thgh86vxacj5uk29re8xtp2znqgjw7ham9um46z2qeqc7vsek7c94cd5s092ynr54h4uxlnzqhgawafzc4lpz4hmwp08pdtrux6av6knq7gzfp3ynqx8ktqsv7c4938kagtnghyucns8pcs6n8wvx7nzp207uggkcnqm79kv6jk4vvmw9sv9cgd0uveqajz9xwss0sj9uszhcks7858xk9cthger96m2mxdqa9dkqcx23tddmz8qevt3raet7rvxgrv4j2vk76dgyspe6lpzftr5zgrk98h00jyp8lj9gkg5vr4gz4kf56rd7m02xkjca2xgv4amlj8z5q5sr52jju5lqmp3wgn8th9x5rwz0ngkrawfd0p7rc8j04x9zcjwjggcqtj79m88ccdmdrsvz4r3x8v3l7lsuaav4hsgpuqvfhkfdcjmrppkva8htjyepz0dsz0d4x5zc6tprn9j2gj4knngjhxamvztrjrd2fjxzuyp5vfet6w8cvlwqupx2z54fkn668k2ldj3rglqqehen2wppp9z0nq8fecscpngyz0x7pngrh80asv8trxc2euefkhvj4fm2h2qqd9cd9zfnrcwm4rpywved4alz9g4h0wz8f2cx685zuk9yejdemsxjvzkcqy72gqty02lwpy0dxcljzcxfpajl2y34ltpskyz8my3emzw3ljp6gvsfhtty86ad8h3g4gl62p9hg9qtvs5qe2t0fnsa9ngmsevuzjs4gn6jyagl5e0vk9zzpsd0x3pdekn9tgd85rcu4k7mmrd57jysauvv30kmpy95v5hwudgyge55x2l6ykzzfscmwqa3xh20yv2y5jdent0c3s0vtx792wsntzz58yzd4dt6vt0aqyh2g9d7ug0xperq2me6yr6mtgydxgv5zggz8njjhqs0k45th26ds33hwgfv66sruxw58evqahyedkx378vc9764nv4mgpnrcd2xpu544vkxxs3f2durhh4pa9pmp2aafz3tu9cwvf3x5gjhrjlg3ggr5565epgnhql7gvhjl39z3arx8gcut6faxrrpvwtmxzlr3geert73h2072ttke5xzfww0642t59c58a3mpsujgv3ueed6tmwd4wpxxg2c238pxtdsc9f6emgykfcqnnhcu2mq9trsk8g7l2pkvt4u0l4apfq8v894aryw8mffvjwu4df4e3h6x3jg8kwsc9jf6kd0gc58m7j6vsx9mf90dy2jlyca80wwnfxe48ax9mntpmdnc23azzs3g9cyx5hpj0kftaegjtpq75lcc5vd68mgtv4hqhgfuqjw9fsuvxe8v |
OpenSSH keys used to sign data outside of their validity periods should be classified as compromised. Only OpenSSH keys used within their validity periods should be trusted.
Each OpenSSH public-key is signed by the previous public-key, allowing verification of the chain-of-trust. My public-keys and their signature-files can be downloaded via their ID-links in the table below. It is strongly recommended that the entire chain be verified.
For information on how to perform OpenSSH-verification, my documentation regarding it can be consulted.
My base ALLOWED_SIGNERS-file can be used in lieu of an existing one, or its contents can be injected into another. My base ALLOWED_SIGNERS-file is signed with my latest OpenSSH public-key; the signature-file can be used to verify it.
My OpenSSH keys are rotated on an annual (52-week) basis, beginning from 2025-06-23 (key #3).
| ID | Validity Start | Validity End | Type | Quantum-resistant? | Public Key | Fingerprint |
|---|---|---|---|---|---|---|
|
(Sig) |
2026-06-22 |
Current |
Ed25519 |
No |
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFCJlhUEoYo24Vg224WPJNfgnZaFzCc3Pyi12eBwusjm |
SHA256:VDNZwEeYF0XcZsYgE1RXcM1YfTA6Nrx7wD/z7ggswNs |
|
(Sig) |
2025-06-23 |
2026-06-22 |
Ed25519 |
No |
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHSJTj7ksjVys/nBy3H6Tn+AwJlzLG9RUAtNOBPAaEtj |
SHA256:/O3c09/4f1lh4zrhFs2qvQEDda6dZbTwG9xEcj8OfWo |
|
(Sig) |
2024-04-01 |
2025-06-23 |
Ed25519 |
No |
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJ7xGvfyArrAwOAzjnkPIWYmLzX4JAxjrqpzkDBMycQS |
SHA256:K/a677+eHm7chi3X4s77BIpLTE9Vge1tsv+jUL5gI+Y |
|
(Sig) |
2023-07-27 |
2024-04-01 |
Ed25519 |
No |
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILHPGnrIg7dI7GUqA+lTztJSrn+7QyRceajqs4iaU8UG |
SHA256:FtEVfx1CmTKMy40VwZvF4k+3TC+QhCWy+EmPRg50Nnc |
2023-01-01 |
2023-07-27 |
Ed25519 |
No |
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINs8UH2hVmNSg0qKig/9ZQt07IuOHsorRfw1doEgMuJ8 |
SHA256:9Pl0nZ2UJacgm+IeEtLSZ4FOESgP1eKCtRflfPfdX9M |