Filippo Valsorda
Subscribe to Cryptography Dispatches for more!

Benchmarking RSA Key Generation

frood, an Alpine initramfs NAS

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!