Frontend Labs
⋯

Appendix C: Web Crypto API cheat sheet

Need API call
Hash data (integrity, not passwords) crypto.subtle.digest("SHA-256", data)
Generate a random symmetric key crypto.subtle.generateKey({name:"AES-GCM", length:256}, ...)
Encrypt/decrypt with a symmetric key crypto.subtle.encrypt/decrypt({name:"AES-GCM", iv}, key, data)
Derive a key from a password crypto.subtle.deriveKey({name:"PBKDF2", salt, iterations, hash}, ...)
Generate cryptographically secure randomness crypto.getRandomValues(new Uint8Array(n)) — never Math.random() for security
Sign/verify (authenticity) crypto.subtle.sign/verify({name:"ECDSA", hash:"SHA-256"}, key, data)
Generate a UUID crypto.randomUUID()

Generated from real-life-JS-guide.md · 8 Oct 2026 16:36