The Caesar cipher is one of the earliest known and simplest ciphers. It is a type of substitution cipher in which each letter in the plaintext is 'shifted' a certain number of places down the alphabet. For example, with a shift of 1, A would be replaced by B, B would become C, and so on. The method is named after Julius Caesar, who apparently used it to communicate with his generals.
To pass an encrypted message from one person to another, it is first necessary that both parties have the 'key' for the cipher, so that the sender may encrypt it and the receiver may decrypt it. For the Caesar cipher, the key is the number of characters to shift the cipher alphabet.
Here is a quick example of the encryption and decryption steps involved with the Caesar cipher. The text we will encrypt is 'defend the east wall of the castle, by sending 50 more soldiers there', with a shift (key) of 1.
plaintext: defend the east wall of the castle, by sending 50 more soldiers there
ciphertext: FGHGPF VJG GCUV YCNN QH VJG ECUVNG, DA UGPFKPI 61 OQTG UQNFKGTU VJGTG
Write a C# program that allows the user to enter the following information into text boxes:
Whether they want to encrypt a message or decrypt a message
The key value (1 – 20)
The message to encrypt or decrypt
The program should then either encrypt or decrypt the message, displaying the result in a list box. You are required to create an array that will be the cipher code. Any characters that are not part of the 26 letters of the alphabet and the 10 digits should be passed through without changing them. When you create your cipher, add the digits 0-9 to the end of the alphabet and shift for 36 total characters.