A cipher is an encryption algorithm used for the purpose of encrypting data, and each cipher functions in a different way. Some ciphers are considered weak as their underlying encryption sceheme can be broken (usually due to insufficient key lengths), so it's important to employ the use of only those which are recognised as secure.
Below is a list of the ciphers you can use:
Cipher | Security |
---|---|
AES (Rijandel) | Strong |
Blowfish | Strong |
CAST | 256 bit version recommend, has not been broken yet |
DES | Vulnerable |
GOST | Vulnerable |
LOKI97 | Seems secure |
RC2 | Vulnerable |
SAFER+ | Not enough data |
SERPENT | Very strong |
3DES | Vulnerable |
TwoFish | Strong |
xTEA | Seems secure |
The initialisation vector (IV) combines an arbitrary number (typically referred to as a nonce) with a cryptographic primitive to produce a more unique encryption output. These are commonly used in effort to make cryptanalysis more difficult for attackers by preventing the inference of relationships between any segments of encrypted data.
An IV needs to be random for it to be secure. I recommend not to choose your own IV and instead simply letting my server generate one for you. My server uses independent randomisation methods to generate strong IVs. If you prefer to use your own IV, please ensure you leverage a random and illogical sequence of numerical values.
An encryption key is a random string of bits created explicitly for scrambling and unscrambling data. In the context of the encrypt/decrypt service on my site, this represents the same purpose as a unique password. Your chosen key will be required to decrypt any data you use my service to encrypt. When choosing your own key/password to encrypt your data using my service, please ensure you choose one of sufficient length and complexity to align with best practice standards.
A block cipher is a method of encrypting data in blocks to produce ciphertext using a cryptographic key and algorithm. There are different modes of operation available when employing the use of block ciphers. I would only recommend manually setting the block cipher mode if you're familiar with their defined encryption operations and associated level of security.