Reference no: EM131321270
Assignment
Objectives
Practice reading characters from a file
Practice using command line input
Practice using command-line redirection of files
Practice implementing a double transposition ciphering algorithm
Summary
In this assignment, you will develop a program in C++ that encrypts a text file and decrypts a text file using a double tranposition ciphering algorithm. This algorithm is described in the Stamp textbook on pages 26-27. On the command line, the user will enter the name of the program, followed by either "-e" to encrypt or "-d" to decrypt. The text file will be submitted to the program using file redirection on the command line.
Software Requirements
The program shall read through the contents of the input file by way of standard input. This means that the user of the program shall use file redirection on the command line in order for the program to read an existing file. The program shall send its encrypted or decrypted output data to standard output.
The program shall first check the entries on the command line. If the entries are not correct, the program shall print out a usage message and terminate. If the command line entries are correct, the program shall read through the input file "character by character" to fill up a two-dimensional table. Each time the table is filled, the program shall transpose the rows (first) and columns (second) to encrypt the message, and then write the table contents to standard output in the same manner that the table was filled. For decryption, the columns shall be transposed first and then the rows. This process of filling the table, transposing the table rows and columns, and then writing out the table contents shall happen repeatedly. When the final set of characters are read from the input file, the program shall space-fill the remaining table contents so that all cells are filled before the double transposition occurs.
After the program detects the end of the input file and writes out the last characters that were read in, it shall send a message to standard error saying "Encryption is done" or "Decryption is done" and then terminate normally.
The double transposition key shall be hard-coded into the implementation of the algorithm. The two-dimensional table shall have default values of 6 rows and 4 columns. These values shall be declared as global constants near the top of the source code file. The row and column transpositions for encryption shall occur as follows:
Rows: (0, 1, 2, 3, 4, 5) -> (3, 5, 0, 2, 1, 4)
Columns: (0, 1, 2, 3) -> (3, 2, 0, 1)
Create application with a main menu containing given options
: Create an application with a main menu containing the following options: This option must allow the user to see a list of all painting names with their artist name. If there are no paintings available, the user must see an error message.
|
Construct a frequency distribution of the observed data
: Check whether the observed frequency distribution appears to match the expected frequency distribution shown in the binomial distribution in Figure 8.2.
|
What is the peak current density and peak voltage
: What is the peak current density and peak voltage for a abrupt p+/n+ tunnel diode in a direct material? What is the valley current if NTT traps are in the space-charge and quasi-neutral layers?
|
Immune system organized to fulfill
: What three functions is the immune system organized to fulfill? What are the two subdivisions of the immune system, and what is the difference between them?
|
Develop a program in cpp that encrypts a text file
: In this assignment, you will develop a program in C++ that encrypts a text file and decrypts a text file using a double tranposition ciphering algorithm.
|
What is the peak current density and peak voltage
: What is the peak current density and peak voltage for a abrupt p+/n+ tunnel diode in a direct material? What is the valley current if NTT traps are in the space-charge and quasi-neutral layers?
|
Velocity of the entangled cars after the collision
: An 1800 kg car stopped at a traffic light is struck from the real by a 900kg car. The two cars become entangled, moving along the same paths that of the originally moving car. If the smallest car were moving at 20m/s before the collision. What is ..
|
Maximum speed the car
: A 1500 kg car moving on a flat, horizontal road negotiates a curve. If the radius of the curve is 35m and the coefficient of static friction between the tires and dry pavements is 0.523, find the maximum speed the car can have and still make the t..
|
Propose a plan in which you eliminate the potential
: Propose a plan in which you eliminate the potential for the PHC tax on the client's corporation - The corporation has several personal service contracts with advertising agencies and endorsements for your client in addition to passive income.
|