Cryptography is a branch of mathematics based on one-way functions called cryptographic algorithms and on special numbers called keys . Encryption is the process of transforming a readable message, called plaintext , into an unreadable string, called ciphertext . Decryption is the process of transforming ciphertext back into plaintext. Encryption and decryption both use cryptographic algorithms with appropriate keys. The same key is used for encryption and decryption.
Symmetric ciphers can be very fast.
However, as a key must be shared by a sender and a receiver but only by them, key management and key distribution are difficult issues. The keys are generated in matching pairs. It is very difficult to deduce the private key from the public key. The use of cryptography is not limited to ciphers and confidentiality. For each concept functionalities, the JCA provides standardized APIs that enable users to call standard services without concern about algorithms or even implementations.