Computer Science Tutorial

Data Encryption Standard

DES is a symmetric key algorithm which encrypts a 64 bit plaintext into a ciphertext using 56 bit keys. In data communication plaintext refers to the data which we want to send and ciphertext is the encrypted data which is actually sent.

Data Encryption standard uses keys in a block form or 8X8 matrix. The key length is 64 bits but only 56 bits are used. The last element in each row is discarded which converts a 8X8 matrix into 8X7 matrix. The 56 bit key is operated with 64 bit plain text to generate 64 bit cipher text.

This is a 64 bit key to be used for DES. The last column or last element of every row is discarded to produce
    12  56  87  6   45  98  6   34     
    6   45  98  39  61  84  9   33
    9   67  19  39  69  79  92  7
    81  31  30  66  99  6   9   12
    12  56  87  6   25  98  60  34 
    76  45  98  39  61  84  9   30
    19  67  79  59  69  79  92  7
    85  31  30  96  99  6   9   12


56 bit key as below.
    12  56  87  6   45  98  6      
    6   45  98  39  61  84  9  
    9   67  19  39  69  79  92 
    81  31  30  66  99  6   9  
    12  56  87  6   25  98  60 
    76  45  98  39  61  84  9  
    19  67  79  59  69  79  92
    85  31  30  96  99  6   9  
Since, it is a symmetric key algorithm, the same key is used by both sender and receiver to encrypt and decrypt the data. The 56 bit key length is considered too small and prone to attack. Since, computer processors became too advanced in recent times, it has become possible to break the encrypted data in a reasonable time. So, an idea to upgrade this algorithm arised. In 2001 DES was replaced by Advanced encryption Standard.

How DES algorithm works?


  1. First an intial permutation function is applied on 64 bit plaintext.
  2. The function divides the plaintext into two halves, left plaintext (LPT) and right plaintext (RPT).
  3. Each LPT and RPT goes thorough 16 round of encryption. Each round consits of below 5 process.
    1. Key Transformation
    2. Expansion Permutation
    3. S-box permutation
    4. P box permutation
    5. XOR and SWAP
  4. Finally LPT and RPT are combined and a final permutation function is performed on the combined block.
  5. inal permutation function generates a 64 bit cipher text.

For decryption at receiver end ,we use the same process but in reverse order.
Previous Page
BN Computer Academy
All Rights Reserved