Question: 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
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 for a simple Substitution cypher. In addition encrypttunencrypted: string): string to your usual test code, write a main program that will encrypt a file test.txt to an encrypted file test.txt.rot13 or test.txt.subst, or vice-versa. Interface chars: int + Cypher +decrypt(encrypted: string): string + chars processed): int num Deliver file CSE1325_04.zip to Blackboard. In subdirectory "full credit", include your full git repository, including files main.cpp, cypherh +Rot130 and.cpp, rot13.h and.cpp, substitution.h and .cpp, Makefile, and cypher1.png through n (as many screenshots as you deem useful) demonstrating your tests and your main executing Rot13 + encrypt(unencrypted: string): string ed Substitution Bonus: Using git (3+ additional commits) and the above key: string code, add an XOR implementation using an image file as de the encryption key, producing text.txt.xor. Update tests encrypt and main to support it. In CSE1325_04.zip subdirectory decrypt(encrypted : string) "bonus", include xor.h and.cpp, an updated class diagram, along with the above files. +Substitution(key: string) + encryptunencrypted: string) + substit str
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
