java cryptography architecture
DESCRIPTION
Java Architecture and CryptographyTRANSCRIPT
![Page 1: Java cryptography architecture](https://reader033.vdocuments.site/reader033/viewer/2022061120/546c1ef9af795958298b4f9e/html5/thumbnails/1.jpg)
JAVA CRYPTOGRAPHYARCHITECTURESubmitted by:- TUFAIL KHAN-100101246VARUN-1001011254
1
![Page 2: Java cryptography architecture](https://reader033.vdocuments.site/reader033/viewer/2022061120/546c1ef9af795958298b4f9e/html5/thumbnails/2.jpg)
CRYPTOGRAPHY Hidden writing
Used to protect information
Can ensure confidentialityo Integrity and Authenticity too
cont..
2
![Page 3: Java cryptography architecture](https://reader033.vdocuments.site/reader033/viewer/2022061120/546c1ef9af795958298b4f9e/html5/thumbnails/3.jpg)
Cryptography -: to achieve encoding messages to make them no-readable.
………
3
![Page 4: Java cryptography architecture](https://reader033.vdocuments.site/reader033/viewer/2022061120/546c1ef9af795958298b4f9e/html5/thumbnails/4.jpg)
Cryptanalysis-: technique of decode no-readable into readable.
....
4
![Page 5: Java cryptography architecture](https://reader033.vdocuments.site/reader033/viewer/2022061120/546c1ef9af795958298b4f9e/html5/thumbnails/5.jpg)
Cryptology-: combination of cryptography and cryptanalysis.
5
![Page 6: Java cryptography architecture](https://reader033.vdocuments.site/reader033/viewer/2022061120/546c1ef9af795958298b4f9e/html5/thumbnails/6.jpg)
BASIC CRYPTOGRAPHIC FUNCTIONS Private/Public Key Pair
Generation Secret Key Generation Hash Functions Digital Signatures Random Number
Generation Encryption/Decryption
6
![Page 7: Java cryptography architecture](https://reader033.vdocuments.site/reader033/viewer/2022061120/546c1ef9af795958298b4f9e/html5/thumbnails/7.jpg)
SECRET, PUBLIC KEY CRYPTOGRAPHY AND HASH FUNCTIONS
Secret Key Cryptography (SKC): Uses a single key for both encryption and decryption
Public Key Cryptography (PKC): Uses one key for encryption and another for decryption
Hash Functions: Uses a mathematical transformation to irreversibly "encrypt" information
7
![Page 8: Java cryptography architecture](https://reader033.vdocuments.site/reader033/viewer/2022061120/546c1ef9af795958298b4f9e/html5/thumbnails/8.jpg)
8
![Page 9: Java cryptography architecture](https://reader033.vdocuments.site/reader033/viewer/2022061120/546c1ef9af795958298b4f9e/html5/thumbnails/9.jpg)
ADVANTAGES OF JAVA IN CRYPTOGRAPHY
Develop programs more quickly Avoid platform dependencies Write once, run anywhere Distribute software more easily
9
![Page 10: Java cryptography architecture](https://reader033.vdocuments.site/reader033/viewer/2022061120/546c1ef9af795958298b4f9e/html5/thumbnails/10.jpg)
JAVA CRYPTOGRAPHIC
TWO MAIN TECHNOLOGIES-
Java Cryptographic Architecture (JCA) - It is a set of classes that provide cryptographic capabilities to java programs.
Java cryptographic Extension (JCE)- Whereas JCE is not the part of core Java JDK. For this request special licensing.
10
![Page 11: Java cryptography architecture](https://reader033.vdocuments.site/reader033/viewer/2022061120/546c1ef9af795958298b4f9e/html5/thumbnails/11.jpg)
JAVA CRYPTOGRAPHIC ARCHITECTURE
JCA is the part of core java framework. Security API in JDK 1.1 introduced the JCA. It’s provide the basic cryptographic
functionalities to programmer using java language.
Cryptographic functionalities such as- access control, permissions, key pairs, message digests and digital signatures.
In order to achieve this, the JCA package consists of a number of classes, called as engine classes.
11
![Page 12: Java cryptography architecture](https://reader033.vdocuments.site/reader033/viewer/2022061120/546c1ef9af795958298b4f9e/html5/thumbnails/12.jpg)
ENGINE CLASSES It is a logical representation of cryptographic
functionality. Such as:-
Message digestDigital signatureKey generatorRandom number
12
![Page 13: Java cryptography architecture](https://reader033.vdocuments.site/reader033/viewer/2022061120/546c1ef9af795958298b4f9e/html5/thumbnails/13.jpg)
ENGINE CLASS
13
![Page 14: Java cryptography architecture](https://reader033.vdocuments.site/reader033/viewer/2022061120/546c1ef9af795958298b4f9e/html5/thumbnails/14.jpg)
TYPES OF ENGINE CLASSES
14
![Page 15: Java cryptography architecture](https://reader033.vdocuments.site/reader033/viewer/2022061120/546c1ef9af795958298b4f9e/html5/thumbnails/15.jpg)
SIGNATURE CLASS public abstract class Signature extends SignatureSpi Used to provide applications the functionality of a
digital signature algorithm Provides implementation independent algorithms There are two ways to request a signature algorithm
object:- Specifying an algorithm name Specifying both algorithm name and package provider
15
![Page 16: Java cryptography architecture](https://reader033.vdocuments.site/reader033/viewer/2022061120/546c1ef9af795958298b4f9e/html5/thumbnails/16.jpg)
DIGITAL SIGNATUREPublic key cryptography is also used to provide
digital signatures.
signingplaintext signed message
private key
verificationsigned message plaintext
public key
16
![Page 17: Java cryptography architecture](https://reader033.vdocuments.site/reader033/viewer/2022061120/546c1ef9af795958298b4f9e/html5/thumbnails/17.jpg)
KEYSTORE
Manage secret keys, key pairs and digital certificates
A password-protected database stores private key and its associated public key
certificate Can contain trusted certificates Each entry is identified by an alias
An alias may identify the purpose of the key. i.e. signMyEmails
17
![Page 18: Java cryptography architecture](https://reader033.vdocuments.site/reader033/viewer/2022061120/546c1ef9af795958298b4f9e/html5/thumbnails/18.jpg)
MESSAGE DIGEST
public abstract class MessageDigest extends MessageDigestSpi
Also known as “hash function” or “one-way transformation”.
Transforms a message of any length and computes a fixed length string.
We want it to be hard to guess what the message was given only the digest. Guessing is always possible.
18
![Page 19: Java cryptography architecture](https://reader033.vdocuments.site/reader033/viewer/2022061120/546c1ef9af795958298b4f9e/html5/thumbnails/19.jpg)
MESSAGE DIGEST
19
![Page 20: Java cryptography architecture](https://reader033.vdocuments.site/reader033/viewer/2022061120/546c1ef9af795958298b4f9e/html5/thumbnails/20.jpg)
ENCRYPTING DATA
This class is called as Cipher class
Javax.cryptro.Cipher
It provides an interface to encrypt and decrypt data
either in arrays within the program or as that data is read or written through Java’s stream interfaces
20
![Page 21: Java cryptography architecture](https://reader033.vdocuments.site/reader033/viewer/2022061120/546c1ef9af795958298b4f9e/html5/thumbnails/21.jpg)
ENCRYPTION
21
Encryption is the process of feeding plaintext and key into a function and getting ciphertext output
Ciphertext is “garbage” unless decrypted
EncryptionFunction
Plaintext
![Page 22: Java cryptography architecture](https://reader033.vdocuments.site/reader033/viewer/2022061120/546c1ef9af795958298b4f9e/html5/thumbnails/22.jpg)
DECRYPTION
22
Decryption is the process of feeding ciphertext and a key into another function and getting original plaintext output Decryption
Function
Plaintext
![Page 23: Java cryptography architecture](https://reader033.vdocuments.site/reader033/viewer/2022061120/546c1ef9af795958298b4f9e/html5/thumbnails/23.jpg)
RANDOM NUMBER GENERATOR
23
It is used to create cryptographic keys and in some cases to encrypt or sign data.
Its value could not be predicted
PRNG(Pseudo Random Number Generator) is used by computers to generate endless sequence of random numbers
![Page 24: Java cryptography architecture](https://reader033.vdocuments.site/reader033/viewer/2022061120/546c1ef9af795958298b4f9e/html5/thumbnails/24.jpg)
THANK YOU!!!!!
24