Question: Alice and Bod have decided to use a symmetric encryption algorithm. They have some assumptions about their messages: - Messages only contain capital letters (

Alice and Bod have decided to use a symmetric encryption algorithm. They have some
assumptions about their messages:
- Messages only contain capital letters (i.e. A to Z)
- The length of their shared key must be greater than or equal to the length of the plaintext
- They assign each letter a number as follows: (A,0),(B,1),(C,2),(D,3),...,(Z,25)
Their algorithm combines the key and the message using modular addition. The numerical values
of corresponding message and key letters are added together, modulo 26. For example, if the plain
text is HELLO and the key is SECRET then the encrypted message is calculated as following:
Since the length of the plaintext is 5, we just need the first 5 letters of the key (i.e.SECRE), then
for each letter, we should add corresponding letters in both the plaintext and the key modulo 26.
Plaintext: H (7) E (4) L (11) L (11) O (14)
Key: S (18) E (4) C (2) R (17) E(4)
Cipher: Z (25) I (8) N(13) C(2) S (18)
a) Write a program in Python, C/C++ or JavaScript to take both the plaintext and the key as
its input, then print out the cipher. Assume the plaintext is your name, for the
key=THISISANEXAMPLEKEYINCOMPUTERSECURITYEXAM what is the
output? Add the screenshots of your program along the input and output and submit it as a
PDF file. You should also submit the source code [10 marks].
b) Explain how one can decrypt the encrypted message using the encryption algorithm in part
(a)? Write a program, in JavaScript, C/C++ or Python to take both the plaintext and the key
as its input, then print out the plaintext. Test it using the results of the previous program.
Add the screenshots of your program along the input and output and submit it as a PDF
file. You should also submit the source code [10 marks].
c) Under what conditions (specify two) can a cipher be broken, meaning that an attacker can
decipher the encrypted message without having the key? Support your reasoning with
example(s)[6 marks].
d) Identify THREE key factors for defining a robust key to enhance algorithm security?
Explain your reasons [6 marks].

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!