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

Determine the algorithm for z-buffer method, Algorithm for Z-Buffer Method ...

Algorithm for Z-Buffer Method (a)  Initialize every pixel in the viewport to the smallest value of z, namely z0 the z-value of the rear clipping plane or "back-ground". Store a

Computational complexity, Generally, Computational complexity of algorithms...

Generally, Computational complexity of algorithms are referred to through space complexity (space needed for running program) and time complexity (time needed for running the progr

How can a lock object be called in the transaction, How can a lock object b...

How can a lock object be called in the transaction? By calling Enqueue and Dequeue in the transaction.

Applications, Arrays are simple, however reliable to employ in more conditi...

Arrays are simple, however reliable to employ in more condition than you can count. Arrays are utilized in those problems while the number of items to be solved out is fixed. They

What are the languages which support assertions, What are the languages whi...

What are the languages which support assertions Languages which support assertions often provide different levels of support. For instance, Java has an assert statement which t

Define about the structure - container, Define about the Structure - Contai...

Define about the Structure - Container - Some containers hold elements in some sort of structure, and some don't. Containers with no structure include bags and sets. Containe

Randomized algorithm, need an expert to help me with the assignment

need an expert to help me with the assignment

Properties of a red-black tree, Any binary search tree must contain followi...

Any binary search tree must contain following properties to be called as a red-black tree. 1. Each node of a tree should be either red or black. 2. The root node is always bl

Abstract data type- queue, A significant aspect of Abstract Data Types is t...

A significant aspect of Abstract Data Types is that they explain the properties of a data structure without specifying the details of its implementation. The properties might be im

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