# How many Rounds are there in DES?

DES uses 16 rounds. Each of the 16 rounds includes the broad-level steps are as follows −

• Key Transformation − An initial 64-bit key is changed into a 56-bit key by discarding each 8th bit of the initial key. Therefore for each round, a 56 bit key is available. From this 56-bit key, a different 48-bit subkey is generated during each round using a process is known as key transformation.

The 56-bit key is divided into two halves, each of 28 bits. These halves are circularly shifted left by one or two positions, based on the round.

For instance, if the round number is 1, 2, 9 or 16, the shift is completed by only one position. For another round, the circular shift is completed by two positions. The number of key bits shifted per round is display in the table.

 Round Number of key bits shifted 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 1 2 2 2 2 2 2 1 2 2 2 2 2 2 1

No of key bits shifted per round

• Expansion Permutation − After initial permutation, it had two 32-bit plaintext areas, known as the Left Plain Text and Right Plain Text. During expansion permutation, the RPT is diffuse from 32 bits to 48 bits. It can be enhancing the bit size from 32 to 48, the bits are permuted as well known as the expansion permutation.

• S-box Substitution − S-box substitution is a procedure that accepts the 48-bit input from the XOR operation containing the compressed key and expanded RPT, and creates a 32-bit output using the substitution technique.

• P-box Permutation − The output of the S-box includes 32 bits. These 32 bits are permuted using a P-box. This straightforward permutation structure contains simple permutation including replacement of each bit with another bit as defined in the Pbox table, without any expansion or compression. This is known as P-box Permutation.

The P-box is display in the table. For instance, a 16 in the first block denotes that the bit at position 16 of the original input change to the bit at position 1 in the output and a 10 in the block number 16 denotes that the bit at the position 10 of the original input change to bit at the position 16 in the output.

 16 7 20 21 29 12 28 17 1 15 23 26 5 18 31 10 2 8 24 14 32 27 3 9 19 13 30 6 22 11 4 25
• XOR and Swap − It can be implementing all these operations only on the 32-bit right half portion of the 64-bit original plaintext. The left half portion was unimpressed so far. At this juncture, the left half portion of the initial 64-bit plaintext block is XORed with the output created by P-box Permutation.