0% found this document useful (0 votes)
30 views6 pages

DNSC605 - Cybersecurity and Cryptography in Fintech

Uploaded by

karmaelgendy04
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
30 views6 pages

DNSC605 - Cybersecurity and Cryptography in Fintech

Uploaded by

karmaelgendy04
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

DNSC605 – Final Exam Project

As we approach the culmination of the DNSC605 (Cybersecurity and


Cryptography in Fintech) course, I'm excited to share the details of your
final exam project.
The final project allows you to apply the knowledge and skills acquired
throughout the semester and showcase your understanding of the course
material.
Below, you'll find the Project Description, the assigned project for each
group, the deliverable content, and the rubrics detailing the key components
and criteria upon which your final project will be assessed.
Each project number of the following project assignments is assigned to
the same group number listed in the project groups’ file uploaded on
Moodle.

Project Description:
The final project for each group consisted of two parts as follows:

1. A working program (using any programming language of your


choice) that implements the assigned cryptosystem.

2. A PowerPoint presentation that describes the steps taken to


implement the program. This PowerPoint presentation must include at
least a description of the implementation approach/algorithm of the
project. You are welcome to add any extra information relating to your
project (e.g. flowcharts, key generation, dependencies, UML class
diagrams, … etc.) and this information will be evaluated.
Project Assignments:
1. Project# 1:
Design and develop a console application that implements the AES
cipher algorithm for text files. The program should prompt the user to
enter the name of the text file and the key, and then use the AES cipher
algorithm to encrypt the text file. The program must also be able to
decrypt the ciphertext back to the original text file. You can test your
program with different text files and keys to make sure that the
encryption and decryption are correct. You, as a group, are free to
choose any key size (128 bits, 192 bits, or 256 bits) implementation of
the AES cipher. Making this project a GUI application is a bonus
for all group members.

2. Project# 2:
Design and develop a console application that allows users to encrypt
and decrypt text messages using the Playfair cipher. The application
should prompt the user to enter a keyword and a plaintext message,
and then display the corresponding ciphertext message. It must also
allow the user to enter a ciphertext message and the keyword used for
encryption, and then display the corresponding plaintext message.
Your program should be able to handle input text of any length and
should include a user-friendly interface with clear instructions. Making
this project a GUI application is a bonus for all group members.

3. Project# 3:
Develop a console-based network chat application that implements a
secure text-based message transfer capability using the Vigenère
cipher for encryption/decryption. The application should allow the two
parties to securely exchange a message over an insecure network
by utilizing a pre-shared keyword (key) and the Vigenère cipher to
encrypt and decrypt the message. Making this project a GUI
application is a bonus for all group members.

4. Project# 4:
Design and develop a console application that implements the DES
cipher algorithm for text files. The program should prompt the user to
enter the name of the text file and the key, and then use the DES cipher
algorithm to encrypt the file. The program must also be able to decrypt
the ciphertext back to the original file. You can test your program with
different text files and keys to make sure that the encryption and
decryption are correct. Making this project a GUI application is a
bonus for all group members.

5. Project# 5:
Design and develop a console application that implements the AES
cipher algorithm for image files. The program should prompt the user
to enter the name of the image file and the key, and then use the AES
cipher algorithm to encrypt the image file. The program must also be
able to decrypt the ciphertext back to the original image file. You can
test your program with different image files and keys to make sure that
the encryption and decryption are correct. Additionally, you can show
the encrypted and decrypted image files to make sure that they are
visible and not corrupted during the encryption and decryption process.
For your information, AES image encryption works by encrypting the
pixel values (color channels of red, green, and blue, separately) of the
input image. You, as a group, are free to choose any key size (128 bits,
192 bits, or 256 bits) implementation of the AES cipher. You are also
free to use small image sizes to reduce the time required for image
encryption and decryption. Making this project a GUI application is
a bonus for all group members.
6. Project# 6:
Design and develop a console application that implements the DES
cipher algorithm for image files. The program should prompt the user
to enter the name of the image file and the key, and then use the DES
cipher algorithm to encrypt the image file. The program must also be
able to decrypt the ciphertext back to the original image file. You can
test your program with different image files and keys to make sure that
the encryption and decryption are correct. Additionally, you can show
the encrypted and decrypted image files to make sure that they are
visible and not corrupted during the encryption and decryption process.
For your information, DES image encryption works by encrypting the
pixel values (color channels of red, green, and blue, separately) of the
input image. You are also free to use small image sizes to reduce the
time required for image encryption and decryption. Making this
project a GUI application is a bonus for all group members.

7. Project# 7:
Design and develop a console application that reads an image file,
encrypts/decrypts the pixel values using the Vigenère cipher, and
saves the encrypted/decrypted image to an output file. The program
should take two command-line arguments: the input image file path
and the output image file path. The program should prompt the user to
enter a keyword for encryption/decryption, and then use this keyword
to encrypt/decrypt the pixel values of the input image. The program
should use the Vigenère cipher to encrypt/decrypt each color channel
(red, green, and blue) separately. Finally, the program should save the
encrypted/decrypted image to the output file. Test your program with
different images and keys, and make sure that the encrypted images
can be decrypted back to their original form using the same key. You
are also free to use small image sizes to reduce the time required for
image encryption and decryption. Making this project a GUI
application is a bonus for all group members.
8. Project# 8:
Develop a console-based network chat application that implements a
secure text-based message transfer capability using the Rail Fence
cipher for encryption/decryption. The application should allow the two
parties to securely exchange a message over an insecure network
by utilizing a pre-shared key (number of rails) and the Rail Fence
cipher to encrypt and decrypt the message. Making this project a GUI
application is a bonus for all group members.

The Project Deliverables:


Each group (only one member of the project group) must submit the project
deliverables on Moodle by the deadline (Monday, June 3rd, 2024, 7:00
AM).

The project deliverables include both:


1- The implemented application source file(s) and,
2- the presentation PowerPoint file (.pptx file).
The project deliverables must be submitted as a compressed file. The
compressed file name must follow the naming convention of
“Group#_Project_Submission”, where the symbol # represents the group
number of the submission.

The Project Deliverables:


The project will be graded out of 40 marks. The grade distribution of the project
is as follows:

• The submitted application (20 marks):

o The application works and generates the intended output. (10


marks)
o The code of the application implements the specifications of the
assignment. (10 marks)

• The PowerPoint Presentation (10 marks):

o The comprehensiveness of the presentation. (5 marks)

o To what extent does the presentation cover the required points? (5


marks)

• Oral discussion (10 marks for each member of the group based on
their understanding).

P.S: ALL GROUPS MUST IMPLEMENT THE REQUIRED ALGORITHMS FROM


SCRATCH. ALL GROUPS MUST NOT USE/IMPORT LANGUAGE LIBRARIES
THAT IMPLEMENT THE REQUIRED ALGORITHMS. ANY VIOLATION OF THIS
RULE WILL BE TREATED AS ZERO FOR ALL GROUP MEMBERS.

Good Luck

You might also like