#### CSCI971/CSCI471 Assignment 1 Modern Cryptography

## CSCI971/CSCI471 Modern Cryptography

**Assignment 1 (25 marks)**

**Due: 24 Aug 2021 23:00**

Note: if you give a long-redundant answer and it is hard to find the key points, marks will be deducted.

### Task A:

Consider the following one-time pad encryption scheme.

A key stream *K *= *K*1*K*2 *· · · K**n *and a message *X *= *X*1*X*2 *· · · X**n *where *K**i *and *X**i *are integers from the set *{*0*, *1*, · · · , *25*} *that corresponds to the English letters *{a, b, · · · , z}*. The encryption algorithm and the decryption algorithm are as follows.

- Encryption:
*Y**i*= (*X**i*+*K**i*) mod 26 - Decryption:
*X**i*= (*Y**i – K**i*) mod 26 Suppose that- A key is “21,1, 9, 16, 13, 24, 5, 6, 18, 3, 0, 1, 9, 16, 13, 24, 5, 6, 18”, and

- A message is “I hate remote learning”

What is the ciphertext after the encryption? (2 marks)

Explain the reasons why the “mod” computation is important and necessary. (2 marks)

What should be changed if the message is changed to “I hate remote learning in the coming 365 days” (3 marks)

### Task B: (7 marks)

Introduce Alan Turing’s contributions during World War II.

- This is a brief report (About 500 words at least)
- You can copy the descriptions from the internet but rephrasing is desired.

- Make your report looks professional like an article.

- This report is written for cryptography students (think the key points that you should highlight in your report)

- The report must clearly state whether Turing Machine is related to his contributions during WW II.

### Task C: (4 marks)

Suppose f(x) is a one-way function satisfying f(x_1) ○ f(x_2)=f(x_1+x_2) for all integers. There are three operations: a function operation ○, mathematical operations + and * .

Problem A: Given f(a), f(b), the problem is to compute f(a*b) Problem B: Given f(c), f(d), the problem is to compute f(c*c+2c*d)

Prove that problem A is harder than problem B.

### Task D: (3 marks)

Introduce and explain TWO applications of hash function in blockchain.

### Task E: (4 marks)

Alice wants to send a movie up to 10G to Bob. Suppose they shared a key K before movie sharing. Describe how Alice should do in order to meet Bob’s following requirements.

- No one except Alice can know what movie I (Bob) will receive.
- I (Bob) don’t want to decrypt it before knowing what the movie is because the decryption will cost time.
- No one can compromise the confidentiality or the integrity.

Note: you can use what you have learned from the class to solve this problem. You should answer in the following way:

Requirements:

(What you need should be all put here)

Alice:

Step 1:

Step 2:

Step 3:

……

Bob:

Step 1:

Step 2:

Step 3:

……

END

Submission:

Submit the pdf file to the Moodle site. The following information should be provided on the top.

#### CSCI971/CSCI471 Modern Cryptography Assignment 1

Name: Student Number:

Plagiarism:

A plagiarised assignment will receive a zero mark (and be penalised according to the university rules).