Symmetric algorithms use different length keys, which usually means
higher security. Symmetric algorithms can be divided into two categories: stream
ciphers, which take and encrypt one bit of the original data at a time, and
block ciphers, which take a number of bits and encrypt them as a single block
(2). The majority of ciphers belong to the block cipher class. Symmetric
algorithms are generally faster and use a much shorter key than asymmetric ones.
DES, Data Encryption Standard, is the notorious symmetric cryptosystem. It has
been certified by NIST, National Institution of Standards and Technology, for
use as an official US Government encryption standard for less-than-top-secret
secret material (2). DES was first certified for government use in 1977 (2). DES
is a strong cipher, which encrypts a block of 64 bits at a time. DES encryption
consists of many rounds of different transformations and permutations, which are
linear and easy to reverse (3). Performing a permutation involves arranging
elements in different arrangements, where order does matter. The critical
encryption is done using S-boxes. S-boxes, or substitution boxes, are sets of
highly non-linear functions, implemented in DES as a set of lookup tables (3).
After the S-boxes, the results are still permutated (3). There are two known
ways to decode DES. The first way consists of a search of the keyspace, which
consists of 2^56 possible keys (3). If one could test one million keys every
second, it would take about two thousand years to go through the keyspace. With
special hardware, a chip could be designed that does a billion tests per second,
reducing the time to two years (3). The more recent method of decoding DES is
differential cryptanalysis. This method reduces the number of keys that must be
tested, but it requires 2^47 chosen plaintexts encrypted with the key that is
trying to be recovered. Since it is unlikely that anyone would agree to encrypt
2^47 chosen plaintexts with their secret DES key, this attack is impracticable
in practice (3).
When used properly, DES is secure against all but the most
powerful organizations. Proper use means avoiding weak keys. Weak keys are a
result of the key being split to sixteen pieces, one for each round of
encryption (4). Using simple DES for top-secret data is not a good idea with
today's technology; however, it is sufficient of everyday use (4). Asymmetric
cryptosystems, also known as public key cryptosystems, use one key, the public
key, to encrypt a message and a different key, the private key, to decrypt it.
An efficient and reliable solution is a public key cryptosystem is RSA. Ron
Rivest, Adi Shamir, and Leonard Adleman invented the RSA algorithm in 1978. RSA
is the most widely used public key cryptosystem today and has often been called
a de facto standard (6). RSA involves using prime and relatively prime numbers.
The study of primes and divisibility goes back to Euclid. In Elements, Euclid
proves there are infinitely many prime numbers. If one number divides into the
number evenly, then that is a factor, if there are no factors, the number is
prime. If the number, n, is composite, it must have at least one prime factor
less than the square root of n. The math behind RSA public key encryption goes
as follow: 1) Find P and Q, two large prime numbers. 2) Choose E such that E is
less than PQ, and such that E and (P-1)(Q-1) are relatively prime, which means
they have no prime factors in common. E does not have to be prime, but it must
be odd. (P-1)(Q-1) can't be prime because it's an even number. 3) Compute D such
that (DE - 1) is evenly divisible by (P-1)(Q-1). Mathematicians write this as DE
= 1 (mod (P-1)(Q-1)), and they call D the multiplicative inverse of E.