A web demo suite for Advanced Encryption Standard (AES)
Date of Issue2017-04-24
School of Computer Science and Engineering
Parallel and Distributed Computing Centre
The security of information has become increasingly valuable with the widespread presence of data transmission and storing by networks. As such, people are very keen to learn how to keep the confidentiality and integrity for their information. This trend leads to rising importance of cryptography, which applies complex logic and mathematics in order to design strong encryption methods. Nanyang Technological University School of Computer Science and Engineering offers a few courses specialized in security. Advanced Encryption Standard (AES) is one of the algorithms that are widely studied and discussed in cryptography courses. However, as there are many rounds and heavy polynomial operations involved, students may find it difficult to calculate AES manually. Hence, this project aims to implement a web-based demonstration for AES-128, which is served as accompanying learning material for students of cryptography. It is a single-page application with rich user interaction and dynamic visualization features. Users are able to perform AES encryption given their own input plaintext and cipher key, and then view all the steps for encryption processes accordingly. Through interactive dialogue windows, they can also know how substitutions work, bitwise calculations, and GF() arithmetic. The web demo is built upon AngularJS framework. It uses Model-View-Controller architecture so that the user interface is loosely coupled with AES algorithm logic. This enables separation of concerns, reusability of different components as well as extensibility of views. As the beta launch was in February 2017, Agile Software Development Lifecycle is adopted in order to easily modify and add in more functionalities after user’s feedback. The demo also utilizes Angular Material and MathJax library to ensure compatibility and visual elegance across multiple platforms and browsers.
DRNTU::Engineering::Computer science and engineering
Final Year Project (FYP)
Nanyang Technological University