Answered step by step
Verified Expert Solution
Question
1 Approved Answer
The Feistel cipher is a symmetric block cipher encryption framework which is the basis of many modern day encryption algorithms. In this coursework you will
The Feistel cipher is a symmetric block cipher encryption framework which is the basis of many modern day encryption algorithms. In this coursework you will implement a Feistel cipher system as a software implementation in Hack Assembly.
In a Feistel cipher the plaintext, P to be encrypted is split into two equal size parts L and R such that P LR A function F is applied to one half of the plaintext, combined with a key, and the result is XORd with the other half of the plaintext. Feistel ciphers often employ multiple rounds of this scheme. In general the scheme works as follows, for all i n
Li Ri
RiLi FRiKi
To decrypt an encrypted message using this cipher we can apply the same procedure inreverse. Forinn
Ri Li
Li RiFLiKi
For this coursework we are interested in the bit Feistel cipher which uses rounds. The function F A B A B
The keys are derived from a single bit key K such that,
K bbbbbbbb K bbbbbbbb K bbbbbbbb K bbbbbbbb
Q Write a program FeistelEncryptionasm in HACK assembly, that implements the described Feistel encryption system. The initial key, K will be stored in RAM and the plaintext to be encrypted will be represented by a bit value stored in RAM The result of the encryption should be stored in RAM Please do not use or as its not valid in HACK assembly
Step 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