Note 4/20/17: Due to circumstances I have had to move my web pages here.
The Rijndael algorithm was announced as the winner of the Advanced Encryption Standard (AES) in 2001. This algorithm is intended to replace the DES algorithm. AES was designed to be efficient in both hardware and software, and supports a block length of 128 bits and key lengths of 128, 192, and 256 bits. AES is defined in Fips 197. Click here for a description of how AES works.
AES is designed to work on bytes. However, each byte is interperted as a representation of the polynomial:
2d = 00101101 = | x^{5} + x^{3} + x^{2} + 1 |
a3 = 10100011 = | x^{7} + x^{5} + x + 1 |
2d * a3 = | (x^{12} + x^{10} + x^{9} + x^{7}) + (x^{10} + x^{8} + x^{7} + x^{5}) + (x^{6} + x^{4} + x^{3} + x) + (x^{5} + x^{3} + x^{2} + 1) |
= | x^{12} + x^{9} + x^{8} + x^{6} + x^{4} + x^{2} + x + 1 |
- modulus * x^{4} = | x^{9} + x^{7} + x^{6} + x^{5} + x^{2} + x + 1 |
- modulus * x = | x^{7} + x^{6} + x^{4} + 1 |
2d * a3 = | 11010001 = d1 |