This is another in a series of posts about Protective Technologies. Here we are going to continue to examine the use of a key, but a more complex key compared to the last post: Encryption – Part 2 – Using a Key, to encrypt our communications.

Encryption has evolved over the centuries and today’s encryption methods are sophisticated compared to those of the past. This technology is, arguably, the most important of the Protective Technologies that help keep us safe while using the Internet. Here we are going to continue the discussion by using a slightly more complex key for encryption. A key that will make it more difficult for “others” to decipher our messages compared to our last example.  

Encryption Using a Key with Spaces and Special Characters:

Suppose we want to send the message “Counter Surfers Rule!! :-)”. (Counter surfers are dogs that will steal your pot roast.)

Fig. 1: The Counter Surfer in Action

We are going to use the entire English alphabet to do the encryption with a key for this example.

We can include many more characters in our character set, so we have upper case, lower case, numbers and special characters as:

abcdefghijklmnopqrstuvwxyz
ABCDEFGHIJKLMNOPQRSTUVWXYZ
!@#$%^&*()_-+= 1234567890<
>,.?/:;"'~`|\

We can randomize this set of characters to be:

QIu@<$s#5yBN&6hqO2H(-CET4^
;rgZm3tfkoA|n\R'Vl_FPS8Kx`
?D0J7G z=c,/M)X>i.jLa"Yv*b
p:ewU~W19+!%d

These characters are turned into an encryption guide in Fig. 2 below, so it’s easier to see which characters correspond. Of course, you can create your own random string – see the bottom of this post for a link. To encrypt the message, find the letter in the top section and use the corresponding one under it. 

In our example the “C” becomes an “g”, the “o” becomes an “h”, and so on. The full message “Counter Surfers Rule!! :-)” becomes “gh-6(<2X_-2$<2HXl-N<??X~/c”.

Fig. 2: Encryption Guide

Note that here we have the space ” ” being encrypted to capital “X” and ampersand “&” is encrypted to a space ” “. There may also be trouble differentiating between capital i, “I”, and lower-case ell “l” depending on the font we are using. These concerns probably only arise when we are encrypting and decrypting manually. If the documents are digital and our devices are handling the encoding and decoding, the letters are easily understood by the devices.

Decryption:

If we receive the message “gh-6(<2X_-2$<2HXl-N<??X~/c” how are we going to read it?

First, we must already know the means to go back. In this case, we need the key that allows us to change the characters of the message back to human readable text.

We can create the following to help us, placing the random characters above the English alphabet which includes numbers and special characters:

QIu@<$s#5yBN&6hqO2H(-CET4^
;rgZm3tfkoA|n\R'Vl_FPS8Kx`
?D0J7G z=c,/M)X>i.jLa"Yv*b
p:ewU~W19+!%d

which becomes the set of characters

abcdefghijklmnopqrstuvwxyz
ABCDEFGHIJKLMNOPQRSTUVWXYZ
!@#$%^&*()_-+= 1234567890<
>,.?/:;"'~`|\

These characters are turned into an decryption guide in Fig. 3 below, so it’s easier to see which characters correspond. In our example the “g” becomes a “C”, the “h” becomes a “o”, and so on. The message “gh-6(<2X_-2$<2HXl-N<??X~/c” is decrypted to “Counter Surfers Rule!! :-)

Fig. 3: Decryption Guide

Before we start exchanging secure messages, the sender and receiver have to agree on the method that will be used for the encryption/decryption. We can exchange the method we are going to use in a number of ways. We could do this in person, for example, that way there is less chance of the rules for our encryption/decryption being discovered. We can then separate and exchange secure messages.

The key we’ve generated above is quite complex and it’s a bit tedious to encrypt and decrypt messages manually. The answer of course, is to enlist the help of technology. We embed the key into a computer program! When we write the message it is automatically encrypted and sent to the recipient, and on the other end the receiving program will decrypt and display the message. This, at the most basic level of using a key, is how online banking and shopping works on the Internet.

A nice web page for creating randomized strings such as the one we have above can be found at: https://www.browserling.com/tools/random-letters. Just put in the characters you want to randomize and click the “Randomize Characters!” button.

Our next article will look at a conceptual view of the RSA encryption algorithm which is important on the Internet.