To increase the understanding of two main security properties of encryption algorithms: confusion and diffusion.

computer science

Description

- The assignment objectives are as follows: 

o To provide hands-on experience for the students in implementing a simple encryption algorithm 

o To increase the understanding of two main security properties of encryption algorithms: confusion and diffusion.


Assignment Requirements and Implementation 

- You are required to develop a simple symmetric-key image encryption algorithm using C, C++ or python 

o The entire algorithm should be in one source code file that can be compiled easily 

o The algorithm should allow the user to select between encryption or decryption 

o The algorithm should prompt the user to enter a secret key (you are free to choose any key length) o If the user selects encryption, the program should encrypt a plainimage to produce a cipherimage (Note: The plainimage itself should be transformed into the cipherimage) 

o If the user selects decryption, the program will decrypt an input cipherimage to produce the original plainimage (Note: The cipherimage itself should be transformed into the plainimage) 

o Being able to view the cipherimage itself is not mandatory but will be a plus.


Related Questions in computer science category