You are to write a basic code breaking application. The objective of the program is to accept a word and either encrypt or decrypt, based on a key. The key itself is generated from a codeword that the user types in at the start of the program. The program will run as follows:
• The user indicates if they wish to encrypt or decrypt a message
• The user types in the message they wish to encrypt / decrypt
• The user types in the codeword
• The program will turn the codeword into an integer-based key. How this is done is described below.
• The program will then encrypt / decrypt the message based on the key and display it for the user. Rules for encryption / decryption are described below.
• You are required to perform input validation. Do not expect that the user will type in a valid message.
Key Generation:
• The user must type in a codeword that is 4 characters long. Allowing messages with spaces and special characters. It should not just be letters (you need to put in validation as standard ... do not assume the user will just put in letters).
• Each character is converted to its corresponding number, i.e a = 1, b = 2, etc. Add all the numbers up.
• With this resulting number, you must arrive at a single digit number. To do this, you add up the single digits in the number, and repeat the process until you have a single digit. For example, if the codeword is "matt", then this is ...
13 + 1 + 20 + 20 = 54
5 + 4 = 9
• In order to make sure you understand how it works, please include the resulting number if the codeword is "free" when you place a bid.
Encryption / Decryption:
• To encrypt a message, you shift each letter in the word you are encrypting forward by the amount corresponding to the keyword. For example, if I wanted to encrypt the message "Awesome" using the codeword "matt", then it would become "jfnbxvn". Also notice that the alphabet wraps around itself, meaning that when an 'r' is encrypted with the key 9, it turns into an 'a'.
• To decrypt a message, you shift each letter in the word you are encrypting backward by the amount corresponding to the keyword.
Extra Functionality:
• Full data validation
• Extra coding measures for extra security
• Saving and reading messages from file
Dear Customer,
I am interested in your project.
The result for free is 7.
I guarantee a high-quality work so you pay me only if fully satisfied.
In particular I guarantee to check every possible kind of input (or mistyping) by the user.
Kind Regards
Marzio
Hi there!
I'm perfect for this work as I'm very fluent in c++ and have developed many projects in c++.
this project of yours looks like a interesting project and I'm fully confident that I can do this in minimum amount of time, I have developed many programs that modify strings and data structures and your project mostly compromises of these. that's one of the major reasons I'm interested in doing your project.
I'm currently studying in college with computer science as major, so i know what I'm talking about. i have done similar assignments. and i can surely help you out.
CONTACT ME IF YOU HAVE ANY DOUBT OR HAVE FURTHER QUERIES, I'm ALWAYS AVAILABLE!