This essay was written by upper-sixth former Ben Perryman, and shortlisted for the 2020 Independent Learning Assignment. The following provides a short abstract to the full essay, which can be found at the bottom.
Estimated read time of abstract: 2 minutes
Estimated read time of essay: 20 minutes
Encryption is a vital tool in many different aspects of life both today and in the past. I wanted to do an ILA on the topic to expand my own knowledge of both the concepts involved and different historical events where encryption and decryption were vital, such as the execution of Mary Queen of Scots or the Battle of Britain. Additionally I wanted to use the opportunity to expand on my knowledge of computer science and I endeavoured to create most of the ciphers that I studied using python.
First I looked into the different methods of keeping information secure, and narrowed the scope of my ILA to just look at forms of encryption that involved a key. The first of these was the Caesar Cipher, named because Julius Caesar used it in his private communication to keep his servants from reading his messages. This involves shifting the entire alphabet by a few spaces, and then changing each letter accordingly. This is an easy cipher to use, and just as easy to decipher as there are only 25 ways of hiding your message.
Caesar Ciphers were not secure enough for formal communications as the need for secrecy increased and so the permutation cipher was developed. To encrypt a message with a permutation cipher you create a map which links all letters to other letters, for example A could be linked to Q. This makes it much harder to check all combinations, but each letter is still mapped to another letter, and so if you find out a few letters, you can quickly decipher the whole message. Permutation ciphers were used for thousands of years, with examples being seen in ancient times and up to the 1900s, however generally they became obsolete in the 16th century and were replaced by the Vigenère cipher. This used a combination of Caesar ciphers, but it used a key phrase to determine which alphabet to use and the phrase was only known to the users of the message. This could only be deciphered if you knew the message, however when it was used on a large scale, such as in the American Civil War, finding out the phrase could be done with a single captured soldier and changing the phrase took days. This was the hardest cipher for me to code as it involved a lot of linear algebra and matrices.
Modern Encryption is built upon public-key and other forms of RSA encryption, because the internet relies upon fast transmission of data and this data must be kept secure. RSA is the perfect cipher for this as it is able to encrypt data efficiently. To decipher RSA one must factorise a number with thousands of digits, which cannot be done with computers in a reasonable timeframe. Quantum computing presents a threat to this, as it is able to factorise numbers very quickly, but for now quantum computers are not powerful enough to decipher RSA. A question I wanted to answer with my ILA was whether or not encryption was at risk of being widely broken; however looking at futuristic forms of encryption such as quantum encryption showed me that even though new methods of deciphering messages were being developed, encryption was developing at an even faster rate. Quantum encryption was the only form of encryption I didn’t write using code, as it relies on the quantum laws of uncertainty to work, and these are very difficult to model. Furthermore it has only sent messages a short distance, but quantum encryption is an amazing form of encryption, because it is built upon the laws of physics, so unless the laws are wrong, it is theoretically unbreakable.
To view Ben’s full article, follow this link below.