Assignment Part 1: Programming
Write (Java or C++) UDP programs to implement a remote login protocol. For simplicity, let us call the programs "Host" and "Client", which are executed by Alice and Bob, respectively.
Alice and Bob share a common password PW, which contains 8 alphanumeric characters. Alice also has a public and privacy key pair pk = (e, N), sk = (d, N) for the plain RSA encryption where N is a 1024-bit Modulus. Alice wants to authenticate Bob for every remote connection established by Bob. This is done through the following identification protocol:
1: B → A: Username
2: A → B: pk, NA
3: B → A: Encpk(H(Username, PW, NA+1))
4: A → B: Success/Fail
In the above protocol, NA is a 128-bit nonce randomly chosen by Alice in each session, H is the SHA-1 hash function and Enc denotes the plain RSA encryption.
Assignment Part 2: Protocol analysis
Problem 1: Explain the purpose of using the nonce NA in the protocol.
Problem 2: What is the advantage if we replace the plain RSA encryption by a randomised public-key encryption scheme (e.g., the ElGamal encryption)?
Problem 3: Suppose we replace the plain RSA encryption by a more secure version (e.g. RSA-OAEP), is the protocol secure against active attackers? Justify your answer.
Problem 4: Modify the protocol so that Bob can also authenticate Alice.
Get Programming Assignment Help service by the industry best professional tutors and enjoy your academic life to the fullest!
Tags: Programming Assignment Help, Programming Homework Help, Programming Coursework, Programming Solved Assignments, Protocol Analysis Assignment Help, Protocol Analysis Homework Help, Advanced Network Security Assignment Help, Advanced Network Security Homework Help
Attachment:- Advanced Network Security.rar