Building New Encryptions

Author: Khern Toussaint Major: Computer Science

In Spring 2020 I conducted research with my advisor, Dr. Dale Thompson, in the Computer Science/Engineering department. I am a computer engineering student with a minor in mathematics. My interest in this research started shortly after taking a cryptography class here at the UofA. Our research topic was Lattice based cryptography for a RFID Mixnet. This would mean introducing new encryption techniques to an already existing system.  

Radio frequency Identification (RFID) uses electromagnetic fields to automatically identify and track tags attached to objects. An RFID tag consists of a tiny radio transponder, a radio receiver and a transmitter. These tags could be placed on various items, say a cell phone, a package or even a passport and could be scanned and information read from various distances. A Mixnet (mixed network) are routing protocols that create hard-to-trace communications by using a chain of proxy servers known as mixes which take in messages from multiple senders. Ideally, this would mean a safer way to pass information from point A to point Z while keeping the information and senders (B, C, …, Y) safe. The information would remain secure during all points and only be readable at the start and end of its journey. I had to investigate and develop a new encryption scheme for the system. Initially, this scheme would mean a safer and more updated method to pass the information. In the end, this research could potentially be used on a wide-scale and significantly benefit shipping agencies and businesses where RIFD tags are widely used. My research focus was the lattice-based encryption and how to implement it. 

At the start of our research, fall 2019, we had almost no idea of where to focus our energies. We only knew that the heart of it lied somewhere with lattice-based encryption. We perused multiple past papers, tons of articles, and research conferences. At first, we landed on NTRU which is an open source crypto-system that we thought could do the job. However, after multiple tests we realized that it wasn’t the optimal solution. We realized that it would require a more mathematical research approach rather than the software one we were attempting. So, we had to think of something else. We decided to put more time into other crypto-systems we could potentially use. We landed on another open source crypto-system called Microsoft SEAL. 

With our new direction, we dove in right away. We committed weeks to this new crypto-system, learned how to use it on a simple scale and the limitations we were tied to. We conducted various timing tests to figure out: how long it would take to encrypt/decrypt a message, the size of the message that could be encrypted  and how many messages we could send through the system before it crashed. We also plotted these findings to have a small visual representation of our progress. Although the progress seemed minimal, it was in the right direction and opened us up to even more research. This led us to even more uses for the new crypto-system which could have been a brand-new research project. 

During these months of research, I was introduced to many sub-specialties stemming from my original research and these caused even further diversion. They all seemed interesting and when brought up with my advisor he was just as excited as I was. Unfortunately, in the last few months of my research the semester took a sharp turn with the COVID-19 pandemic and there was still a lot to be done. Consequently, I decided to document our progress and hopefully continue it later. My research covered the foundations of what could be done. I am a bit disappointed that I couldn’t get to go much further with my research this semester but extremely thankful for the help that the research grant provided. A lot was done but a lot more could be done. This researched has only exposed me to the vast number of topics still left untouched. I hope to continue this research soon and develop a complete system for the RFID Mixnet.