Michael Colburn is a fourth-year computer science honours student working with Liam Keliher. His thesis is entitled “Linear cryptanalysis of SPN-based Block Ciphers.”
Keliher is a computer science professor at Mount Allison whose current research is in cryptography, which is the practice and study of techniques for secure communication in the presence of third parties. His primary focus is on the design and analysis of block ciphers, particularly the substitution-permutation network (SPN) structure. Colburn’s honours project fits nicely in this vein.
A cipher is a pair of encryption and decryption algorithms. Colburn’s research entails applying linear cryptanalysis to an SPN-based block cipher called PP-2, which has only been published last year. A block cipher operates on big chunks of data at a time.
Colburn has been generating very large amounts of data at random, and encrypting through the SPN-based block cipher. Linear cryptanalysis involves exploiting a linear relationship between the input and the output, in order to figure out a key. A block cipher is made up of many steps called rounds (which is usually the same step iterated over and over). Each round usually has its own key. To guess the key, this involves taking the input and the output at the same time, and processing them back one round. Depending on whether they have the same value, Colburn will increment a counter corresponding to the key that was guessed at both ends. This will be done many times over the generated data. If one of the counters is sufficiently different from the rest, it could potentially indicate the key for the round.
The goal of this research is to get a whole round key. This can prove that the cipher can be attacked with linear cryptanalysis.
New encryption algorithms get proposed all the time. According to Schneier’s Law, anyone can design a cryptosystem that they themselves can’t break. Researchers rely on others to break it, or to prove that the system is secure. The PP2 cipher that Colburn is working on has not received a lot of attention, as it is only a year old. Colburn is testing whether the cipher is secure before it is used.
“Everything has to do with cryptography in some capacity,” Colburn says. “[If] you want to use online banking, you have to use cryptography to communicate with the bank. You have to make sure that the bank is who it says it is, and that no one can eavesdrop on your connection, for example.”
Colburn always knew he wanted to work with computers. Developing an interest in math, Colburn attended Mount Allison intending to major in the field. Introductory computer science is a required course for math majors, and upon taking the class, the subject appealed to Colburn so much that he switched majors.
Colburn intends to continue his studies in computer science by obtaining his master’s. He hopes to continue his research in either cryptography or computer security.