Reference Library

Encryption

Encryption standards, algorithms, and protocols, from the first ciphers to post-quantum work

Media

Podcasts and Talks

Research

Foundational Papers and Standards

1980s - Foundational Cryptography

  1. DES (Data Encryption Standard) - 56-bit symmetric block cipher standard - NIST/NBS (1977, active through 1980s)
  2. RSA Public Key Cryptography - First practical public-key cryptosystem - RSA Security (1977, standardized 1980s)
  3. FIPS 46 - Data Encryption Standard official publication - NIST (1977)
  4. FIPS 81 - DES Modes of Operation - NIST (1980)
  5. ISO/IEC 9796 - Digital signature scheme with message recovery - ISO (1987)
  6. X.509 v1 - Public key certificate format - ITU-T (1988)
  7. PKCS #1 - RSA Cryptography Standard - RSA Labs (1988)
  8. Diffie-Hellman Key Exchange - Key agreement protocol - IEEE (1976, widely adopted 1980s)
  9. ElGamal Encryption - Public-key cryptosystem - Academic/Taher Elgamal (1985)
  10. ISO/IEC 8730 - Banking key management - ISO (1986)

1990s - Internet Cryptography Era

  1. Triple DES (3DES) - Enhanced DES with 112/168-bit keys - NIST (1999)
  2. FIPS 186 - Digital Signature Standard (DSS) - NIST (1994)
  3. SHA-1 - 160-bit cryptographic hash function - NIST (1995)
  4. SSL v2/v3 - Secure Sockets Layer protocol - Netscape (1995/1996)
  5. PGP (Pretty Good Privacy) - Email encryption standard - Phil Zimmermann/RFC 1991 (1991)
  6. S/MIME v2 - Secure email standard - RSA/IETF RFC 2311 (1998)
  7. X.509 v3 - Enhanced certificate standard - ITU-T (1996)
  8. PKCS #1 v2.0 - Updated RSA standard - RSA Labs (1998)
  9. PKCS #5 - Password-based encryption - RSA Labs (1993)
  10. PKCS #7 - Cryptographic Message Syntax - RSA Labs (1993)
  11. PKCS #11 - Cryptographic Token Interface (PKCS #11) - RSA Labs (1995)
  12. RFC 1321: MD5 - Message-Digest Algorithm - IETF (1992)
  13. RFC 2104: HMAC - Keyed-hashing for message authentication - IETF (1997)
  14. ISO/IEC 9797 - Message Authentication Codes - ISO (1994)
  15. ISO/IEC 11770 - Key management framework - ISO (1996)
  16. AES Competition Announcement - Call for advanced encryption standard - NIST (1997)
  17. Blowfish Algorithm - Fast block cipher - Bruce Schneier (1993)
  18. RC4 - Stream cipher (widely used in SSL) - RSA (1987, leaked 1994)
  19. FIPS 140-1 - Cryptographic module validation - NIST (1994)
  20. IPsec (RFC 2401-2412) - IP layer encryption and authentication - IETF (1998)

2000-2005 - AES and Modern Standards

  1. AES (Advanced Encryption Standard) - Rijndael algorithm, 128/192/256-bit - NIST/FIPS 197 (2001)
  2. FIPS 140-2 - Enhanced cryptographic module security requirements - NIST (2001)
  3. TLS 1.0 - Transport Layer Security (SSL successor) - IETF RFC 2246 (1999)
  4. TLS 1.1 - Updated transport security - IETF RFC 4346 (2006)
  5. SHA-2 Family - SHA-224, SHA-256, SHA-384, SHA-512 - NIST/FIPS 180-2 (2001)
  6. FIPS 186-2 - Updated Digital Signature Standard - NIST (2000)
  7. RFC 3447: PKCS #1 v2.1 - RSA with OAEP padding - IETF (2003)
  8. RFC 3268: AES Ciphersuites for TLS - AES in TLS - IETF (2002)
  9. OpenPGP (RFC 2440) - Open standard for PGP - IETF (1998)
  10. XML Encryption (W3C) - XML data encryption - W3C (2002)
  11. XML Signature (W3C) - XML digital signatures - W3C (2002)
  12. ISO/IEC 18033 - Encryption algorithms standard - ISO (2005)
  13. NIST SP 800-38A - Block cipher modes of operation - NIST (2001)
  14. NIST SP 800-38B - CMAC (block cipher MAC) - NIST (2005)
  15. NIST SP 800-56A - Key establishment using discrete logarithm - NIST (2006)
  16. ECC (Elliptic Curve Cryptography) - FIPS 186-2 appendix - NIST (2000)
  17. Camellia Block Cipher - 128-bit block cipher - NTT/Mitsubishi (2000)
  18. WPA/WPA2 - Wi-Fi Protected Access encryption - Wi-Fi Alliance (2003/2004)
  19. Suite B Cryptography - NSA cryptographic standards - NSA (2005)
  20. FIPS 198 - Keyed-Hash Message Authentication Code (HMAC) - NIST (2002)

