For educators
Teach with Crypto Lab
Course modules, worksheets and citation details for instructors who want to use Crypto Lab exhibits in class. Nothing here needs an account.
Who this is for
Instructors in computer science, security and information science who want students to see a cryptographic mechanism work, and fail, rather than read about it. Each exhibit isolates one idea and runs in the browser; the modules below group a few of them into a sequence that fits one or two class meetings.
If you are learning on your own, the catalog’s learning paths are built for you. Modules are built for a course: each one states its audience, prerequisites and outcomes, and gives discussion questions and public instructor notes.
Modules
This is a menu, not a curriculum. Take one module, take one exhibit from a module, or reorder them to fit your course. Class times are estimates for the core sequence; extensions are optional.
An exhibit taken on its own is still a whole thing to assign: it has its own address to link or paste into a syllabus, and its own citation.
-
Security & symmetric encryption
Fits the modes-of-operation and misuse week of an upper-division applied-cryptography or computer-security course. About 87 minutes of core lab time: two 50-minute meetings with little slack, or two 75-minute meetings comfortably. An introductory security unit that stops after AES Modes is a different, shorter assignment — not this module with the last two exhibits skipped mid-sequence.
-
Public-key & signatures
Fits the public-key unit of an undergraduate computer security, network security, or applied cryptography course. The nonce-lattice extension suits a cryptanalysis elective or an advanced assignment for students comfortable with vectors and bases.
-
Key exchange & secure channels
Fits the key-exchange or TLS unit of an undergraduate computer networking, network security, or introductory cryptography course. The extension exhibit suits an upper-level security or formal-methods course that introduces symbolic protocol analysis.
-
Post-quantum transition
Upper-division undergraduate or graduate courses in computer security, applied cryptography or network security, covering the quantum threat to public-key cryptography and the move to ML-KEM and hybrid key exchange. About 117 minutes of core lab time: two meetings of 75 minutes, or three of 50 — not two of 50, which it overruns.
-
Library privacy, for iSchools
Fits an undergraduate or graduate LIS course on information ethics, privacy, or library systems and technology, as a two-meeting unit: about 69 minutes of core lab time, which fits two 50-minute meetings with room to discuss, while a single meeting works only in a 75-minute slot and leaves almost none. The shelf-oracle extension suits students who also take a technical or information-security elective.
For your syllabus
A line you can paste into a syllabus or an assignment:
Crypto Lab exhibits are teaching demonstrations, not production libraries. Do not use exhibit code to protect real data. https://crypto-lab.systemslibrarian.dev/teach/
How exhibits are checked
Each exhibit is its own repository and its own site, built and published by its own GitHub Actions workflow. The lab standard asks that a lab’s publish step wait for its unit tests, including known-answer tests from the specification it implements, and for a browser test suite, run through Playwright, that includes an automated accessibility scan (axe-core, WCAG 2.1 A and AA rules) of the built site. It also asks for a “claims” suite that checks what a page says against what the page computes.
Practice varies from lab to lab. Reading the workflow files that publish the labs on 2026-09-22, we found that most run both a unit suite and a browser suite, while some run only one of the two. Most test in Chromium only; a few also test in Firefox and WebKit, the engine behind Safari. Many labs have a claims suite and some do not. A green build therefore means different things for different labs.
What these checks do not establish: that an explanation teaches well, that a lab behaves the same in browsers its tests do not run, how it works with a screen reader or keyboard alone, or that its cryptography is free of mistakes its tests do not cover.
The worksheet drift check
Once a day, a scheduled job opens the live exhibit behind each worksheet and looks for every control the worksheet names. If one is missing, it opens an issue in this repository naming the worksheet, so a missing control is usually reported within a day of the change going live. It cannot stop a lab from publishing the change, and it cannot confirm that the lab still behaves the way the worksheet describes; it only confirms that the named controls are still on the page.
The pages under /teach/ are generated from data files in this repository, and a check in this repository’s CI fails when a generated page no longer matches its sources.
Accessibility
What is tested automatically
- In labs whose workflows include the browser suite, axe-core checks WCAG 2.1 A and AA rules against the built site before it is published, usually in Chromium only. Some labs add their own contrast and non-text checks.
- The catalog page was scanned with axe-core by hand on 2026-09-22, before and after the links to these pages were added; axe reported no violations either time. The catalog page has no automated accessibility check in CI.
- These teaching pages were scanned with axe-core by hand on 2026-09-22 before publication; axe reported no violations. They have no automated accessibility check in CI.
What is not tested automatically
A full keyboard-only walk through an exhibit, use with a screen reader, zoom and reflow, legibility on a classroom projector, motion and timing in animations, and cognitive load. These need a person.
Passing axe is not conformance. Automated rules find some kinds of barriers and cannot judge many others, so nothing on this site claims conformance with WCAG.
Reporting a barrier
Open a teaching material problem report and choose “Accessibility barrier”. Say which page or exhibit, which browser, which assistive technology if any, and what got in the way. If a student cannot use GitHub, an instructor can file the report for them.
Privacy and data
Nothing here requires an account, and there are no class rosters, no grade passback and no hosted answer keys. What follows records what the catalog and these pages actually contacted when they were observed, with the date.
What these pages contact
The catalog page (crypto-lab.systemslibrarian.dev) Observed 2026-09-22 in Chromium, driven by Playwright. Loaded the live page, scrolled to the end, waited for the network to go quiet, and recorded every request, cookie and web-storage key.
https://fonts.googleapis.com— web-font stylesheethttps://fonts.gstatic.com— web-font fileshttps://raw.githubusercontent.com— the award badge image
- Cookies: none set
- Browser storage: localStorage key "theme", set to "dark" so the page keeps its single dark theme
- Scripts from other origins: none
These teaching pages (crypto-lab.systemslibrarian.dev/teach/) Observed 2026-09-22 in Chromium, driven by Playwright. Loaded the live pages with tools/teach-observe.js (the landing page, the symmetric and library-privacy module pages and the Padding Oracle worksheet), scrolled to the end, waited for the network to go quiet, and recorded every request, cookie and web-storage key.
No requests to any other origin.
- Cookies: none set
- Browser storage: none used
- Scripts from other origins: none
What the exhibits contact
Each exhibit is a separate site on systemslibrarian.github.io and makes its own requests. Some labs load web fonts from Google Fonts. The lab standard has a lab write one localStorage key, theme, to keep its single dark theme, and some labs also store settings of their own, such as the last configuration used. Each module page lists what was observed for its exhibits, with the date, once they have been checked.
Blind Oracle is the exception the catalog itself names: its card says it has a live backend. When its page loads it contacts https://blind-oracle-api.onrender.com (a request to /health), and the numbers you encrypt are sent there as ciphertext, with a public evaluation key, for the server to add. Observed 2026-09-22 in Chromium, driven by Playwright; server address read from the lab's .env.production at commit 8dd04f298223.
Hosting
The catalog, these pages and the exhibits are served by GitHub Pages. For what GitHub records about visitors to Pages sites, see GitHub’s own documentation: GitHub Pages data collection.
How to cite
The collection
APA:
Clark, P. A. (2026). Crypto Lab (Version 2026.09.22) [Computer software]. https://crypto-lab.systemslibrarian.dev/
@misc{clark_crypto_lab_2026,
author = {Clark, Paul A.},
title = {Crypto Lab},
year = {2026},
version = {2026.09.22},
howpublished = {\url{https://crypto-lab.systemslibrarian.dev/}},
note = {Accessed [date accessed]}
}
Reference managers can also read the CITATION.cff file in the repository, and these pages carry Dublin Core and citation_* metadata.
A single exhibit
Exhibits change as they are improved, so the date you used one is what says which version you cite. It is filled in from your device’s clock when the page loads.
Some of these citations carry a year and some do not, and the difference is a record rather than a style. A module pins the exhibit commit its worksheet was checked against; where that commit’s date is recorded here, the citation carries its year. Where it is not yet recorded, the citation has no year field at all — deliberately not n.d.
, which would claim no date exists for the work. One does: each exhibit is a living page with a history. Omitting a field is honest where asserting an absence is not, and the retrieval date says which version you used either way.
An exhibit used in a course module also carries its citation on the module page, in that exhibit’s own row of the sequence table.
Open the group a title begins with:
Titles beginning A
Clark, P. A. Ablation Wire [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-ablation-wire/
Clark, P. A. Accumulator [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-accumulator/
Clark, P. A. AEGIS Gate [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-aegis-gate/
Clark, P. A. (2026). AES Modes [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-aes-modes/
Clark, P. A. Air Stream [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-air-stream/
Clark, P. A. Ascon [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-ascon/
Clark, P. A. Attestation Gate [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-attestation-gate/
Clark, P. A. Attribute Gate [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-attribute-gate/
Titles beginning B
Clark, P. A. Babel Hash [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-babel-hash/
Clark, P. A. BB84 [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-bb84/
Clark, P. A. Bcrypt Forge [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-bcrypt-forge/
Clark, P. A. Beacon Lock [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-beacon-lock/
Clark, P. A. Biham Lens [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-biham-lens/
Clark, P. A. BIKE Vault [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-bike-vault/
Clark, P. A. Bitcoin Script [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-bitcoin-script/
Clark, P. A. Bitcoin Wallet [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-bitcoin-wallet/
Clark, P. A. Blind Hello [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-blind-hello/
Clark, P. A. Blind Oracle [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-blind-oracle/
Clark, P. A. Blind Relay [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-blind-relay/
Clark, P. A. Blind Sign [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-blind-sign/
Clark, P. A. Broken Trust [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-broken-trust/
Clark, P. A. Bulletproofs [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-bulletproofs/
Titles beginning C
Clark, P. A. Card Trick [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-card-trick/
Clark, P. A. ChaCha20 Stream [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-chacha20-stream/
Clark, P. A. Chain of Trust [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-chain-of-trust/
Clark, P. A. Ciphertext Mirror [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-ciphertext-mirror/
Clark, P. A. CKKS Lab [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-ckks-lab/
Clark, P. A. Collision Vault [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-collision-vault/
Clark, P. A. Commit Gate [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-commit-gate/
Clark, P. A. Context Ward [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-context-ward/
Clark, P. A. Corrupted Oracle [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-corrupted-oracle/
Clark, P. A. Covert Channel Studio [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-covert-channel-studio/
Clark, P. A. Credential Veil [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-credential-veil/
Clark, P. A. Curve Lens [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-curve-lens/
Clark, P. A. Curve448 [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-curve448/
Titles beginning D
Clark, P. A. Dead Sea Cipher [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-dead-sea-cipher/
Clark, P. A. (2026). DH MITM [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-diffie-hellman-mitm/
Clark, P. A. Dilithium Reject [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-dilithium-reject/
Clark, P. A. Dilithium Seal [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-dilithium-seal/
Clark, P. A. DKG Gate [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-dkg-gate/
Clark, P. A. DNSSEC Chain [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-dnssec-chain/
Clark, P. A. Downgrade Wire [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-downgrade-wire/
Clark, P. A. DP Noise [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-dp-noise/
Clark, P. A. DRBG Arena [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-drbg-arena/
Titles beginning E
Clark, P. A. E91 [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-e91/
Clark, P. A. (2026). ECDSA Forge [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-ecdsa-forge/
Clark, P. A. Ed25519 Forge [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-ed25519-forge/
Clark, P. A. Educational RSA [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-rsa-educational/
Clark, P. A. ElGamal Plain [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-elgamal-plain/
Clark, P. A. Encrochat [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-encrochat/
Clark, P. A. Enigma Forge [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-enigma-forge/
Clark, P. A. Entropy Collapse [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-entropy-collapse/
Clark, P. A. Envelope KMS [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-envelope-kms/
Clark, P. A. Export Grade [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-export-grade/
Titles beginning F
Clark, P. A. Factor Forge [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-factor-forge/
Clark, P. A. Falcon Seal [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-falcon-seal/
Clark, P. A. Feistel Forge [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-feistel-forge/
Clark, P. A. FHE Arena [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-fhe-arena/
Clark, P. A. Fold Gate [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-fold-gate/
Clark, P. A. Format Ward [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-format-ward/
Clark, P. A. Frodo Vault [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-frodo-vault/
Clark, P. A. FROST Threshold [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-frost-threshold/
Clark, P. A. Frozen Heart [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-frozen-heart/
Titles beginning G
Clark, P. A. Garbled Gate [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-garbled-gate/
Clark, P. A. GG20 Wallet [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-gg20-wallet/
Clark, P. A. GGH Trapdoor [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-ggh-trapdoor/
Clark, P. A. Ghost Commit [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-ghost-commit/
Clark, P. A. (2026). Grover [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-grover/
Titles beginning H
Clark, P. A. Harvest Timeline [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-harvest-timeline/
Clark, P. A. (2026). Harvest Vault [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-harvest-vault/
Clark, P. A. Hash Zoo [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-hash-zoo/
Clark, P. A. HAWK [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-hawk/
Clark, P. A. (2026). Hidden Bit [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-hidden-bit/
Clark, P. A. HPKE Envelope [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-hpke-envelope/
Clark, P. A. HQC Timing [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-hqc-timing/
Clark, P. A. HQC Timing Break [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-hqc-timing-break/
Clark, P. A. HQC Vault [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-hqc-vault/
Clark, P. A. Hybrid Guide [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-hybrid-guide/
Clark, P. A. Hybrid PQC [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-hybrid-pqc/
Clark, P. A. Hybrid Sign [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-hybrid-sign/
Clark, P. A. Hybrid Wire [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-hybrid-wire/
Titles beginning I
Clark, P. A. IBE Gate [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-ibe-gate/
Clark, P. A. Icy DVRF [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-icy-dvrf/
Clark, P. A. Iron Letter [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-iron-letter/
Clark, P. A. Iron Serpent [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-iron-serpent/
Clark, P. A. Isogeny Atlas [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-isogeny-atlas/
Clark, P. A. Isogeny Gate [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-isogeny-gate/
Titles beginning J
Clark, P. A. J-UNIWARD [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-j-uniward/
Clark, P. A. Jevil [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-jevil/
Clark, P. A. JWT Forge [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-jwt-forge/
Titles beginning K
Clark, P. A. KDF Arena [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-kdf-arena/
Clark, P. A. KDF Chain [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-kdf-chain/
Clark, P. A. KEM Trap [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-kem-trap/
Clark, P. A. Kerberos v5 [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-kerberos/
Clark, P. A. Key Exchange [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-key-exchange/
Clark, P. A. Key Mirror [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-key-mirror/
Clark, P. A. KMAC Gate [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-kmac-gate/
Clark, P. A. KpqC Pair [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-kpqc-pair/
Clark, P. A. Kyber Vault [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-kyber-vault/
Clark, P. A. KyberSlash [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-kyberslash/
Titles beginning L
Clark, P. A. Lattice Builder [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-lattice-builder/
Clark, P. A. Lattice Fault [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-lattice-fault/
Clark, P. A. Lattice Gentle [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-lattice-gentle/
Clark, P. A. LLL Break [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-lll-break/
Clark, P. A. LMS Ledger [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-lms-ledger/
Clark, P. A. LMS/XMSS [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-lms-xmss/
Clark, P. A. LWE Hints [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-lwe-hints/
Titles beginning M
Clark, P. A. MAC Race [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-mac-race/
Clark, P. A. Masked Core [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-masked-core/
Clark, P. A. Matsui Line [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-matsui-line/
Clark, P. A. MAYO Seal [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-mayo-seal/
Clark, P. A. McEliece Gate [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-mceliece-gate/
Clark, P. A. Merkle Proofs [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-merkle-proofs/
Clark, P. A. Merkle Vault [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-merkle-vault/
Clark, P. A. Misty Lens [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-misty-lens/
Clark, P. A. MLS Group [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-mls-group/
Clark, P. A. Model Breach [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-model-breach/
Clark, P. A. MPCitH Sign [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-mpcith-sign/
Clark, P. A. Multivariate UOV [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-multivariate/
Clark, P. A. MuSig Gate [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-musig-gate/
Titles beginning N
Clark, P. A. Noise Pipe [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-noise-pipe/
Clark, P. A. (2026). Nonce Collision [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-nonce-collision/
Clark, P. A. Nonce Guard [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-nonce-guard/
Clark, P. A. (2026). Nonce Lattice [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-nonce-lattice/
Clark, P. A. NTRU Classic [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-ntru-classic/
Titles beginning O
Clark, P. A. Oblivious Shelf [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-oblivious-shelf/
Clark, P. A. OPAQUE Gate [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-opaque-gate/
Clark, P. A. ORAM Vault [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-oram-vault/
Clark, P. A. Order Leak [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-order-leak/
Clark, P. A. OT Gate [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-ot-gate/
Clark, P. A. OTP Vault [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-otp-vault/
Titles beginning P
Clark, P. A. Padding Oracle [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-padding-oracle/
Clark, P. A. Paillier Gate [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-paillier-gate/
Clark, P. A. Pairing Gate [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-pairing-gate/
Clark, P. A. PAKE Gate [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-pake-gate/
Clark, P. A. Patron Shield [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-patron-shield/
Clark, P. A. Phantom Vault [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-phantom-vault/
Clark, P. A. PKI Chain [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-pki-chain/
Clark, P. A. (2026). Point Arithmetic [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-ec-point-arithmetic/
Clark, P. A. Point Ledger [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-point-ledger/
Clark, P. A. Poly1305 MAC [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-poly1305-mac/
Clark, P. A. Polynomial Forge [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-polynomial-forge/
Clark, P. A. Power Trace [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-power-trace/
Clark, P. A. PQ Families [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-pq-families/
Clark, P. A. PQ Rotation [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-pq-rotation/
Clark, P. A. PQ TLS Handshake [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-pq-tls-handshake/
Clark, P. A. PQXDH Wire [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-pqxdh-wire/
Clark, P. A. Privacy Pass [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-privacy-pass/
Clark, P. A. Proof Tally [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-proof-tally/
Clark, P. A. Protocol Checker [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-protocol-checker/
Clark, P. A. Protocol Compose [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-protocol-compose/
Clark, P. A. PSI Gate [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-psi-gate/
Titles beginning Q
Clark, P. A. Quantum Entropy [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-quantum-entropy/
Clark, P. A. Quantum Vault KpqC [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-quantum-vault-kpqc/
Titles beginning R
Clark, P. A. Ratchet Wire [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-ratchet-wire/
Clark, P. A. Regex Veil — FTE [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-fte/
Clark, P. A. Rekey Relay [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-rekey-relay/
Clark, P. A. Reshare Circle [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-reshare-circle/
Clark, P. A. Ring Sign [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-ring-sign/
Clark, P. A. (2026). RSA Forge [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-rsa-forge/
Titles beginning S
Clark, P. A. Salamander [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-salamander/
Clark, P. A. Schnorr Forge [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-schnorr-forge/
Clark, P. A. Scloud+ Vault [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-scloud-vault/
Clark, P. A. Search Vault [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-search-vault/
Clark, P. A. Sector Vault [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-sector-vault/
Clark, P. A. Shadow Vault [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-shadow-vault/
Clark, P. A. Shamir Gate [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-shamir-gate/
Clark, P. A. Shamir vs FROST [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-shamir-vs-frost/
Clark, P. A. Shelf Oracle [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-shelf-oracle/
Clark, P. A. Shor [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-shor/
Clark, P. A. Signed Bytes [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-signed-bytes/
Clark, P. A. Silent Tally [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-silent-tally/
Clark, P. A. Simon's Period [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-simon-period/
Clark, P. A. Sleeve Check [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-sleeve-check/
Clark, P. A. SM2 Forge [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-sm2-forge/
Clark, P. A. SM9 Forge [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-sm9-forge/
Clark, P. A. SNARK Arena [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-snark-arena/
Clark, P. A. SPAKE Gate [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-spake-gate/
Clark, P. A. SPDZ Forge [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-spdz-forge/
Clark, P. A. SPHINCS+ Ledger [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-sphincs-ledger/
Clark, P. A. Sphinx Mix [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-sphinx-mix/
Clark, P. A. Split Point [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-split-point/
Clark, P. A. SSH Handshake [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-ssh-handshake/
Clark, P. A. STARK Tower [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-stark-tower/
Clark, P. A. Stego Suite [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-stego-suite/
Clark, P. A. Stream Ward [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-stream-ward/
Clark, P. A. Syndrome Drain [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-syndrome-drain/
Clark, P. A. Syndrome Hints [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-syndrome-hints/
Titles beginning T
Clark, P. A. TC26 Pair [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-tc26-pair/
Clark, P. A. Threshold Decrypt [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-threshold-decrypt/
Clark, P. A. Threshold ML-DSA [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-threshold-mldsa/
Clark, P. A. Time Trust [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-time-trust/
Clark, P. A. Time-Lock Puzzle [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-time-lock-puzzle/
Clark, P. A. Timing Oracle [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-timing-oracle/
Clark, P. A. Timing Side-Channel [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-timing-sidechannel/
Clark, P. A. TLS Handshake [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-tls-handshake/
Clark, P. A. Token Tell [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-token-tell/
Clark, P. A. Traitor Trace [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-traitor-trace/
Titles beginning V
Clark, P. A. VDF [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-vdf/
Clark, P. A. Vigenère Break [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-vigenere-break/
Clark, P. A. VRF Gate [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-vrf-gate/
Clark, P. A. VSS Gate [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-vss-gate/
Titles beginning W
Clark, P. A. Web of Trust [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-web-of-trust/
Clark, P. A. WebAuthn [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-webauthn/
Clark, P. A. World Ciphers [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-world-ciphers/
Clark, P. A. World Hashes [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-world-hashes/
Titles beginning X
Clark, P. A. X3DH Wire [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-x3dh-wire/
Titles beginning Z
Clark, P. A. ZK Arena [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-zk-arena/
Clark, P. A. ZK Proof Lab [Interactive teaching demonstration]. Crypto Lab. Retrieved [date accessed], from https://systemslibrarian.github.io/crypto-lab-zk-proof-lab/
Using and adapting these materials
The module pages, worksheets and instructor notes here are published under the Creative Commons Attribution 4.0 International (CC BY 4.0). You may copy, adapt, print and redistribute these materials, including commercially, as long as you give credit: print a worksheet for a class, rewrite it for your own students, translate it, or build it into a course pack.
To give credit, keep a line like this one on anything you adapt:
Crypto Lab teaching materials by Paul A. Clark, CC BY 4.0 — https://crypto-lab.systemslibrarian.dev/teach/
This covers the teaching materials only. Each demonstration keeps the licence in its own repository, and the full licence text sits beside these pages.
Tell us, or ask for a module
- Using Crypto Lab in a course: tell us where and how. You choose whether it may be listed publicly.
- Teaching material problem: a worksheet step that no longer matches its exhibit, an error, or an accessibility barrier.
- Request a module: the course, the level and the topics you need.