Question: Assignment Overview Cryptography is the science of replacing information such as text with a different set of text, such that the original text can no

 Assignment Overview Cryptography is the science of replacing information such astext with a different set of text, such that the original textcan no longer be easily determined. Numerous algorithms exist for this, andyou'll get to implement a few in this assignment. In the process,

Assignment Overview Cryptography is the science of replacing information such as text with a different set of text, such that the original text can no longer be easily determined. Numerous algorithms exist for this, and you'll get to implement a few in this assignment. In the process, you'll practice file L/O as well as inheritance. Interfacen Full Credit: Using git (3+ commits), define a virtual class (an interface) for encrypting and decrypting text. Derive 2 implementations from this interface, one for Rot13, the other+Cypheri) for a simple Substitution cypher. In addition to your usual test encrypttunencrypted: string):string code, write a main program that will encrypt a file test.txt to- chars processed): int an encrypted file test.txt.rot13 or test.txt.subst or vice-versa. #chars processed(num: i Deliver file CSE1325_04.zip to Blackboard. In subdirectory chars: int + decryptfencrypted: string): string including files main.cpp, c rot13.h and Makefile, and cypher1.png through n (as manyectunencrypted: string): string screenshots as you deem useful) demonstrating Rot 13 + Rot130 dec strin Bonus: Using git (3+ additional commits) and the above code, add an XOR implementation using an image file as Substitution key : string dekey: stri encryption key, producing text.txt.xor. Update t ests andSubstitutionkey: string +encrypt(unencrypted : string):string +decrypt(encrypted: string): string : string): strin Extreme Bonus: Using git (3+ additional commits), add a new class Async that implements any simply asynchronous key encryption algorithm (the common "best practice" actually used for Internet, credit card, and other serious security applications). Update tests and main to support it. In CSE1325_04.zip subdirectory "extreme bonus, include all files required for Bonus above as well as async.h, async.cpp, an updated class diagram, and any other supporting files you require. You have a lot of leeway in the design and implementation of this code! 1 Adds string as the return type in the UML for Substitition:encrypt and Substitution: decrypt Assignment Overview Cryptography is the science of replacing information such as text with a different set of text, such that the original text can no longer be easily determined. Numerous algorithms exist for this, and you'll get to implement a few in this assignment. In the process, you'll practice file L/O as well as inheritance. Interfacen Full Credit: Using git (3+ commits), define a virtual class (an interface) for encrypting and decrypting text. Derive 2 implementations from this interface, one for Rot13, the other+Cypheri) for a simple Substitution cypher. In addition to your usual test encrypttunencrypted: string):string code, write a main program that will encrypt a file test.txt to- chars processed): int an encrypted file test.txt.rot13 or test.txt.subst or vice-versa. #chars processed(num: i Deliver file CSE1325_04.zip to Blackboard. In subdirectory chars: int + decryptfencrypted: string): string including files main.cpp, c rot13.h and Makefile, and cypher1.png through n (as manyectunencrypted: string): string screenshots as you deem useful) demonstrating Rot 13 + Rot130 dec strin Bonus: Using git (3+ additional commits) and the above code, add an XOR implementation using an image file as Substitution key : string dekey: stri encryption key, producing text.txt.xor. Update t ests andSubstitutionkey: string +encrypt(unencrypted : string):string +decrypt(encrypted: string): string : string): strin Extreme Bonus: Using git (3+ additional commits), add a new class Async that implements any simply asynchronous key encryption algorithm (the common "best practice" actually used for Internet, credit card, and other serious security applications). Update tests and main to support it. In CSE1325_04.zip subdirectory "extreme bonus, include all files required for Bonus above as well as async.h, async.cpp, an updated class diagram, and any other supporting files you require. You have a lot of leeway in the design and implementation of this code! 1 Adds string as the return type in the UML for Substitition:encrypt and Substitution: decrypt

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!