2006-2010 - Elliptic Curve and Hash Evolution

  1. TLS 1.2 - Major transport security update - IETF RFC 5246 (2008)
  2. SHA-3 Competition - Call for new hash algorithm - NIST (2007)
  3. FIPS 186-3 - DSS with expanded ECC support - NIST (2009)
  4. NIST SP 800-90A - Random number generation - NIST (2007)
  5. NIST SP 800-57 - Key management recommendations - NIST (2007)
  6. NIST SP 800-56B - Key establishment using integer factorization - NIST (2009)
  7. NIST SP 800-38C - CCM mode (counter with CBC-MAC) - NIST (2004)
  8. NIST SP 800-38D - GCM and GMAC modes - NIST (2007)
  9. RFC 5288: AES-GCM for TLS - Authenticated encryption in TLS - IETF (2008)
  10. RFC 5639: ECC Brainpool Curves - European ECC curves - IETF (2010)
  11. ChaCha20 - Stream cipher alternative to AES - D.J. Bernstein (2008)
  12. Poly1305 - Message authentication code - D.J. Bernstein (2005)
  13. PBKDF2 - Password-based key derivation - RFC 2898 (2000)
  14. bcrypt - Password hashing function - OpenBSD (1999, widely adopted 2000s)
  15. ISO/IEC 29192 - Lightweight cryptography - ISO (2012)
  16. RFC 5054: SRP for TLS - Secure Remote Password - IETF (2007)
  17. NIST SP 800-108 - Key derivation using pseudorandom functions - NIST (2009)
  18. IEEE 1363 - Public-key cryptography standards - IEEE (2000)
  19. ANSI X9.62 - Elliptic Curve Digital Signature Algorithm (ECDSA) - ANSI (1999)
  20. FIPS 140-3 - Updated cryptographic module requirements - NIST (2009, effective 2019)

2011-2015 - Mobile and Cloud Encryption

  1. SHA-3 (Keccak) - New cryptographic hash standard - NIST/FIPS 202 (2015)
  2. TLS 1.3 Draft - Major security and performance overhaul - IETF (2013-2015)
  3. FIPS 186-4 - Current Digital Signature Standard - NIST (2013)
  4. RFC 6090: Fundamental ECC - ECC implementation guidance - IETF (2011)
  5. RFC 7748: Curve25519 and Curve448 - Modern elliptic curves - IETF (2016)
  6. RFC 7539: ChaCha20-Poly1305 - AEAD cipher suite - IETF (2015)
  7. NIST SP 800-56C - Key derivation through extraction-then-expansion - NIST (2011)
  8. NIST SP 800-52 Rev 1 - TLS server configuration guidelines - NIST (2014)
  9. NIST SP 800-175B - Cryptographic algorithm validation - NIST (2016)
  10. Perfect Forward Secrecy (PFS) - Implementation guidelines - IETF/Industry (2011-2013)
  11. RFC 7465: Prohibiting RC4 - Deprecating weak cipher - IETF (2015)
  12. scrypt - Memory-hard password hashing - RFC 7914 (2016)
  13. Argon2 - Modern password hashing winner - Password Hashing Competition (2015)
  14. NIST SP 800-38E - XTS-AES mode for storage encryption - NIST (2010)
  15. NIST SP 800-38F - Key wrapping modes - NIST (2012)
  16. JOSE (JSON Web Encryption) - RFC 7516 - IETF (2015)
  17. JWS (JSON Web Signature) - RFC 7515 - IETF (2015)
  18. JWK (JSON Web Key) - RFC 7517 - IETF (2015)
  19. ACME Protocol - Automated certificate management - IETF RFC 8555 (2015)
  20. CT (Certificate Transparency) - RFC 6962 - IETF (2013)

2016-2020 - Quantum Concerns and Modern Protocols

  1. TLS 1.3 - Modern transport layer security - IETF RFC 8446 (2018)
  2. NIST Post-Quantum Cryptography Project - Quantum-resistant algorithm competition - NIST (2016-2020)
  3. FIPS 180-4 - Secure Hash Standard (current) - NIST (2015)
  4. NIST SP 800-57 Part 1 Rev 5 - Key management best practices - NIST (2020)
  5. NIST SP 800-52 Rev 2 - TLS configuration guidelines - NIST (2019)
  6. RFC 8017: PKCS #1 v2.2 - Current RSA standard - IETF (2016)
  7. RFC 8032: EdDSA (Ed25519) - Edwards-curve digital signatures - IETF (2017)
  8. WireGuard VPN Protocol - Modern VPN with Noise protocol - Jason Donenfeld (2018)
  9. Noise Protocol Framework - Modern cryptographic protocol framework - Trevor Perrin (2018)
  10. NIST SP 800-133 Rev 2 - Cryptographic key generation - NIST (2020)
  11. NIST SP 800-38G - Format-preserving encryption - NIST (2016)
  12. RFC 7905: ChaCha20-Poly1305 for TLS - AEAD for TLS 1.2 - IETF (2016)
  13. BLAKE2 - Fast cryptographic hash function - RFC 7693 (2015)
  14. Encrypted SNI (ESNI) - TLS privacy enhancement - IETF Draft (2018)
  15. DNS over TLS (DoT) - RFC 7858 - IETF (2016)
  16. DNS over HTTPS (DoH) - RFC 8484 - IETF (2018)
  17. Age Encryption - Modern file encryption tool - Filippo Valsorda (2019)
  18. NIST SP 800-77 Rev 1 - IPsec VPN security - NIST (2020)
  19. BSI TR-02102 - German cryptographic standards - BSI (2020)
  20. WPA3 - Latest Wi-Fi security protocol - Wi-Fi Alliance (2018)

