Cryptography and cryptanalysis in Java creating and programming advanced algorithms with Java SE 17 LTS and Jakarta EE 10 - Nita, Stefania Loredana; Mihailescu, Marius Iulian (Apress, 2022)
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.
Includes bibliographical references and index
Keywords: Java (Computer program language); Cryptography; Computer security; Data encryption (Computer science); Computer Security; Java (Langage de programmation); Cryptographie; Sécurité informatique; Chiffrement (Informatique)