Library
Where this content comes from — and where to go deeper
Every module on this site is written from the official standards, RFCs, and original papers that actually define these algorithms. Worked examples (like the toy RSA and Diffie-Hellman key pairs) are computed directly from those specifications, not copied from a textbook.
Alongside those primary sources, this library also collects the sites, blogs, courses, and books worth reading once a module raises more questions than it answers — search or filter by type to find either.
The explanatory text itself was drafted with Claude (Anthropic), synthesizing the sources below rather than quoting them, and reviewed for technical accuracy during writing. If you spot something that doesn't match the underlying spec, treat the spec as authoritative — and consider it a bug in this site worth reporting.
All 132 entries
Foundational papers
The original papers that introduced the algorithms and attacks covered here.
C. E. Shannon, Bell System Technical Journal, 1949
The paper that put cryptography on a mathematical footing, and proved the one-time pad achieves perfect secrecy.
W. Diffie & M. Hellman, IEEE Transactions on Information Theory, 1976
The original public-key key-exchange paper.
R. Rivest, A. Shamir, L. Adleman, Communications of the ACM, 1978
The original RSA paper.
T. ElGamal, IEEE Transactions on Information Theory, 1985
The original ElGamal encryption and signature paper.
P. W. Shor, Proceedings of the 35th Annual Symposium on Foundations of Computer Science, 1994
The paper behind the entire post-quantum migration this site is framed around.
D. J. Bernstein, Fast Software Encryption (FSE), 2005
The original Poly1305 paper.
M. Bellare & C. Namprempre, ASIACRYPT 2000
Why encrypt-then-MAC is the generically secure way to combine a cipher and a MAC.
S. Vaudenay, EUROCRYPT 2002
The original padding oracle attack.
F. B. Durak & S. Vaudenay, CRYPTO 2017
The slide attack that sent FF3 back to NIST for revision.
T. Beyne, CRYPTO 2021
Practical distinguishing and message-recovery attacks on FF3-1 over small domains.
N. Heninger, Z. Durumeric, E. Wustrow, J. A. Halderman, USENIX Security 2012
Found millions of real-world RSA and DSA keys shared across devices, traced directly to boot-time entropy starvation on embedded Linux.
Standards & RFCs
The NIST, IETF, EMVCo, PCI, OASIS, ETSI, EU, and certification-program documents that actually define each algorithm, protocol, product evaluation, and trust service.
NIST
Withdrawn in 2005 once its 56-bit key became exhaustively searchable; superseded by AES.
NIST
NIST
Covers RSA and ECDSA signature parameters.
IETF
OAEP and PKCS#1 v1.5 padding for encryption; PSS and PKCS#1 v1.5 for signatures.
IETF
Ed25519 and Ed448, with the test vectors the Ed25519 Playground tool loads.
IETF
Derives the per-signature nonce from the private key and message hash, so a weak RNG can't cause a nonce repeat.
NIST
Covers Diffie-Hellman and ECDH.
NIST
IETF
PBKDF2.
IETF / IRTF CFRG
NIST
NIST's adoption of RFC 2104's HMAC.
IETF
The HMAC-SHA-256 worked example in the MACs module is its test case 2.
NIST
IETF
AES-CMAC with subkey and tag test vectors.
NIST
Defines ECB, CBC, CFB, OFB and CTR. Appendix F's test vectors are the worked examples in the modes module.
NIST
NIST
NIST's approval of IEEE 1619's XTS-AES for disk encryption.
NIST, 2016
The published FF1 and FF3 specification. Its FF1 sample vectors are what the FF1 Playground tool is tested against.
NIST, February 2025
The revision that keeps FF1 only, drops FF3 and FF3-1, and disallows floating point in FF1 implementations.
IETF
The standard AEAD interface (key, nonce, plaintext, associated data) used by TLS 1.3 and most later protocols.
IETF
NIST
Defines the min-entropy estimators (including Most Common Value, Collision, and Markov) behind the Entropy Testing Playground tool.
NIST
The DRBG standard at the center of the Dual_EC_DRBG backdoor episode covered in the Standards section's NIST page.
IETF
IETF
IETF
IETF
IETF
W3C Recommendation
The WebAuthn standard passkeys are built on.
IETF
IETF
AES Key Wrap extended to keys that aren't a multiple of 8 bytes; the symmetric half of the RSA-OAEP + AES-KWP hybrid that cloud KMSs accept for importing private keys (BYOK).
IETF
The protocol behind Let's Encrypt and automated certificate issuance.
IETF
OASIS Standard
OASIS Standard
The current Cryptoki specification: the object model, attributes (CKA_SENSITIVE, CKA_EXTRACTABLE), and the full function list this site's PKCS#11 use case and Playground tool are built from.
IETF
IETF
ISO (TC 68)
Defines the ISO-0/ISO-3 PIN block formats and PAN-binding this site's PIN block use case and Playground tool implement.
EMVCo
The core chip-card specification — ICC Master Key derivation and the ARQC/ARPC cryptogram exchange this site's EMV Playground tool is built from.
EMVCo
The AReq/ARes message flow and JWS signing behind this site's 3DS Playground tool. CAVV generation itself is explicitly left issuer/network-proprietary by this spec — see the tool's own honesty note.
EMVCo
Domain-bound tokens, Token Requestor IDs, and the token-vault model this site's network tokenization Playground tool demonstrates.
PCI Security Standards Council
The data-handling standard behind the CVV-storage prohibition covered in this site's CVV/CVC use case.
PCI Security Standards Council
Operational requirements for the TPK/ZPK key hierarchy and HSM PIN-translation operations covered in the PIN block use case.
ASC X9 (2017)
The US baseline for payment key management: key components, dual control and split knowledge, key check values (including the AES-CMAC KCV), and key hierarchies. Its 2009 edition defines TDES DUKPT, with the Annex A test data this site's DUKPT tool is tested against. Paywalled.
ISO (TC 68/SC 2), 2023
The international counterpart to X9.24: the full key life cycle, key separation, substitution prevention, and the hardware that manages keys. The 2023 edition replaces the earlier multi-part ISO 11568. Paywalled.
PCI Security Standards Council
The device standard for payment HSMs: tamper response, dual control over sensitive functions, key-block support, and (since v4.0) requirements for cloud HSM services.
Accredited Standards Committee X9
The 2017 edition defines AES DUKPT (and keeps TDES DUKPT as an annex). Its supplement test vectors for AES-128 and AES-256 BDKs are what this site's DUKPT tool is tested against. Sold by X9; not freely available.
NIST, 2019
The current US and Canadian module standard. Short on its own: it adopts ISO/IEC 19790 and 24759 and defers the details to the SP 800-140 series.
NIST, 2020
How the CMVP modifies ISO/IEC 24759's test requirements; its companions 800-140A through F cover documentation, the Security Policy, approved functions, key establishment, authentication, and non-invasive attacks.
ISO/IEC JTC 1/SC 27
The 2012 edition is the one FIPS 140-3 adopts for its requirements; ISO/IEC 24759 is its test-method companion. Paywalled.
NIST & Canadian Centre for Cyber Security
The searchable list of validated modules, their Security Policies, the modules-in-process queue, and the Implementation Guidance.
NIST
Algorithm-level validation, via the automated ACVP protocol, that every module certificate builds on.
NIST
The CMVP's own timeline for moving from FIPS 140-2 to FIPS 140-3, including when FIPS 140-2 certificates moved to the Historical list.
Common Criteria Recognition Arrangement (also published as ISO/IEC 15408)
The five parts of CC:2022 and the CEM evaluation methodology, free to download from the portal; the ISO/IEC 15408 and 18045 editions carry the same content.
Common Criteria Recognition Arrangement
The CCRA's list of certified products and protection profiles, with each product's Security Target and certification report.
US Common Criteria Evaluation and Validation Scheme
The US scheme: protection-profile-only evaluations with no EALs, and the product list US national security systems buy from.
European Commission, 2024
Establishes EUCC, the EU's Common Criteria-based certification scheme under the Cybersecurity Act, applicable since 27 February 2025.
CEN, 2018
The Common Criteria protection profile for HSMs that trust service providers use for signing, sealing, and certificate issuance under eIDAS. Paywalled.
European Parliament and Council, 2014
The original eIDAS Regulation on electronic identification and trust services. Articles 25 and 26 (signature tiers), 20 to 24 (qualified providers and trusted lists), 29 and 30 with Annex II (QSCDs). Read the consolidated version for the text as amended in 2024.
European Parliament and Council, 2024
The 2024 amendment that adds the EU Digital Identity Wallet (Articles 5a to 5f), remote QSCD management (29a), the browser rules for QWACs (45 and 45a), and three new trust services. In force since 20 May 2024.
European Commission
Browse every Member State's trusted list of qualified providers and services, and the Commission's list of QSCDs.
ETSI
The baseline every TSP policy builds on: risk assessment, personnel, physical and network security, incident handling, and termination plans. Free to download.
ETSI
Defines the EU qualified certificate policies (QCP-n, QCP-n-qscd, QCP-l, QCP-w and others) on top of EN 319 411-1. Cited as a reference standard by Implementing Regulation (EU) 2025/1943.
ETSI
The shared validation model behind CAdES, XAdES, PAdES, and JAdES, and the reference for Implementing Regulation (EU) 2025/1945 on validating qualified signatures and seals.
ETSI
The PDF signature format and its B-B, B-T, B-LT, and B-LTA baseline levels. Its siblings are EN 319 122 (CAdES), EN 319 132 (XAdES), and TS 119 182-1 (JAdES).
ETSI
The signed XML format Member States use to publish which providers and services hold qualified status, and since when.
ETSI
Operational requirements for remote signing services, and the basis of Implementing Regulation (EU) 2025/1567's reference standards for remote QSCD management.
European Commission, 2016
Lists the Common Criteria protection profiles (EN 419211) used to certify local QSCDs such as smart cards under Article 30.
European Commission, 2025
Reference standards and specifications for the qualified service of managing remote signature and seal creation devices (Article 29a), building on ETSI TS 119 431-1.
European Commission and Member States
The technical blueprint for EU Digital Identity Wallets: PID and attestation formats (ISO/IEC 18013-5 mdoc, SD-JWT VC), issuance and presentation protocols, and wallet security requirements.
CA/Browser Forum
The rules for publicly trusted code-signing certificates: hardware key storage since June 2023, and a 460-day maximum validity for certificates issued from March 2026 (Ballot CSC-31).
IETF
How a Time-Stamping Authority binds a hash to a trusted time, which lets code signatures outlive their certificates.
IETF
The SignedData structure (the successor to PKCS #7) that Authenticode and many other signing formats are built on.
UEFI Forum
Defines Secure Boot's PK, KEK, db, and dbx variables and how firmware verifies boot images against them.
NIST, 2018
Roots of trust and the protect, detect, and recover model for platform firmware.
Trusted Computing Group
Which boot components are measured into which TPM PCRs, and the event log format verifiers replay.
Microsoft
The 2026 expiry of the 2011 Secure Boot certificates and their 2023 replacements, with dates for each.
NIST
NIST
NIST
NIST
Source of the key-size/security-level equivalence table used in this catalog.
NIST
Home of every FIPS and SP 800 document cited throughout this library.
Internet Engineering Task Force
Home of the RFC series and its working groups.
IETF
Defines what MUST, SHOULD, and MAY mean inside every other RFC that uses them.
International Organization for Standardization
Publishes ISO/IEC 27001, 18033, 19790, and the rest of the JTC 1/SC 27 security series jointly with the IEC.
Sites & practice
Blogs, courses, and hands-on practice sites worth reading next.
Australian National University
The live quantum-random bit source behind the Entropy Testing Playground tool's "Fetch from ANU QRNG" mode.
Leon Lynch (open source, LGPL-2.1)
An open-source C implementation of X9.24-3:2017 for both TDES and AES DUKPT, whose test suite transcribes the standards' published test data.
Open Source Security Foundation (OpenSSF)
Keyless signing for open-source artifacts: short-lived certificates from Fulcio and a public transparency log, Rekor.
CryptoHack
A categorized library of cryptography challenges, from classical ciphers through elliptic curves and real-world protocol flaws.
Cryptopals
A structured set of exercises, organized into progressive sets, that build real attacks against AES, RSA, Diffie-Hellman, and more from scratch.
Bruce Schneier
Long-running blog on crypto policy, applied security, and the occasional deep dive into a broken protocol.
Matthew Green
A Johns Hopkins cryptographer writing accessibly about TLS, protocol security, and why real-world crypto keeps breaking.
Daniel J. Bernstein
The designer of ChaCha20 and Curve25519, writing directly about the algorithms covered in this catalog.
International Association for Cryptologic Research
The preprint server where new cryptography research — including attacks on things covered here — appears first.
IACR
An annual conference bridging cryptography research and real deployments — talks and proceedings are free.
Dan Boneh, Stanford (Coursera)
The standard free introductory cryptography course — covers the same primitives this site does, with formal rigor.
MIT
Free lecture notes and problem sets from MIT's cryptography and number theory courses.
Stack Exchange community
A Q&A site where working cryptographers answer specific, technical questions — good for when a module raises more questions than it answers.
CrypTool project
Open-source, interactive software for experimenting with classical and modern ciphers and cryptanalysis techniques.
NIST
The official hub for the FIPS and Special Publications this library cites throughout.
Books
Textbooks and longer reads for when a module raises more questions than it answers.
Bruce Schneier
The classic reference on cryptographic protocols, algorithms, and source code — dated in places, foundational everywhere else.
Jean-Philippe Aumasson
A practical, modern guide to encryption — symmetric, asymmetric, and the protocols built from them.
David Wong
A hands-on guide to the cryptographic primitives and protocols actually deployed today, not just the textbook versions.
Niels Ferguson, Bruce Schneier & Tadayoshi Kohno
Design principles and hard-won practical guidance for building cryptographic systems that survive contact with reality.
Christof Paar & Jan Pelzl
A textbook covering essentially the same algorithm set as this site — AES, RSA, ECC, hashing — with more mathematical depth.
Dan Boneh & Victor Shoup
Comprehensive, rigorous, and free — covers private-key encryption, public-key encryption, and digital signatures in full.
Simon Singh
The most accessible history of cryptography available — from the scytale to the Enigma to modern public-key cryptography.
David Kahn
The definitive, exhaustive history of cryptography up to its 1967 publication — the book that founded the field of crypto history.