{"version":1,"pages":[{"id":"-LhlOQMpU76LDuHyM--7","title":"Welcome","pathname":"/","siteSpaceId":"sitesp_8vLh4","description":""},{"id":"-LhlPbDX2vC1zU9xpWs9","title":"Preface","pathname":"/preface","siteSpaceId":"sitesp_8vLh4","description":""},{"id":"-LhlPbDYUuMIKGMUQGDA","title":"Cryptography - Overview","pathname":"/cryptography-overview","siteSpaceId":"sitesp_8vLh4","description":""},{"id":"-LhlPbDZcedhGReLebzI","title":"Hash Functions","pathname":"/cryptographic-hash-functions","siteSpaceId":"sitesp_8vLh4","description":""},{"id":"-LhlPbD_PJejLwhybuEo","title":"Crypto Hashes and Collisions","pathname":"/cryptographic-hash-functions/crypto-hashes-and-collisions","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Hash Functions"}]},{"id":"-LhlPbDaR8jlBjQaV9bT","title":"Hash Functions: Applications","pathname":"/cryptographic-hash-functions/hash-functions-applications","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Hash Functions"}]},{"id":"-LhlPbDbH4c4TmuP1pOl","title":"Secure Hash Algorithms","pathname":"/cryptographic-hash-functions/secure-hash-algorithms","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Hash Functions"}]},{"id":"-LhlPbDcI38VaodxzXAF","title":"Hash Functions - Examples","pathname":"/cryptographic-hash-functions/hash-functions-examples","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Hash Functions"}]},{"id":"-LhlPbDdzEzW0K3QZ8sD","title":"Exercises: Calculate Hashes","pathname":"/cryptographic-hash-functions/exercises-calculate-hashes","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Hash Functions"}]},{"id":"-LhlPbDevSILp2inmnjN","title":"Proof-of-Work Hash Functions","pathname":"/cryptographic-hash-functions/proof-of-work-hash-functions","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Hash Functions"}]},{"id":"-LhlPbDfKvWmJsUbjfbS","title":"MAC and Key Derivation","pathname":"/mac-and-key-derivation","siteSpaceId":"sitesp_8vLh4","description":""},{"id":"-LhlPbDgKoRtFCr_1f5K","title":"HMAC and Key Derivation","pathname":"/mac-and-key-derivation/hmac-and-key-derivation","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"MAC and Key Derivation"}]},{"id":"-LhlPbDhw5uq6usZEFcA","title":"HMAC Calculation - Examples","pathname":"/mac-and-key-derivation/hmac-calculation-examples","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"MAC and Key Derivation"}]},{"id":"-LhlPbDi2xrOQaMViZSQ","title":"Exercises: Calculate HMAC","pathname":"/mac-and-key-derivation/exercises-calculate-hmac","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"MAC and Key Derivation"}]},{"id":"-LhlPbDjXL5mKZAY4qtM","title":"KDF: Deriving Key from Password","pathname":"/mac-and-key-derivation/kdf-deriving-key-from-password","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"MAC and Key Derivation"}]},{"id":"-LhlPbDk5AruI-i5I9I7","title":"PBKDF2","pathname":"/mac-and-key-derivation/pbkdf2","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"MAC and Key Derivation"}]},{"id":"-LhlPbDl9vfLscdK-3r3","title":"Modern Key Derivation Functions","pathname":"/mac-and-key-derivation/modern-key-derivation-functions","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"MAC and Key Derivation"}]},{"id":"-LhlPbDmT3-kSS2oYc-0","title":"Scrypt","pathname":"/mac-and-key-derivation/scrypt","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"MAC and Key Derivation"}]},{"id":"-LhlPbDnfazDM86XAZ00","title":"Bcrypt","pathname":"/mac-and-key-derivation/bcrypt","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"MAC and Key Derivation"}]},{"id":"-LhlPbDo_twCyLieKoPL","title":"Linux crypt()","pathname":"/mac-and-key-derivation/linux-crypt","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"MAC and Key Derivation"}]},{"id":"-LhlPbDpLWJYSuL20RgD","title":"Argon2","pathname":"/mac-and-key-derivation/argon2","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"MAC and Key Derivation"}]},{"id":"-LhlPbDqLd4FNJ2vgugJ","title":"Secure Password Storage","pathname":"/mac-and-key-derivation/password-encryption","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"MAC and Key Derivation"}]},{"id":"-LhlPbDxJKmvvgcClvhC","title":"Exercises: Password Encryption","pathname":"/mac-and-key-derivation/exercises-password-encryption","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"MAC and Key Derivation"}]},{"id":"-LhlPbDyNTVUTJ2SP5LB","title":"Secure Random Generators","pathname":"/secure-random-generators","siteSpaceId":"sitesp_8vLh4","description":""},{"id":"-LhlPbDzHwYcdZL8Dh1q","title":"Pseudo-Random Numbers - Examples","pathname":"/secure-random-generators/pseudo-random-numbers-examples","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Secure Random Generators"}]},{"id":"-LhlPbE-LAp9RV-xcaZb","title":"Secure Random Generators (CSPRNG)","pathname":"/secure-random-generators/secure-random-generators-csprng","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Secure Random Generators"}]},{"id":"-LhlPbE0BgLNhlCMBXgI","title":"Exercises: Pseudo-Random Generator","pathname":"/secure-random-generators/exercises-pseudo-random-generator","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Secure Random Generators"}]},{"id":"-LhlPbE1v5VvHKpUf1P2","title":"Key Exchange and DHKE","pathname":"/key-exchange","siteSpaceId":"sitesp_8vLh4","description":""},{"id":"-LhlPbE2BXiTd0DY67e4","title":"Diffie–Hellman Key Exchange","pathname":"/key-exchange/diffie-hellman-key-exchange","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Key Exchange and DHKE"}]},{"id":"-LhlPbE3GARTtBoOpEe1","title":"DHKE - Examples","pathname":"/key-exchange/dhke-examples","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Key Exchange and DHKE"}]},{"id":"-LhlPbE4gTU3a2KTMwr7","title":"Exercises: DHKE Key Exchange","pathname":"/key-exchange/exercises-dhke-key-exchange","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Key Exchange and DHKE"}]},{"id":"-LhlPbE5Qq_wHhr7OLeX","title":"Encryption: Symmetric and Asymmetric","pathname":"/encryption-symmetric-and-asymmetric","siteSpaceId":"sitesp_8vLh4","description":""},{"id":"-LhlPbE6XlnXfXlfo6j6","title":"Symmetric Key Ciphers","pathname":"/symmetric-key-ciphers","siteSpaceId":"sitesp_8vLh4","description":""},{"id":"-LhlPbE7fFnP9kdawbf9","title":"Cipher Block Modes","pathname":"/symmetric-key-ciphers/cipher-block-modes","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Symmetric Key Ciphers"}]},{"id":"-LhlPbE8UREog4xknGub","title":"Popular Symmetric Algorithms","pathname":"/symmetric-key-ciphers/popular-symmetric-algorithms","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Symmetric Key Ciphers"}]},{"id":"-LhlPbE9uesDxnsVa_rS","title":"The AES Cipher - Concepts","pathname":"/symmetric-key-ciphers/aes-cipher-concepts","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Symmetric Key Ciphers"}]},{"id":"-LhlPbEAiIF0c2zOhUMC","title":"AES Encrypt / Decrypt - Examples","pathname":"/symmetric-key-ciphers/aes-encrypt-decrypt-examples","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Symmetric Key Ciphers"}]},{"id":"-LhlPbEB1vnMUCkVVxlT","title":"Ethereum Wallet Encryption","pathname":"/symmetric-key-ciphers/ethereum-wallet-encryption","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Symmetric Key Ciphers"}]},{"id":"-LhlPbECxxovg_tOJV51","title":"Exercises: AES Encrypt / Decrypt","pathname":"/symmetric-key-ciphers/exercises-aes-encrypt-decrypt","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Symmetric Key Ciphers"}]},{"id":"-LhlPbEDRBC6r2I3HemZ","title":"ChaCha20-Poly1305","pathname":"/symmetric-key-ciphers/chacha20-poly1305","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Symmetric Key Ciphers"}]},{"id":"-LhlPbEEVXv4qzdoUAFn","title":"Exercises: ChaCha20-Poly1305","pathname":"/symmetric-key-ciphers/exercises-chacha20-poly1305","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Symmetric Key Ciphers"}]},{"id":"-LhlPbEFm2PRxkfuqOMK","title":"Asymmetric Key Ciphers","pathname":"/asymmetric-key-ciphers","siteSpaceId":"sitesp_8vLh4","description":""},{"id":"-LhlPbEGaSlkAa2hsmwo","title":"The RSA Cryptosystem - Concepts","pathname":"/asymmetric-key-ciphers/the-rsa-cryptosystem-concepts","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Asymmetric Key Ciphers"}]},{"id":"-LhlPbEHairrH81t0GGX","title":"RSA Encrypt / Decrypt - Examples","pathname":"/asymmetric-key-ciphers/rsa-encrypt-decrypt-examples","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Asymmetric Key Ciphers"}]},{"id":"-LhlPbEIEe6fs2Gx_zSL","title":"Exercises: RSA Encrypt / Decrypt","pathname":"/asymmetric-key-ciphers/exercises-rsa-encrypt-decrypt","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Asymmetric Key Ciphers"}]},{"id":"-LhlPbEJ30bwikCKl7Hk","title":"Elliptic Curve Cryptography (ECC)","pathname":"/asymmetric-key-ciphers/elliptic-curve-cryptography-ecc","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Asymmetric Key Ciphers"}]},{"id":"-LhlPbEKndgDzQn_Aox4","title":"ECDH Key Exchange","pathname":"/asymmetric-key-ciphers/ecdh-key-exchange","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Asymmetric Key Ciphers"}]},{"id":"-LhlPbELptHiHb9bHnoc","title":"ECDH Key Exchange - Examples","pathname":"/asymmetric-key-ciphers/ecdh-key-exchange-examples","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Asymmetric Key Ciphers"}]},{"id":"-LhlPbEMtbuAOuUG3ZJl","title":"Exercises: ECDH Key Exchange","pathname":"/asymmetric-key-ciphers/exercises-ecdh-key-exchange","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Asymmetric Key Ciphers"}]},{"id":"-LhlPbENqt4RNHUPJtjn","title":"ECC Encryption / Decryption","pathname":"/asymmetric-key-ciphers/ecc-encryption-decryption","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Asymmetric Key Ciphers"}]},{"id":"-LhlPbEO3Z2FhDPrC-7_","title":"ECIES Hybrid Encryption Scheme","pathname":"/asymmetric-key-ciphers/ecies-public-key-encryption","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Asymmetric Key Ciphers"}]},{"id":"-LhlPbEPOuwgxj37atLh","title":"ECIES Encryption - Example","pathname":"/asymmetric-key-ciphers/ecies-example","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Asymmetric Key Ciphers"}]},{"id":"-LhlPbEQqM6NsjSFFa_U","title":"Exercises: ECIES Encrypt / Decrypt","pathname":"/asymmetric-key-ciphers/exercises-ecies-encrypt-decrypt","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Asymmetric Key Ciphers"}]},{"id":"-LhlPbERBFKUvM2XvJOL","title":"Digital Signatures","pathname":"/digital-signatures","siteSpaceId":"sitesp_8vLh4","description":""},{"id":"-LhlPbESOsMp2Lv5tW4K","title":"RSA Signatures","pathname":"/digital-signatures/rsa-signatures","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Digital Signatures"}]},{"id":"-LhlPbETnwqY3Vk8RhZw","title":"RSA: Sign / Verify - Examples","pathname":"/digital-signatures/rsa-sign-verify-examples","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Digital Signatures"}]},{"id":"-LhlPbEUyB8HfOUcUXjz","title":"Exercises: RSA Sign and Verify","pathname":"/digital-signatures/exercises-rsa-sign-and-verify","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Digital Signatures"}]},{"id":"-LhlPbEV3jK2vE3F9r20","title":"ECDSA: Elliptic Curve Signatures","pathname":"/digital-signatures/ecdsa-sign-verify-messages","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Digital Signatures"}]},{"id":"-LhlPbEWIeET103ja7vi","title":"ECDSA: Sign / Verify - Examples","pathname":"/digital-signatures/ecdsa-sign-verify-examples","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Digital Signatures"}]},{"id":"-LhlPbEXjDq7f7i0X5GK","title":"Exercises: ECDSA Sign and Verify","pathname":"/digital-signatures/exercises-secp256k1-sign-verify","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Digital Signatures"}]},{"id":"-LhlPbEYX1_cBoOm81M9","title":"EdDSA and Ed25519","pathname":"/digital-signatures/eddsa-and-ed25519","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Digital Signatures"}]},{"id":"-LhlPbEZDR-wnrGO3GD9","title":"EdDSA: Sign / Verify - Examples","pathname":"/digital-signatures/eddsa-sign-verify-examples","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Digital Signatures"}]},{"id":"-LhlPbE_ed7FoqXD5_Xg","title":"Exercises: EdDSA Sign and Verify","pathname":"/digital-signatures/exercises-eddsa-sign-and-verify","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Digital Signatures"}]},{"id":"-LhlPbEaRfbRHkvE152w","title":"Quantum-Safe Cryptography","pathname":"/quantum-safe-cryptography","siteSpaceId":"sitesp_8vLh4","description":""},{"id":"-LhlPbEbj3otB8AgTRj3","title":"Quantum-Safe Signatures - Example","pathname":"/quantum-safe-cryptography/quantum-safe-signatures-example","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Quantum-Safe Cryptography"}]},{"id":"-LhlPbEcE8SPvM8n-zZx","title":"Quantum-Safe Key Exchange - Example","pathname":"/quantum-safe-cryptography/quantum-safe-key-exchange-example","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Quantum-Safe Cryptography"}]},{"id":"-LhlPbEdHUn8WOdxro5r","title":"Quantum-Safe Asymmetric Encryption - Example","pathname":"/quantum-safe-cryptography/quantum-safe-asymmetric-encryption-example","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Quantum-Safe Cryptography"}]},{"id":"-LhlPbEeSrUsPr8um4l1","title":"More Cryptographic Concepts","pathname":"/more-cryptographic-concepts","siteSpaceId":"sitesp_8vLh4","description":""},{"id":"-LhlPbEf4exbCr71b9Wi","title":"Digital Certificates - Example","pathname":"/more-cryptographic-concepts/digital-certificates-example","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"More Cryptographic Concepts"}]},{"id":"-LhlPbEgIaymKPXuxn08","title":"TLS - Example","pathname":"/more-cryptographic-concepts/tls-example","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"More Cryptographic Concepts"}]},{"id":"-LhlPbEhst-jJ1L8iitx","title":"One-Time Passwords (OTP) - Example","pathname":"/more-cryptographic-concepts/one-time-passwords-otp-example","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"More Cryptographic Concepts"}]},{"id":"-LhlPbEiIjDjKVjflwVN","title":"Crypto Libraries for Developers","pathname":"/crypto-libraries-for-developers","siteSpaceId":"sitesp_8vLh4","description":""},{"id":"-LhlPbEj0Zin-3YJpPyj","title":"JavaScript Crypto Libraries","pathname":"/crypto-libraries-for-developers/javascript-crypto-libraries","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Crypto Libraries for Developers"}]},{"id":"-LhlPbEkPhokAnrZtLSS","title":"Python Crypto Libraries","pathname":"/crypto-libraries-for-developers/python-crypto-libraries","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Crypto Libraries for Developers"}]},{"id":"-LhlPbElyGMXElQNbR58","title":"C# Crypto Libraries","pathname":"/crypto-libraries-for-developers/c-crypto-libraries","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Crypto Libraries for Developers"}]},{"id":"-LhlPbEmeF0pHCliiRcp","title":"Java Crypto Libraries","pathname":"/crypto-libraries-for-developers/java-crypto-libraries","siteSpaceId":"sitesp_8vLh4","description":"","breadcrumbs":[{"label":"Crypto Libraries for Developers"}]},{"id":"-LhlPbEnu5r5QEdeDn8R","title":"Conclusion","pathname":"/conclusion","siteSpaceId":"sitesp_8vLh4","description":""}]}