Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

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

image text in transcribedimage text in transcribedimage text in transcribedimage text in transcribed

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

Step: 1

blur-text-image

Get Instant Access with AI-Powered Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Students also viewed these Databases questions

Question

2. Clearly identify time constraints.

Answered: 1 week ago