Most practical cryptographic systems combine two elements:
- A process or algorithm which is a set of rules that specify the
mathematical steps needed to encipher or decipher data.
- A cryptographic key (a string of numbers or characters), or keys.
The algorithm uses the key to select one relationship between plaintext
and ciphertext out of the many possible relationships the algorithm
provides. The selected relationship determines the composition of
the algorithm's result.
ICSF supports two main types of cryptographic processes:
- Symmetric, or secret key, algorithms, in which the same key value
is used in both the encryption and decryption calculations.
- Asymmetric, or public key, algorithms, in which a different key
is used in the decryption calculation than was used in the encryption
calculation.