Cryptography and Cryptanalysis in Java - Creating and Programming Advanced Algorithms with Java SE 17 LTS and Jakarta EE 10

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

Introduction ------------ 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

Author(s): Stefania Loredana Nita, Marius Iulian Mihailescu
Edition: 1
Publisher: Springer
Year: 2022

Language: English
Pages: 232
Tags: java17 java18 openjdk cryptography jakarta ee10 lts

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