Study of AES and its Efficient Software Implementation

This work aims to familiarize the reader with the concepts behind AES or Advanced Encryption Standard. This work shall serve as a useful starting point for those who are interested in thinking along lines of software implementation of AES. To do this we shall go over some basic definitions in the context of AES and then explain AES at large from the perspective of various authors and papers. After this a brief discussion of an efficient software implementation of AES shall follow.