Optimized Implementation on FPGA - 2023.2 English

Vitis Libraries

Release Date
2023.2 English

Key schedule just contains permuted choice and left shifting, which generates a mapping from bit positions in original key and bit positions in each round key. As a result, we can calculate the mapping beforehand and make the entire process in key schedule into direct assignments of round keys.

The data block and key are using different endian approach from arbitrary precision data type defined in HLS, so endian convertion for original data block and key is added before and after encryption and decryption.

The implemented DES encryption/decryption flow is shown in the following figure.

DES flow

The implemented 3DES flow uses dataflow among three DES modules.