VB.NET Project 3

Classes and Objects, Methods and Properties

Referencing Project 2, instantiate an encryption class (see distributed class notes) to perform thecharacter shift encryption and decryption.

  • Include clsSecurity.vb in your Project (see the Solution Explorer in the Visual Studio IDE)
  • Instantiate clsSecurity to create an Object named objShift
  • Use both the properties and methods of objShift to perform encryption/decryption in your VB project

The provided clsSecurity.vb class members include:

Methods

  • Encrypt()
  • Note: You will need to write the Decrypt () method in the clsSecurity.vb class

Properties

  • KeyNum
  • KeyString
  • CurrentChar
  • CharOutput
  • KeyDigit
  • CharASCII

------

From Project 2….

Develop a Visual Basic Windows Forms application that will ‘encrypt’ (character shift)’ the characters in a string based on a symmetric key (process known as symmetric-key cryptography).The application must also ‘decrypt’ the message based on the symmetric key used.

General Requirements

  • The clear-text message (that will be ‘encrypted’) is stored in a text-file.
  • The text-file is to be selected using an OpenFileDialog Windows control object
  • Text-file contents are to be displayed in a Textbox control located on the Windows form (you can also use this textbox to input clear-text characters)
  • Keys are contained in aComboBox control object. Users can select a particular key resulting in alternate cipher-text output
  • Keys are to be a minimum of 5 digits. Each key digit is used for encoding where your program will move to the next digit for every character in the clear-text message.
  • Since there are a limited number of digits in a key, your program must ‘wrap-back’ to the first digit
  • The selected key must be stored in an array
  • The resulting cipher-text output is to be stored in a text file and displayed in a textbox control on the Windows form
  • Using the same key for encryption, decrypt the cipher-text message and display it in a label on the Windows Form
  • Since only printable characters are used (see table), if the ASCII code becomes larger than 126, you will need to wrap around to the ASCII code 32 (space)
  • Use exception handling where needed…for example, FileNotFound or DirectoryNotFound.

Example: Using a sample key of 58912, the output would be as follows:

Clear Character / N / J / I / T / V / B / N / e / T
ASCII Code / 78 / 74 / 73 / 84 / 32 / 86 / 66 / 78 / 101 / 84
ASCII Code + Key Value / 83 / 82 / 82 / 85 / 34 / 91 / 74 / 87 / 102 / 86
Shifted Character / S / R / R / U / “ / [ / J / W / f / V

Clear-Text: “NJIT VBNet”

Cipher-Text: “SRRU”[JWfV”