← All courses

Cryptography Fundamentals: Hashes to ZK

An applied tour of the cryptographic primitives that ship in modern software — hashes, HMAC, AEADs, KDFs, public-key crypto, signatures, Merkle trees, EIP-712 typed data, and zero-knowledge basics. Every exercise runs against the browser's Web Crypto API in the same Web Worker the runtime uses, with test vectors drawn from FIPS 180, RFC 4231 / 5869 / 8032, and NIST SP 800-38D. Opinionated about what to use (AES-GCM, HKDF, Ed25519, Argon2id) and what to avoid (raw AES-CTR, MD5, plain SHA for passwords, CBC without an AEAD).

  • TypeScript
  • 82 lessons
  • ~16 hours
  • Free
  • by Fishbones

Learn TypeScript for free on Libre Academy with the Cryptography Fundamentals: Hashes to ZK course: 82 interactive lessons you complete by writing real code in a built-in editor, graded instantly by hidden tests. No paywall, no sign-up. It's part of the free, open-source desktop app for macOS, Windows and Linux.

What you get

  • Hands-on lessons with a real editor and instant, test-graded feedback.
  • Free and open source, with no account required to start.
  • Works offline in the free desktop app for macOS, Windows and Linux.
  • TypeScript runs instantly in the app.

What's inside

  • What cryptography is for
  • Bytes, hex, base64, encoding
  • Hash functions
  • HMAC and KDFs
  • Symmetric encryption
  • Public-key cryptography
  • Digital signatures
  • Random and key generation
  • Merkle trees and commitments
  • EIP-712 typed data
  • Zero-knowledge basics

Download to start Cryptography Fundamentals: Hashes to ZK →   More free TypeScript courses

Helpful reading

Why passive video doesn't make you a programmer  ·  Bring Your Own Book: turning any PDF into a course