Hello, I am struggling with cryptology questions for my understanding. Problem 2
ID: 3753624 • Letter: H
Question
Hello, I am struggling with cryptology questions for my understanding.
Problem 2 [41: Definitions Provide a formal definition of the Gen, Enc, and Dec algorithms for both the mono-alphabetic substitution and Vigenère ciphers. Problem 3 [4]: Improving Vigenère Consider an improved version of the Vigenère cipher, where instead of using multiple shift ciphers, multiple mono-alphabetic substitution ciphers are used. That is, the key consists of t random permutations of the alphabet and the plaintext characters in positions i; t+i; 2t+i, and so on are encrypted using the ith permutation. Discuss informally how to break this version of the cipher Problem 4 [6]: Known plaintext attacks Show that the shift, substitution, and Vigenère ciphers are all trivial to break using a known-plaintext attack. How much known plaintext is needed to completely recover the key for each of the ciphers? Problem 5 [6]: Chosen plaintext attacks Show that the shift, substitution, and Vigenère ciphers are all trivial to break using a chosen-plaintext attack. How much plaintext must be encrypted in order for the adversary to completely recover the key? Compare to the previous question.Explanation / Answer
Problem 2:
1. Mono-alphabetic substitution
GEN(): sample a random permutation k on {a, . . . , z}.
ENC(k, m): parse m = m1 . . . m` , and for i {1, . . . , `}, output ci = k(mi).
DEC(k, c): parse c = c1 . . . c` , and for i {1, . . . , `}, output mi = k -1 (ci).
2. Vigen`ere cipher
GEN(): Key k {0, . . . , 25}t for some t
ENC(k,m): c1 . . . c` , ci = mi + kj(i) mod 26 I
DEC(c,k): t1 . . . t` , ti = ci kj(i) mod 26
index j(i) = i mod 26 if t != i otherwise t
Related Questions
Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.