Filippo Valsorda
Subscribe to Cryptography Dispatches for more!

Accumulated Test Vectors

The FIPS Compliance of HKDF

Let’s All Agree to Use Seeds as ML-KEM Keys

age Plugins

Geomys, a blueprint for a sustainable open source maintenance firm

XAES-256-GCM

My Maintenance Policy

PINs for Cryptography with Hardware Secure Elements

Post-quantum Cryptography for the Go Ecosystem

Enough Polynomials and Linear Algebra to Implement Kyber

Why We Don’t Generate Elliptic Curves Every Day

Announcing the $12k NIST Elliptic Curves Seeds Bounty

I want XAES-256-GCM/11

A Cryptographic Near Miss

Planning Go 1.21 Cryptography Work

Avoid The Randomness From The Sky

ssh whoami.filippo.io

Go 1.20 Cryptography

My age+YubiKeys Password Management Solution

A GC-Friendly Go Interning Cache

Why Did the OpenSSL Punycode Vulnerability Happen

The Reciprocal Value of Access to Maintainers

age and Authenticated Encryption

Planning Go 1.20 Cryptography Work

A Wide Reduction Trick

KEMs and Post-Quantum age

Automatic Cipher Suite Ordering in crypto/tls

The Most Backdoor-Looking Bug I’ve Ever Seen

Re-Deriving the edwards25519 Decoding Formulas

Reconstruct Instead of Validating

NaCl Is Not a High-Level API

Registries Considered Harmful

Replace PGP With an HTTPS Form

DSA Is Past Its Prime

Is X25519 Associative? Sometimes!

OpenSSH 8.2 Just Works with U2F/FIDO2 Security Keys

New Crypto in Go 1.14

The Linux CSPRNG Is Now Good!

Hello World, and OpenPGP Is Broken

Subscribe to Cryptography Dispatches for more!