School: ALBUQUERQUE ACADEMY
Area of Science: Cryptography
Interim: Team Number: 005
School Name: Albuquerque Academy
Area of Science: Cryptography
Project Title: The Multi-Dimensional Encryption of Data
Encryption, an indispensable tool for both hiding and encrypting data, can be traced as far back as the Ancient Egyptians. Many different methods of encryption have been devised by people throughout the ages. Perhaps the most famous method of encryption is the Caesar Shift, a method that "shifts" any letter up or down by a certain number. Among the more recent methods however, is an idea for scrambling data in a way that is difficult to even represent on paper: that of Multi-dimensional encryption.
The goal of this project is to create a dynamic encryption program that will utilize both a modified version of the Caesar Shift method, and a specially adapted Multi-Dimensional Encryption routine. This program will be able to encrypt any given text message in a way that will be impossible to decipher if the person does not have the password that was used when the message was encrypted. Of course, the program will be able to decrypt the message afterwards. It will create a .txt file with the original message in it in a directory that the user defines prior to encryption.
In order to successfully alter the data in the message, the program will extract the ASCII values of the characters in a password that the user provides in order to Shift the message by varying amounts. In this way, the program would not simply be limited to shifting the message by one value, as was the error in the original Caesar Shift method, but would be able to shift the message in multiple ways, so that anyone who wanted to decrypt the message would need the entire password, not just a letter, in order to successfully gain access to its contents.
As for the scrambling of the data, the program will utilize a specially adapted Multi-Dimensional encryption routine that will be based on the message itself. The program will create a Multi-Dimensional array that it will then assign the message to. After it creates and populates the array, the program will remove the data from the array in an order that is deliberately different from the order that it was entered into the array, and write it to a file that also contains information on such things as the date that it was created, and were the .txt file will be made when it is decrypted (all encrypted as well).
Decrypting the file would be simple enough, as all the program would have to do is reverse the order of the encryption routine.
Progress to Date:
As of now, the project can be used satisfactorily. It can successfully shift the characters of the message using the modified version of the Caesar Shift, and successfully scramble the shifted message via the Multi-Dimensional encryption routine. The program currently writes all of the data (along with all necessary information) to a file that is stored in a special folder on the computer's C drive. One of the things that I am attempting to do now is to have the program write the data to the file in a single string so as to make it more difficult for a hacker to decrypt. Another point that I am trying to fix is this: When the array that holds and scrambles the data is made, it is often made too large (when this happens, it is a necessity), and empty spaces are made and recorded. I am trying to do one of two things to fix this problem: 1, Use several smaller arrays in which to hold the data. 2, Fill in the empty spaces of the array with random data that the program pays no attention to. I have yet to decide on my path of action.
After refining and perfecting the many algorithms involved, this program could lead the way for a new generation of "perfect" encryption programs. These programs would help to ensure that people, businesses, and countries around the world would be able to safely say that their important data is protected at the utmost level.
CODE BREAKING A HISTORY AND EXPLORATION
The Overlook Press, Peter Mayer Publishers Inc.
THE CODE BOOK
Random House Inc.
The Handbook of Applied Cryptography
Alfred J. Menezes, Paul C. van Oorschot, Scott A. Vanstone
Why Cryptography Is Harder Than It Looks
The Cryptography Introduction and Guide
Sponsoring Teacher: Jim Mims