Принятый в 1980-х годах в США стандарт симметричного криптоалгоритма DES получил достаточно широкое распространение. Однако на текущий момент этот стандарт уже мало пригоден для эффективного применения по следующим причинам:
· длина его ключа составляет 56 бит, что чрезвычайно мало на современном этапе развития ЭВМ;
· при разработке алгоритм DES был ориентирован на аппаратную реализацию, т.е. содержал операции, выполняемые на микропроцессорах за неприемлемо большое время.
В 1997 году Американский институт стандартизации NIST (National Institute of Standards & Technology) объявил конкурс на новый стандарт симметричного криптоалгоритма, названного AES (Advanced Encryption Standard). К его разработке были подключены самые крупные центры криптологии всего мира.
К криптоалгоритмам – кандидатам на новый стандарт AES, были предъявлены следующие требования:
· алгоритм должен быть симметричным;
· алгоритм должен быть блочным шифром;
· алгоритм должен иметь длину блока 128 бит и поддерживать три длины ключа: 128, 192 и 256 бит.
Дополнительно разработчикам криптоалгоритмов рекомендовалось:
· использовать операции, легко реализуемые как аппаратно (в микрочипах), так и программно (на персональных компьютерах и серверах);
· ориентироваться на 32-разрядные процессоры;
· не усложнять без необходимости структуру шифра.
Победителем конкурса стал бельгийский алгоритм Rijndael (именуемый теперь алгоритмом AES), о чем NIST объявил 2 октября 2000 года. Этот алгоритм является нетрадиционным блочным шифром. Алгоритм представляет каждый блок кодируемых данных в виде двумерного массива байтов размером 4 х 4, 4 х 6 или 4 х 8 в зависимости от установленной длины блока. Далее на соответствующих этапах производятся преобразования либо над отдельными столбцами, либо над независимыми строками, либо вообще над отдельными байтами в таблице.