Cryptography and Cryptanalysis in Java: Creating and Programming Advanced Algorithms with Java SE 17 LTS and Jakarta EE 10
- Length: 238 pages
- Edition: 1
- Language: English
- Publisher: Apress
- Publication Date: 2022-04-30
- ISBN-10: 1484281047
- ISBN-13: 9781484281048
- Sales Rank: #3682061 (See Top 100 Books)
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.
Table of Contents About the Authors About the Technical Reviewer Chapter 1: Introduction Cryptography and Cryptanalysis Book Structure Conclusion References Chapter 2: JDK 17: New Features Conclusion References Chapter 3: Roadmap and Vision for Jakarta EE 10 Conclusion References Chapter 4: Java Cryptography Architecture Architecture and Design Principles JCA Classes and Algorithms Algorithms and Engine Classes Interfaces and Main Classes Data Encryption Hash Functions Signatures Generating Signatures Verifying the Signature Conclusion References Chapter 5: Classical Cryptography Caesar Cipher Implementation Cryptanalysis Vigenère Cipher Implementation Cryptanalysis Hill Cipher Implementation Cryptanalysis Conclusion References Chapter 6: Formal Techniques for Cryptography Definitions Probabilities and Statistics Conditional Probability Random Variables Entropy A Little Algebra Elliptic Curves Conclusion References Chapter 7: Pseudorandom Number Generators Examples of PRNGs Linear Congruential PRNGs Blum-Blum-Shub PRNG Linear Circuit PRNGs Other PRNGs PRNGs Security Java.util.Random Class Conclusion References Chapter 8: Hash Functions Conclusion References Chapter 9: Symmetric Encryption Algorithms Data Encryption Standard The Generation of Keys Encryption and Decryption Process Operation Modes for DES Advanced Encryption Standard Encryption and Decryption Process Operation Modes for AES Conclusion References Chapter 10: Asymmetric Encryption Schemes RSA ElGamal Merkle-Hellman The Knapsack Approach Algorithms Conclusion References Chapter 11: Signature Schemes Conclusion References Chapter 12: Identification Schemes FFS Identification protocol Conclusion References Chapter 13: Lattice-Based Cryptography and NTRU Practical Implementation of the NTRU Library Conclusion References Chapter 14: Advanced Encryption Schemes Homomorphic Encryption Searchable Encryption Conclusion References Chapter 15: Cryptography Tools CryptTool OpenSSL Conclusion References Index
Donate to keep this site alive
How to download source code?
1. Go to: https://github.com/Apress
2. In the Find a repository… box, search the book title: Cryptography and Cryptanalysis in Java: Creating and Programming Advanced Algorithms with Java SE 17 LTS and Jakarta EE 10
, sometime you may not get the results, please search the main title.
3. Click the book title in the search results.
3. Click Code to download.
1. Disable the AdBlock plugin. Otherwise, you may not get any links.
2. Solve the CAPTCHA.
3. Click download link.
4. Lead to download server to download.