Top all-time · #375
Filippo Valsorda
Personal blog · words.filippo.iosecurityprogrammingsystems
Filippo Valsorda's personal blog at words.filippo.io covers security, programming and systems. Since 2022, 143 different Hacker News readers have linked it 236 times, most often “The most backdoor-looking bug I’ve ever seen (2021)”. It is still writing: the last post was on 2026-10-16, and you can follow it by feed.
Rarely recommended · 4 of 40 sampled comments recommend it?
Why HN links it
HN readers link his posts on Telegram's encryption design, age's authentication model and open source maintenance, and cite them as explanations of cryptography.
- Recommended for · 4 comments
- Called useful and a cool example; one says it 'nailed it' on PGP, another says it covers the thinking pretty well.
Summarised by Claude from a sample of 40 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.
Most-linked posts?
- The most backdoor-looking bug I’ve ever seen (2021)13 people · 15 mentions · first linked 2022-01-20
- Age and Authenticated Encryption9 people · 9 mentions · first linked 2022-09-29
- A Cryptography Engineer's Perspective on Quantum Computing Timelines8 people · 8 mentions · first linked 2026-04-06
- I’m Now a Full-Time Professional Open Source Maintainer7 people · 8 mentions · first linked 2023-02-02
- Rustgo: Calling Rust from Go with near-zero overhead (2017)6 people · 7 mentions · first linked 2022-02-22
- The ECB Penguin (2013)6 people · 7 mentions · first linked 2022-04-07
- Encrypting files with passkeys and age5 people · 5 mentions · first linked 2025-07-08
- Frood, an Alpine Initramfs NAS5 people · 5 mentions · first linked 2024-12-05
- My Age+Yubikeys Password Management Solution4 people · 6 mentions · first linked 2022-12-28
- KEMs and Post-Quantum Age4 people · 5 mentions · first linked 2022-07-29
What Hacker News says?
> the DOGE teen is a former denizen of ‘The Com,’ an archipelago of Discord and Telegram chat channels that function as a kind of distributed cybercriminal social network for facilitating instant collaboration To be honest, this is my first time hearing about The Com. Does anyone have any more reading on this? You'd think they'd use something more secure than Discord (which has 0 encryption) and Telegram which doesn…
Comment linking /dispatches/telegram-ecdh/
on “Teen on Musk's DOGE team graduated from 'The Com'”Submitted Claude Code can debug low-level cryptography as a story · 473 points
HN discussionAh, good, thanks. Unfortunately, whoami.filippo.io is not resolving. https://words.filippo.io/ssh-whoami-filippo-io/ and https://github.com/FiloSottile/whoami.filippo.io are useful. It suggests also adding the option IdentitiesOnly yes .
Comment linking /ssh-whoami-filippo-io/
on “Charm – Tools to make the command line glamorous”Submitted Show HN: filippo.io/mlkem768 – Post-Quantum Cryptography for the Go Ecosystem as a story · 315 points
HN discussionAlmost all of the smaller values of n are not valid curve values, so they were searching "harder" but just for valid seeds. If you look at the generator output in [1], you'll see that: 1. Only a very small number of valid seeds were discarded when compared to the number of n values. It seems we don't yet know why about half of the valid seeds were discarded but the explanation of a buggy curve validity checker doesn…
Comment linking /seeds-solved/
on “Claude reveals ECDSA curve origins”Submitted Planning Go 1.20 cryptography work as a story · 214 points
HN discussionprobably something like: "read this: https://words.filippo.io/seeds-bounty/ then find the solution to the bounty"
Comment linking /seeds-bounty/
on “Claude reveals ECDSA curve origins”Submitted Geomys, a blueprint for a sustainable open-source maintenance firm as a story · 204 points
HN discussionFor a cool example (deanonymization), see https://words.filippo.io/dispatches/whoami-updated/ (discussed at time: https://news.ycombinator.com/item?id=34301768 ). Someone has crawled public keys from GitHub (tbh I was surprised that GitHub publishes them) and set up a database.
Comment linking /dispatches/whoami-updated/
on “New startup sells coffee through SSH”Submitted Why did the OpenSSL punycode vulnerability happen? as a story · 197 points
HN discussionThat's pretty cool! I wonder how properly they were really signed - there are _so many_ mistakes even in systems that at least don't use an example key off the Internet. The most common ones I know of are: * Out-of-bounds write issues allowing "signature was validated" flags to be overwritten in Flash memory, like https://github.com/jglim/UnsignedFlash * State machine mistakes, like https://github.com/bri3d/VW_Flash…
Comment linking /bleichenbacher-06-signature-forgery-in-python-rsa/
on “I hacked my car”Submitted The XAES-256-GCM extended-nonce AEAD as a story · 192 points
HN discussion> Set, Tree, etc types. Those are fundamental CS building blocks And if you're engaging in CS then Go is probably the last language you should be using. If however, what you're interested in doing is programming , the fundamental data structures there are arrays and hashmaps, which Go has built-in. Everything else is niche. > Also, as mentioned by another comment, an HTTP or crypto library can become obsolete _fast_…
Comment linking /mlkem768/
on “Go is still not good”Submitted Rustgo: Calling Rust from Go with near-zero overhead (2017) as a story · 185 points
HN discussionThe author of AGE has a great point in the below blog post [0]: If you use something like SOPS or just check age secrets into a git repository next to source code, you need an authentication story for the whole repository. Having authentication for the secrets will do nothing if the attacker can change the source code that decrypts and uses them. That story can simply be “we trust GitHub” like most projects. Encrypt…
Comment linking /age-authentication/
on “Time to start de-Appling”Submitted Go Cryptography State of the Union as a story · 174 points
HN discussionTelegram clients are open source. Anyone can verify that the client does the end-to-end encryption correctly. Telegram has had its own history of really weird issues with its encryption protocol, like the IGE, 2^64 complexity pre-computation attacks, IND-CCA vulnerability and whatever the hell this was https://words.filippo.io/dispatches/telegram-ecdh/ But these are not the big issues here. The issues Green's blog p…
Comment linking /dispatches/telegram-ecdh/
on “Is Telegram really an encrypted messaging app?”Submitted The most backdoor-looking bug I’ve ever seen (2021) as a story · 173 points
HN discussionIn the case of Telegram, MTProto’s implementation leaves a lot to be desired[1][2]. Additionally, home rolled crypto does not usually get the kind of security review from the cryptography community which makes it very likely that bugs of all kinds exist. [1] https://words.filippo.io/dispatches/telegram-ecdh/ [2] http://unhandledexpression.com/2013/12/17/telegram-stand-bac...
Comment linking /dispatches/telegram-ecdh/
on “Telegram has launched a pretty intense campaign to malign Signal as insecure”Submitted Running a Certificate Transparency log as a story · 160 points
HN discussionhttps://words.filippo.io/dispatches/telegram-ecdh/ EDIT: discussed on HN: https://news.ycombinator.com/item?id=40315274
Comment linking /dispatches/telegram-ecdh/
on “Telegram has launched a pretty intense campaign to malign Signal as insecure”Submitted Cross-Site Request Forgery as a story · 156 points
HN discussionisn’t telegram the one that uses a wonky/sus custom encryption algorithm? https://words.filippo.io/dispatches/telegram-ecdh/
Comment linking /dispatches/telegram-ecdh/
on “Telegram has launched a pretty intense campaign to malign Signal as insecure”Submitted The most backdoor-looking bug I've ever seen (2021) as a story · 145 points
HN discussionThere is potentially another option: use the midstack inliner to move the allocation from the heap to the stack of the calling function: https://words.filippo.io/efficient-go-apis-with-the-inliner/ As long as the global slice is never mutated, the current approach is probably fine, but it is definitely a semantic change to the code.
Comment linking /efficient-go-apis-with-the-inliner/
on “Making a Go program faster with a one-character change”Submitted So I lost my OpenBSD FDE password (2016) as a story · 140 points
HN discussionHere's one from Filippo The Most Backdoor-Looking Bug I’ve Ever Seen - https://words.filippo.io/telegram-ecdh/
Comment linking /telegram-ecdh/
on “Telegram Desktop vulnerability allowed any user's file to be stolen”Submitted Encrypting files with passkeys and age as a story · 136 points
HN discussionThat is probably true, when you live in a society where you probably still want some money for your work. The greater implications of that might have something to do with how we get articles like "Software below the poverty line": https://staltz.com/software-below-the-poverty-line.html Or maybe the revelations about how "well" supported the people who maintained Log4j were from the open source community: https://wor…
Comment linking /professional-maintainers/
on “Nutanix Objects violates MinIO’s open source license”Submitted Encrypting files with passkeys and age as a story · 131 points
HN discussion