Project #1 Course: Security and Privacy Fall 2022
Project Description
In this project, you are required to implement the DES algorithm by following the description in FIPS PUB 46-3: Data Encryption Standard, published by NIST on October 25, 1999.
Reference
Data Encryption Standard (DES) by NIST, FIPS PUB 46-3, October 25, 1999 (Reaffirmed). You can retrieve a copy of the standard document at: https://csrc.nist.gov/CSRC/media/Publications/fips/46/3/archive/1999-10-25/documents/fips46-3.pdf
Requirements
No requirement on the development environment that you could use to do the project, i.e., you are free to use a development environment of your choice. However, you are required to:
- (1) implement both the encryption and the decryption parts of the DES algorithm without
placing any restriction on the length of the plain/cipher text or the length of the key;
- (2) design and implement a user-friendly interface in which the plain/cipher text can be drawn
from the file system or input through the interface;
- (3) make encryption and decryption two independent components in that a key needs to be
supplied when performing either component.
Deliverables
(1) Source code of your implementation (soft copy); (2) A project report (soft copy).
Demonstration
In person, an individual demonstration is required during which you will be asked to apply one or more input to show both encryption and decryption results through the user-friendly interface.
Project Period
Due date: Wednesday, Oct. 12, 2022 (tentative).
You need to do a demo and then turn in the deliverables.
Grading
Correctness of the implementation: 50%;
Friendliness of the user interface: 20%;
Documentation (project report + comments in the source code): 30%.
Special Note
Copying someone else’s work is strictly prohibited. If caught, both the offender and the conspirator are required to provide an explanation and, depending on the seriousness of the offense, may be penalized for dishonesty.