2021-2025 - Post-Quantum and Current Standards (Active)

  1. NIST FIPS 203: ML-KEM - Module-Lattice-Based Key Encapsulation (Crystals-KYBER) - NIST (2024)
  2. NIST FIPS 204: ML-DSA - Module-Lattice-Based Digital Signature (Crystals-DILITHIUM) - NIST (2024)
  3. NIST FIPS 205: SLH-DSA - Stateless Hash-Based Digital Signature (SPHINCS+) - NIST (2024)
  4. NIST SP 800-208 - Stateful Hash-Based Signatures (LMS, XMSS) - NIST (2020)
  5. NIST SP 800-186 - Discrete logarithm-based crypto (current) - NIST (2023)
  6. NIST SP 800-56C Rev 2 - Key derivation methods - NIST (2020)
  7. NIST SP 800-57 Part 2 Rev 1 - Best practices for key management - NIST (2019)
  8. NIST SP 800-131A Rev 2 - Transitioning to cryptographic algorithms - NIST (2019)
  9. RFC 9180: HPKE - Hybrid Public Key Encryption - IETF (2022)
  10. RFC 9325: Deprecating MD5 and SHA-1 - Hash function sunset - IETF (2022)
  11. TLS 1.3 Post-Quantum - Hybrid PQ/classical key exchange - IETF Draft (2023-2024)
  12. NSA CNSA 2.0 - Commercial National Security Algorithm Suite (quantum-ready) - NSA (2022)
  13. Encrypted Client Hello (ECH) - Privacy enhancement for TLS - IETF Draft (2023)
  14. FIPS 140-3 Implementation - Current cryptographic module validation - NIST (2019, active 2021+)
  15. ACVP (Automated Crypto Validation Protocol) - Modern cryptographic testing - NIST (2021)
  16. NIST IR 8309 - Status report on first round PQC candidates - NIST (2020)
  17. NIST IR 8413 - Status report on third round PQC candidates - NIST (2022)
  18. BSI Migration to PQC - German post-quantum migration guide - BSI (2023)
  19. ANSSI Post-Quantum Guidelines - French cryptographic agency PQC guidance - ANSSI (2022)
  20. ETSI White Paper on Quantum Safe Cryptography - European PQC roadmap - ETSI (2021)
  21. NIST SP 1800-16 - Certificate transparency implementation - NIST (2020)
  22. RFC 9001: QUIC-TLS - TLS 1.3 for QUIC transport - IETF (2021)
  23. ISO/IEC 29192-2 - Lightweight block ciphers - ISO (2019)
  24. ISO/IEC 18033-3:2022 - Updated encryption algorithms - ISO (2022)
  25. CISA Quantum Readiness Roadmap - Federal PQC transition guidance - CISA (2023)

Encryption Implementation Guides (Active 2025)

  1. NIST Cryptographic Standards and Guidelines - Comprehensive crypto guidance portal - NIST
  2. OpenSSL Documentation - Industry-standard crypto library guide - OpenSSL Project
  3. BoringSSL Guide - Google's SSL/TLS implementation - Google
  4. LibreSSL Documentation - OpenBSD crypto implementation - OpenBSD
  5. Bouncy Castle Crypto APIs - Java/C# cryptography implementation - Legion of Bouncy Castle
  6. Microsoft CNG (Cryptography Next Generation) - Windows crypto platform - Microsoft
  7. Apple CryptoKit - Swift cryptography framework - Apple
  8. Go crypto/tls Package - Golang TLS implementation - Go Team
  9. Rust crypto Libraries (RustCrypto) - Memory-safe crypto implementations - RustCrypto Project
  10. Mozilla Security Guidelines - TLS and crypto best practices - Mozilla
  11. OWASP Cryptographic Storage Cheat Sheet - Secure crypto implementation - OWASP
  12. OWASP Transport Layer Protection Cheat Sheet - TLS configuration - OWASP
  13. SSL Labs Server Test Guide - TLS configuration assessment - Qualys
  14. CryptCheck - Crypto configuration analysis - Aeris/CryptCheck
  15. NIST Cryptographic Algorithm Validation Program (CAVP) - Crypto testing standards - NIST

Key Encryption Resource Repositories

Request an Introduction