Encryption the plain-text using the round keys, Data Structure & Algorithms

Assignment Help:

Encryption the plain-text using the round keys:

1. (Key schedule) Implement an algorithm that will take a 128 bit key and generate the round keys for the AES encryption/decryption process.

2. (Encryption) Implement an algorithm that takes the key schedule and 128 bits of plain text and generates the cipher-text according to the AES encryption algorithm. Your code should print the state of each round as shown in sample out.txt.

3. (Decryption) Implement an algorithm that takes the key schedule and 128 bits of cipher-text and generates the plain-text according to the AES decryption algorithm. Your code should print the state of each round as shown in sample out.txt.

4. (mainline) Write a mainline (main() for your program that will read in the sbox(stored in le aes sbox.txt), inverse sbox (stored in leaes inv sbox.txt), and for each plain-text/key le it should

(a) generate the round keys using the key schedule algorithm,

(b) encryption the plain-text using the round keys, displaying the required outputs,

(c) decrypted the cipher-text (obtain from the last step) and decrypt it, displaying the required output.


Related Discussions:- Encryption the plain-text using the round keys

Sparse matrix, How sparse matrix stored in the memory of a computer?

How sparse matrix stored in the memory of a computer?

Binary tree construction, Construct a B+ tree for the following keys, start...

Construct a B+ tree for the following keys, starting with an empty tree.  Each node in the tree can hold a maximum of 2 entries (i.e., order d = 1). Start with an empty root nod

Determine the output of vehicles algorithm, Draw trace table and determine ...

Draw trace table and determine the output from the below flowchart using following data (NOTE: input of the word "end" stops program and outputs results of survey):  Vehicle = c

High-level and bubble algorithm , 1. Give both a high-level algorithm and a...

1. Give both a high-level algorithm and an implementation (\bubble diagram") of a Turing machine for the language in Exercise 3.8 (b) on page 160. Use the ' notation to show the co

Calculus, basic calculation for algorith.

basic calculation for algorith.

Explain merge sort, Merge sort: Merge sort is a sorting algorithm that ...

Merge sort: Merge sort is a sorting algorithm that uses the idea of split and conquers. This algorithm splits the array into two halves, sorts them separately and then merges t

Recursion, differences between direct and indirect recursion

differences between direct and indirect recursion

Traversing a binary search tree, Binary Search Tree let three types of trav...

Binary Search Tree let three types of traversals by its nodes. They are: Pre Order Traversal In Order Traversal Post Order Traversal In Pre Order Traversal, we ca

Binary tree and binarytree parts, Q. What do you understand by the term Bin...

Q. What do you understand by the term Binary Tree? What is the maximum number of nodes which are possible in a Binary Tree of depth d. Explain the terms given below with respect to

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd