Learn Java Cryptography
1h 42mIntermediate2018-07-09
Authors

Frank P Moley III
Senior Principal Engineer at Catch&Release
Course details
Security is paramount for any application. In Java, cryptography is key to the secure storage and transmission of data: to and from resources, users, and APIs. This course teaches the basics of Java cryptography using the Java Development Kit (JDK) crypto libraries: Java Cryptography Architecture (JCA) and Java Cryptography Extensions (JCE). Learn basic cryptography concepts and terms, including symmetric and asymmetric encryption, hashing, and digital signatures. Then find out how to use the cryptographic services or "engine classes" in JCA and JCE, such as Cipher, KeyGenerator, MessageDigest, and Signature, to enforce secure messaging and data storage. Plus, discover how to build a Java keystore to manage your repository of keys and certificates. Instructor Frank Moley uses his 16+ years of experience as a software developer and security architect to guide you through this complex topic.
Learning objectives
JCA and JCE
Symmetric vs. asymmetric encryption
Performing encryption in Java
Secure hashing
Digital signatures
Building a keystore with JCA
Learning objectives
JCA and JCE
Symmetric vs. asymmetric encryption
Performing encryption in Java
Secure hashing
Digital signatures
Building a keystore with JCA
Skills covered
JavaOracleProgramming LanguagesSoftware DevelopmentOne-Off
Concepts
0. Introduction
- 01 - Welcome to Java cryptography
- 02 - What you need to know
1. Java Crytography Basics
- 03 - Cryptography basics
- 04 - Java Cryptography Architecture (JCA)
- 05 - Java Cryptography Extensions (JCE)
- 06 - Basic JCA concepts
2. Encryption
- 07 - Understanding encryption
- 08 - Symmetric vs. asymmetric encryption
- 09 - Generating a symmetric key
- 10 - Performing symmetric encryption in Java
- 11 - Generating an asymmetric key pair
- 12 - Performing asymmetric encryption in Java
3. Hashing
- 13 - Understanding secure hashing
- 14 - Leveraging the MessageDigest engine
- 15 - Securing passwords
- 16 - Leveraging Bcrypt with Java
4. Digital Signatures
- 17 - Understanding digital signatures
- 18 - Creating a digital signature in Java
5. JCA Objects
- 19 - Understanding the keystore
- 20 - Building a Java keystore
Conclusion
- 21 - A note about Bouncy Castle
- 22 - Next steps