
During World War Two, the countries involved spend much time developing techniques to create messages that could be deciphered by their own agents in battle but could not be easily deciphered by the enemy.
These countries also spent considerable time trying to decipher the messages of the enemy. The best known cipher machines were those used by the Germans called ULTRA and the Japanese code machines.
The United States and Britain were successful in cracking these codes and the machine used to crack the German code was called ENIGMA.
These were not computers as we know them today, rather typewriter devices that could transpose numbers, letters or other characters to take the place of the coded characters.
This month’s program, CIPHER, can be used to create and decode messages by substituting two numbers for every character of the message. Although probably not as sophisticated as the machines used during the war, the speed of operation is certain to exceed that of those earlier machines.
You probably remember a method in your earlier school years where a number was used to substitute for a letter of the alphabet such as (A) being (01), (B) being (02) and so on. Perhaps you saw another method where each letter of the message was advanced one or more letters such as (A) being (B), (F) being (G) and so on.
These methods could easily be deciphered by anyone with a pencil and paper and enough time on their hands to go through all the possibilities.
CIPHER uses the ZX-81 codes for each character and adds to them the codes of the characters of a keyword. Here is how it works:
The ZX-81 codes for the numbers and alphabet are listed on pages #137 to #138. The numbers from 0 to 9 are codes 28 to 37 and the letters A thru Z are codes 38 thru 63.
A message is inputted into the computer and the codes are identified for each character. A keyword is then entered and the codes of each character are also identified. The code number of the first character of the message is added to the code number of the first character of the keyword and this two digit number represents characters one and two of the coded message.
The code number of the second character of the message is then added to the code number of the second character of the keyword and this two digit number represents characters three and four of the coded message.
This process continues until the last keyword’s character is used and then the keyword code number shifts back to the first keyword character. This constant looping continues until the last character of the message has been coded.
The only exception is when the program encounters a null space between words, the code will be a double 0.
To decipher a message the process is reversed. The coded message of numbers is entered along with the keyword. The computer will then print on the screen the deciphered message and ask you if it is correct. If you see a message that makes sense, you know you were successful. If all you see is gobbledeegook, the computer will allow you to enter another keyword without re-entering the message. This can be done over and over until a successful decipher has been achieved.
As you can probably see, this makes it much more difficult to decipher a message.
Try this sample. Enter (2) for the beginning prompt. Now enter the following message:
456068556561596064004359557400 5856504900675164754445527332
Now enter the keyword. I’m not going to tell you what it is but I’ll give you a clue. The keyword is the last name of the last world chess champion to come from the U.S.A.
Here are some more – Decipher them to learn some interesting facts. Keywords will be given in next month’s issue:
#2 - 556655007071540058605750
715559005559405400556260
587000424446006849574958
6664008045465568
Keyword clue – Gift you would give a married couple on their 75th wedding aniversary.
#3 - 424268594151594269004242
463864006355485759514700
435264005758486165574500
624559494500485100535846
585264
Keyword clue – Country of the world with the second largest land area.
#4 - 480066636266750062510048
656082640054780050467157
5249004600588062515077
Keyword clue – A nearly extinct bird that cannot fly.
We plan to give you a few of these with each issue. We might even run a contest using this program to create messages each month that would be collected for a final answer.
If you have any interesting messages you would like to submit with keyword clues, send them to me for evaluation. Send the keyword along with it so it can be checked and try to keep the messages under 4 lines.