I have project about cyber security

profilenasir.malik7422
INM443_MScnonCS_Coursework_2019.pdf

INM443 Cryptography

Non-Cyber Security MSc / MSci Courses

Coursework

ECC Implementation for Educational Purpose PROJECT DESCRIPTION Write a program which takes an elliptic curve over 𝐹" 𝑜𝑟 𝐹&' as input from the user, creates keys, encrypts and decrypts files. Your implementation should display the steps followed in detail for the purpose of student learning. Therefore, it is essential to graphically show the valid points of the input curve, the public and private key points, how plaintext (each letter/ byte of the input file) is converted to a point, how addition/multiplication results to new points (ciphertext). You can choose any ECC algorithm you wish to implement, however, EC-ElGamal is proposed. Finally note that the supportive finite fields 𝐹" 𝑜𝑟 𝐹&' should be from 192-bits to 571-bits according to NIST standards (https://www.secg.org/sec2- v2.pdf). ASSESSMENT CRITERIA You will need to submit your report and implementation in MOODLE. Note that your implementation will go through TURNITIN (plagiarism tool). In your report describe the following: § Design the GUI interface to efficiently display the points over a finite field of

the public/private key pair, plaintext, and ciphertext (hint: see CryptoTool how graphically represents addition of points in a curve – also check: https://cse.unl.edu/~ssamal/crypto/EEECC.pdf)

[20 marks] § Implementation/Graphical representation of public and private key

generation algorithm [20 marks]

§ Implementation/Graphical representation of the encryption process [20 marks]

§ Implementation/Graphical representation of the decryption process [20 marks]

§ User / Help manual of the software [20 marks]

Note that report marking follows the University Assessment and Feedback Policy: https://www.city.ac.uk/__data/assets/pdf_file/0009/365292/Assessment-and-Feedback-Policy-Senate- October-2016-2.pdf

SUBMISSION DATES § Justify in your report each of the assessment criteria described above. § You can write your document in latex (check Overleaf – web-based online

latex editor) 1. https://www.overleaf.com/latex/learn/free-online-introduction-to-latex-part-

1 2. http://www.overleaf.com/tutorial

§ Electronic submission in MOODLE by Sunday 8thth of December at 5pm. § Project demonstration: During Crypto Lab 3rd of December at 11am. REPORT STRUCTURE Below is a report template for you to follow. Title: ECC Implementation for Educational Purpose Name/Affiliation: Your full name and your affiliation (i.e. MSci Computer Science) 1. Introduction In this section, you will give an overview of the project and what you are trying to achieve. 2. Related Studies In this section you will describe similar ECC graphical implementations (2-3 related studies). 3. Design In this section, you will describe your approach to graphically represent key pair generation / encryption / decryption of files for educational purposes. 4. Implementation and discussion In this section, you will describe how you have implemented the different algorithms (key generation/encryption/decryption) and how you are linking them to your graphical representation. Concluding remarks and future work Here conclude with: what you have done; and maybe other implementation directions that could have used? References Appendix A User/Help manual (instructions on how to run/operate your software). Appendix B § Full source code (excluding libraries).