Symmetric encryption
In symmetric encryption the key needed for decryption can be directly derived from the encryption key. In practice, in symmetric encryption algorithms the message is encrypted and decrypted with the same key. The symmetric encryption algorithms are generally divided into stream cipher and block cipher encryption methods.
Speed of encryption is the best advantage of symmetric encryption methods. Hardware built especially for symmetric encryption can reach passing through speed of hundreds of megabytes per seconds. Symmetric encryption is also a traditional method the implementation of which has a long history.
In symmetric encryption the problem is the administration of keys, for both the sender and the recipient of a message shall have possession to the same encryption key. Some safe method is needed for transmitting the key between the two parties. Such methods are for instance personal delivery of the key (e.g. at a diskette) or encrypted transmission (asymmetric encryption).
Among symmetric encryption algorithms the best known may be the DES (Data Encryption Standard) which still is in extensive use and is also known by the name DEA (Data Encryption Algorithm). Since 1970’s the DES has been a world-wide standard and its derivatives, like 3DES, are still extensively used.
The DES algorithm, particularly when used with low lengths of keys, can no longer be considered sufficiently secure for all purposes. Methods for breaking the DES encryption based on going through the key space have been tested with success in breaking the encryption. Consequently the DES algorithm has been replaced by AES (Advanced Encryption Standard), which is a standard resulting from the development work of the US government and the private sector. The encryption algorithm used for AES is Rijndael, which is a symmetric encryption algorithm based on block cipher encryption. The key lengths in compliance with the AES standard are 128, 192 and 256 bits. Other generally used symmetric encryption algorithms are e.g. IDEA (International Data Encryption Algorithm), Blowfish, RC5 and CAST.