首页 >
> 详细

Module Code: COMP322301

School of Computing Semester 2 2019/2020

Calculator instructions:

- You are allowed to use a non-programmable calculator only from the following list of approved models in

this examination: Casio FX-82, Casio FX-83, Casio FX-85.

Dictionary instructions:

- You are not allowed to use your own dictionary in this examination. A basic English dictionary is available

to use: raise your hand and ask an invigilator, if you need it.

Examination Information

- There are 2 hours to complete the examination.

- There are 4 pages to this examination.

- Answer all 3 questions.

- The number in brackets [ ] indicates the marks available for each question or part question.

- You are reminded of the need for clear presentation in your answers.

- The total number of marks for this examination paper is 40.

Page 1 of 4 Turn the page over

Module Code: COMP322301

Question 1

Consider a symmetric cryptosystem (M,C,K,E,D), where M is the plaintext space, C is the ciphertext space,

K is the key space, E : K ×M → C is the encryption function, and D : K ×C →M is the decryption function.

(a) Describe Kerckhoff’s principle: (i) in general, and (ii) applied specifically to this cryptosystem. [3 marks]

(b) Define the key space K and the encryption function E in the Hill cipher with block size L.

Give an example of a chosen plaintext attack against the Hill cipher. [4 marks]

(c) Explain what we mean by a computationally secure cryptosystem. [2 marks]

(d) Explain how we can obtain the 3DES cryptosystem from the DES (Data Encryption Standard) cryptosystem.

What is the theoretical computational security level of 3DES (in bits)?

Give an example of a ciphertext only attack against 3DES that reduces its security level. [4 marks]

[Question 1 Total: 13 marks]

Page 2 of 4 Turn the page over

Module Code: COMP322301

Question 2

Alice and Bob want to agree on a common key to encrypt and exchange data using a symmetric cryptosystem.

(a) Explain the Diffie-Hellman key exchange protocol. State all the computations and the information that Alice

and Bob need to exchange to agree on the common key. [6 marks]

(b) Explain the one-time pad cryptosystem in terms of the key and the encryption function used. Under which

conditions does the one-time pad have perfect information-theoretical security? Explain why the one-time

pad cryptosystem is not practical in most applications. [5 marks]

(c) Alice and Bob have a quantum channel following the BB84 protocol that allows them to exchange a sequence

of secret bits. Explain why the quantum channel is a secure way to exchange a key stream even if Eve is

potentially eavesdropping on their channel. Estimate how likely it is that Alice and Bob will notice if Eve

attempts to eavesdrop on one bit of information in the channel. [3 marks]

[Question 2 Total: 14 marks]

Page 3 of 4 Turn the page over

Module Code: COMP322301

Question 3

Bob wishes to receive a message from Alice which has been authenticated via a digital signature.

(a) Alice uses the RSA signature protocol and chooses the modulus n = 161 and the public key e = 5. Explain

how the private key d is chosen in RSA. Use the extended Euclidean algorithm to compute the private key.

[6 marks]

(b) Bob receives x = 14 and y = xd ≡ 21 (mod 161) as the RSA signature. Bob has the modulus n = 161 and

the public key e = 5, but does not know Alice’s private key. Verify using the square-and-multiply algorithm

that Alice’s signature is correct. Show all steps. [4 marks]

(c) Describe an algorithm for using a birthday attack to find a collision against a hash function h : X → Y .

Approximately how many random samples q do we need to find a collision with probability p = 0.5 with the

birthday attack, assuming the co-domain size is |Y |? [3 marks]

[Question 3 Total: 13 marks]

联系我们

- QQ：99515681
- 邮箱：99515681@qq.com
- 工作时间：8:00-21:00
- 微信：codinghelp

- Cmpsc 131代写、Python语言程序辅导 2023-05-04
- Coursework 2: 2D Led Array编程代写 2023-05-04
- 代做coursework 2 2023-05-04
- Kit107代写、辅导c++语言编程 2023-05-04
- 辅导program、辅导java/Python编程 2023-05-03
- Cs520编程代写、辅导c/C++设计程序 2023-05-03
- Event Search Android App编程代做、辅导c++，Jav 2023-05-03
- Program辅导、辅导java，C++编程 2023-05-03
- 代写stat3010、辅导r编程设计 2023-05-03
- 代做comp5310、辅导java，Python编程 2023-05-03
- 代写qbus6820、辅导c++，Java编程 2023-05-02
- 代做com3504、辅导python，C++程序 2023-05-02
- 代写finc6021、辅导python，C++编程 2023-05-02
- Fit2099代写、辅导python，Java程序 2023-05-02
- 代做math60082、辅导java，Python程序 2023-05-02
- 代写comp30024、辅导python语言程序 2023-05-01
- 代做csc246/446、辅导python，Java编程 2023-05-01
- 代写comp30023、辅导c++程序设计 2023-05-01
- Comp2006代写、辅导c/C++编程设计 2023-05-01
- 代写finm7409、辅导java，C++编程 2023-05-01