Introduce
Java Cryptography Architecture(JCA)
- JCA
java.security.*
- JCE
javax.crypto.*
JCA Classes
MessageDigest
: used to implement one-way hash functions such as MD5 or SHA
Signature
: used to implement digital signatures
KeyPairGenerator
: used to create public/private key pairs for different algorithms
KeyFactory
: used to convert keys into key specifications and then vice-versa
CertificateFactory
: used to generate certificates
KeyStore
: used to create a keystore which maintains keys and certificates in memory for later usage
AlgorithmParameters
: used to maintain the security parameters for specific algorithms
AlgorithmParameterGenerator
: used to create a set of parameters to be used for specific algorithms
SecureRandom
: used to create random or pseudo-random numbers
Reference
- https://people.ucalgary.ca/~salindne/418/Files/JCA.pdf
- https://docs.oracle.com/javase/8/docs/technotes/guides/security/crypto/CryptoSpec.html
- https://docs.oracle.com/javase/8/docs/technotes/guides/security/StandardNames.html
- https://docs.oracle.com/javase/8/docs/technotes/guides/security/jsse/JSSERefGuide.html