|
|
Triple DES Encryption
Overview
The Data Encryption Standard (DES) was developed by an IBM team
around 1974 and adopted as a national standard in 1977. Triple DES
is a minor variation of this standard. It is three times slower
than regular DES but can be billions of times more secure if used
properly. Triple DES enjoys much wider use than DES because DES is
so easy to break with today's rapidly advancing technology. In 1998
the Electronic Frontier Foundation, using a specially developed
computer called the DES Cracker, managed to break DES in less than
3 days. And this was done for under $250,000. The encryption chip
that powered the DES Cracker was capable of processing 88 billion
keys per second. In addition, it has been shown that for a cost of
one million dollars a dedicated hardware device can be built that
can search all possible DES keys in about 3.5 hours. This just
serves to illustrate that any organization with moderate resources
can break through DES with very little effort these days. No sane
security expert would consider using DES to protect data.
Triple DES was the answer to many of the shortcomings of DES.
Since it is based on the DES algorithm, it is very easy to modify
existing software to use Triple DES. It also has the advantage of
proven reliability and a longer key length that eliminates many of
the shortcut attacks that can be used to reduce the amount of time
it takes to break DES. However, even this more powerful version of
DES may not be strong enough to protect data for very much longer.
The DES algorithm itself has become obsolete and is in need of
replacement. To this end the National Institute of Standards and
Technology (NIST) is holding a competition to develop the Advanced
Encryption Standard (AES) as a replacement for DES. Triple DES has
been endorsed by NIST as a temporary standard to be used until the
AES is finished sometime in 2001.
The AES will be at least as strong as Triple DES and probably
much faster. Many security systems will probably use both Triple
DES and AES for at least the next five years. After that, AES may
supplant Triple DES as the default algorithm on most systems if it
lives up to its expectations. But Triple DES will be kept around
for compatibility reasons for many years after that. So the useful
lifetime of Triple DES is far from over, even with the AES near
completion. For the foreseeable future Triple DES is an excellent
and reliable choice for the security needs of highly sensitive
information.
In Depth
Triple DES is simply another mode of DES operation. It takes
three 64-bit keys, for an overall key length of 192 bits. In
Private Encryptor, you simply type in the entire 192-bit (24 character) key
rather than entering each of the three keys individually. The
Triple DES DLL then breaks the user provided key into three subkeys,
padding the keys if necessary so they are each 64 bits long. The
procedure for encryption is exactly the same as regular DES, but it
is repeated three times. Hence the name Triple DES. The data is
encrypted with the first key, decrypted with the second key, and
finally encrypted again with the third key.
Consequently, Triple DES runs three times slower than standard DES,
but is much more secure if used properly. The procedure for
decrypting something is the same as the procedure for encryption,
except it is executed in reverse. Like DES, data is encrypted and
decrypted in 64-bit chunks. Unfortunately, there are some weak keys
that one should be aware of: if all three keys, the first and
second keys, or the second and third keys are the same, then the
encryption procedure is essentially the same as standard DES. This
situation is to be avoided because it is the same as using a really
slow version of regular DES.
Note that although the input key for DES is 64 bits long, the
actual key used by DES is only 56 bits in length. The least
significant (right-most) bit in each byte is a parity bit, and
should be set so that there are always an odd number of 1s in every
byte. These parity bits are ignored, so only the seven most
significant bits of each byte are used, resulting in a key length
of 56 bits. This means that the effective key strength for Triple
DES is actually 168 bits because each of the three keys contains 8
parity bits that are not used during the encryption process.
Modes of Operation
Triple ECB (Electronic Code Book)
This variant of Triple DES works exactly the same way as the ECB
mode of DES. Triple ECB is the type of encryption used by
Private Encryptor. This is the most commonly used mode of operation.
Triple CBC (Cipher Block Chaining)
This method is very similar to the standard DES CBC
mode. As with Triple ECB, the effective key length is 168 bits
and keys are used in the same manner, as described above, but the
chaining features of CBC mode are also employed. The first 64-bit
key acts as the Initialization Vector to DES. Triple ECB is then
executed for a single 64-bit block of plaintext. The resulting
ciphertext is then XORed with the next plaintext block to be
encrypted, and the procedure is repeated. This method adds an extra
layer of security to Triple DES and is therefore more secure than
Triple ECB, although it is not used as widely as Triple ECB.
Click here
for more information on DES.
|
|