Cryptography Tutorials - Herong's Tutorial Examples - v5.40, by Dr. Herong Yang
javax.crypto.Cipher - The Public Key Encryption Class
This section provides a quick introduction of the cipher class, javax.crypto.Cipher, to encrypt input data with a public key.
In the previous chapter, I learned how to use classes and interfaces in the JCE (Java Cryptography Extension) package to generate and manage private and public keys. Now I am ready to learn how to use private keys to encrypt or cipher any input data using the javax.crypto.Cipher class.
javax.crypto.Cipher is a class that provides functionality of a cryptographic cipher for encryption and decryption. It has the following major methods.
getInstance() - Returns a Cipher object of the specified transformation (algorithm plus options) from the implementation of the specified provider. If provider is not specified, the default implementation is used. This is a static method.
init() - Initializes this cipher for the specified operation mode with the specified key or public key certificate. Two important operation modes are Cipher.ENCRYPT_MODE and Cipher.DECRYPT_MODE.
update() - Feeds additional input data to this cipher and generates partial output data.
doFinal() - Feeds the last part of the input data to this cipher and generates the last part of the output data.
getBlockSize() - Returns the block size of this cipher.
getAlgorithm() - Returns the algorithm name of this cipher.
getProvider() - Returns the provider as a Provider object of this cipher.
See the next section how to use the javax.crypto.Cipher class in a sample program.
Table of Contents