AES の公式仕様は FIPS-197 です。キーサイズとブロックサイズに関する次のテキストが含まれています。
1. Introduction
This standard specifies the Rijndael algorithm ([3] and [4]), a symmetric block cipher that can
process data blocks of 128 bits, using cipher keys with lengths of 128, 192, and 256 bits.
Rijndael was designed to handle additional block sizes and key lengths, however they are not
adopted in this standard.
Throughout the remainder of this standard, the algorithm specified herein will be referred to as
“the AES algorithm.” The algorithm may be used with the three different key lengths indicated
above, and therefore these different “flavors” may be referred to as “AES-128”, “AES-192”, and
“AES-256”.
コンテストの結果、NIST が Rijndael を AES として選択したため、これ以上信頼できるリファレンスを取得することはできません。
コードには CBC および PKCS#7 パディングも含まれていますが、これらは AES の仕様の一部ではないことに注意してください。ただし、CBC は NIST によって承認されたブロック暗号操作モードです (NIST SP 800-38A を参照)。その仕様では、パディング スキームが NIST によって考慮されていないことも言及されています。これは、おそらくセキュリティを提供するアルゴリズムとしてパディング スキームを使用すべきではないためです (つまり、ブロック暗号モードの場合)。