Cryptography 101 for Java developers
summary
Covers practical Java code and live demos showing how to use JCA/JCE classes: MessageDigest, Cipher, Signature, KeyPairGenerator, SecureRandom and keytool to generate keys, certificates and MACs. Shows MD5 collision weaknesses (12,000‑PDF example) and explains salted password hashing vs. rainbow tables, then runs a Bitcoin‑style mining loop that increments nonces until a hash has enough leading zeros. Demonstrations compile and run, and the examples include IV usage, block chaining modes and when to avoid deprecated algorithms.
AI-written summary · about
chapters (23)
- 0:00Cryptography basics
- 2:17What is cryptography
- 4:53Symmetric vs asymmetric
- 7:48Hashing fundamentals
- 10:19Hashing in Java
- 12:53Password storage
- 14:37Bitcoin mining
- 16:26Blockchain and hash functions
- 18:12AES in Java
- 21:44Java Crypto Architecture
- 24:33Block cipher modes
- 27:43Encryption use cases
- 29:07Diffie-Hellman exchange
- 30:52Public key cryptography and RSA
- 32:21Digital signatures in Java
- 34:33Message authentication
- 35:57Hashing and encryption
- 37:21Signature workflow
- 38:46Bitcoin signing demo
- 41:16Certificate authorities
- 44:09Key management in Java
- 45:35SSL/TLS security
- 46:58Summary
related talks
48mCryptography 101 for Java developers
34mUnlocking the unknowns: Cryptography Essentials
41mHow to Use Java Cryptography API Securely
30mAre we using Java Crypto API Securely ?
52mModern Cryptography for the Java Developer
48mCryptography for Beginners
42mCryptography, hashing, encryption without the math
44mCryptography Pitfalls
