Here is your in-depth guide to cryptography and cryptanalysis in Java. This book includes challenging cryptographic solutions that are implemented in Java 17 and Jakarta EE 10. It provides a robust introduction to Java 17's new features and updates, a roadmap for Jakarta EE 10 security mechanisms, a unique presentation of the "hot points" (advantages and disadvantages) from the Java Cryptography Architecture (JCA), and more.
The book dives into the classical simple cryptosystems that form the basis of modern cryptography, with fully working solutions (encryption/decryption operations). Pseudo-random generators are discussed as well as real-life implementations. Hash functions are covered along with practical cryptanalysis methods and attacks, asymmetric and symmetric encryption systems, signature and identification schemes.
The book wraps up with a presentation of lattice-based cryptography and the NTRU framework library. Modern encryption schemes for cloud and big data environments (homomorphic encryption and searchable encryption) also are included. After reading and using this book, you will be proficient with crypto algorithms and know how to apply them to problems you may encounter.
What You Will Learn
- Develop programming skills for writing cryptography algorithms in Java
- Dive into security schemes and modules using Java
- Explore “good” vs “bad” cryptography based on processing execution times and reliability
- Play with pseudo-random generators, hash functions, etc.
- Leverage lattice-based cryptography methods, the NTRU framework library, and more
Who This Book Is For
Those who want to learn and leverage cryptography and cryptanalysis using Java. Some prior Java and/or algorithm programming exposure is highly recommended.