DES Encoder & Decoder

This form allows you to encodes or decodes a string to the DES data encodings


Symmetric Ciphers Online allows you to encrypt or decrypt arbitrary message using several well known symmetric encryption algorithms such as AES, 3DES, or BLOWFISH.

Symmetric ciphers use the same (or very similar from the algorithmic point of view) keys for both encryption and decryption of a message. They are designed to be easily computable and able to process even large messages in real time. Symmetric ciphers are thus convenient for usage by a single entity that knows the secret key used for the encryption and required for the decryption of its private data - for example file system encryption algorithms are based on symmetric ciphers. If symmetric ciphers are to be used for secure communication between two or more parties problems related to the management of symmetric keys arise. Such problems can be solved using a hybrid approach that includes using asymmetric ciphers. Symmetric ciphers are basic blocks of many cryptography systems and are often used with other cryptography mechanisms that compensate their shortcomings.

Symmetric ciphers can operate either in the block mode or in the stream mode. Some algorithms support both modes, others support only one mode. In the block mode, the cryptographic algorithm splits the input message into an array of small fixed-sized blocks and then encrypts or decrypts the blocks one by one. In the stream mode, every digit (usually one bit) of the input message is encrypted separately.

In the block mode processing, if the blocks were encrypted completely independently the encrypted message might be vulnerable to some trivial attacks. Obviously, if there were two identical blocks encrypted without any additional context and using the same function and key, the corresponding encrypted blocks would also be identical. This is why block ciphers are usually used in various modes of operation. Operation modes introduce an additional variable into the function that holds the state of the calculation. The state is changed during the encryption/decryption process and combined with the content of every block. This approach mitigates the problems with identical blocks and may also serve for other purposes. The initialization value of the additional variable is called the initialization vector. The differences between block ciphers operating modes are in the way they combine the state (initialization) vector with the input block and the way the vector value is changed during the calculation. The stream ciphers hold and change their internal state by design and usually do not support explicit input vector values on their input.