Answered step by step
Verified Expert Solution
Question
1 Approved Answer
I need the code in c++ language with algorithm and output Project 1 (Data Encryption Standard): The Data Encryption Standard (DES) was designed to encipher
I need the code in c++ language with algorithm and output
Project 1 (Data Encryption Standard): The Data Encryption Standard (DES) was designed to encipher sensitive but non-classified data. It is bit-oriented, unlike the other ciphers we have seen, It uses both transposition and substitution and for that reason is sometimes referred to as a product cipher. Its input, output, and key are each 64 bits long. The sets of 64 bits are referred to as blocks. The cipher consists of 16 rounds, or iterations. Each round uses a separate key of 48 bits. These round keys are generated from the key block by dropping the parity bits (reducing the effective key size to 56 bits), permuting the bits, and extracting 48 bits. A different set of 48 bits is extracted for each of the 16 rounds (see Figure 1). If the order in which the round keys is used is reversed, the input is deciphered. I key PC-1 PC-2 K1 ISH L APC2K16 Figure 1: DES key schedule generation L=R, =LAR, Kj) output Figure 2: DES message encipherment The rounds are executed sequentially, the input of one round being the output of the previous round. The right half of the input, and the round key, are run through a function that produces 32 bits of output. That output is then XOR-ed into the left half, and the resulting left and right halves are swapped (see Figure 2). R44 (32 bits) K (48 bits) R- (48 bits) 6 bits into cach 4 bits out of each 32 bits Figure 3: The ffunction The function provides the strength of the DES. The right half of the input (32 bits) is expanded to 48 bits, and this is XOR-ed with the round key. The resulting 48 bits are split into eight sets of six bits each, and each set is put through a substitution table called the S-box. Each S-box produces four bits of output. They are concatenated into a single 32-bit quantity, which is permuted. The resulting 32 bits constitute the output of the function (see Figure 3). For more information about DES, you should refer to the PDF file and the slide set of Lecture 2 DES on Blackboard 1. Write a detailed algorithm for DES block cipher. 2. Give a program corresponding to your proposed DES algorithm, using your favorite programming language. Your program should simulate this block cipher and display the ciphertext along with the corresponding plaintext and key. The implementation of this DES block cipher software should be as structured as possibleStep by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started