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

Define chaining process of hashing, Chaining In this method, instead of...

Chaining In this method, instead of hashing function value as location we use it as an index into an array of pointers. Every pointer access a chain that holds the element havi

Two broad classes of collision resolution techniques, Two broad classes of ...

Two broad classes of collision resolution techniques are A) open addressing and B) chaining

State in brief about assertion, State  in brief about assertion Asser...

State  in brief about assertion Assertion: A statement which should be true at a designated point in a program.

Advanced data structures, In this unit, the following four advanced data st...

In this unit, the following four advanced data structures have been practically emphasized. These may be considered as alternative to a height balanced tree, i.e., AVL tree.

Define approximating smooth surfaces with polygon nets, Approximating smoot...

Approximating smooth surfaces with Polygon nets Networks of polygons are used to represent smooth surfaces. They are, of course, only an approximation to the true surface, but

How do collisions happen during hashing, How do collisions happen during ha...

How do collisions happen during hashing? Usually the key space is much larger than the address space, thus, many keys are mapped to the same address. Assume that two keys K1 an

Explain th term input and output- pseudocode, Explain th term input and ou...

Explain th term input and output-  Pseudocode Input and output indicated by the use of terms input number, print total, output total, print "result is" x and so on.

Linear array, representation of linear array

representation of linear array

Types of triangular matrices, Triangular Matrices Tiangular Matrices is...

Triangular Matrices Tiangular Matrices is of 2 types: a)  Lower triangular b)  Upper triangular

Linked list implementation of any circular queue, Link list representation ...

Link list representation of a circular queue is more efficient as it employs space more competently, of course with the added cost of storing the pointers. Program 7 gives the link

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