SLAA547C July 2013 – July 2021 MSP430FR5739
The key schedule for all sixteen rounds of the DES algorithm must be calculated before encryption or decryption can occur. The key schedule process in this library is the most CPU intensive component of the algorithm. System speed can be increased by limiting the number of keys to be scheduled. Figure 4-11 describes how the key schedule is calculated. First, the 64-bit key is sent through a permutation box that reduces the bit count to 56. The result is split evenly and left rotated by 1-2 bits depending on the round. The rotate results are fed into a second permutation box that gives the round key used in the DES Function block.