2024-10-30
Блоки данных фиксированной длины (например, 128, 192 или 256 бит) преобразуются в серию замещений, пермутаций и смешивающих операций, которые применяются для шифрования и дешифрования данных.Поскольку шифрование AES использует симметричный ключ, то же самое используется для шифрования и дешифрования.
Процесс происходит поэтапно:
1. Ключевое расширениеПервоначальный ключ расширяется до 44, 52 или 60 32-разрядных слов для 128, 192 и 256-разрядных ключей. Эти расширенные слова используются в последующих раундах шифрования AES.Процесс расширения ключа включает в себя генерацию дополнительных круглых ключей от исходного ключа.
2Первый раунд.Блок ввода или простого текста смешивается с первоначальным круглым ключом, прежде чем перейти к основным раундам шифрования AES.
3Каждый раунд шифрования AES состоит из четырех преобразований.:
ПодбайтыКаждый байт в блоке заменяется соответствующим байтом в заранее определенном поле замены, предназначенном для устойчивости к известным криптографическим атакам.
ShiftRows. Байты в каждом блоке перемещаются циклически влево, с различными смещениями для разных строк.Этот шаг гарантирует, что каждая колонка состояния вывода операции ShiftRows состоит из байтов, происходящих из каждой колонки состояния ввода.
MixColumnsКаждая колонка преобразуется с помощью операции матричного умножения, которая обеспечивает диффузию и повышает безопасность AES. Эта операция влияет на все четыре байта в колонке вместе.
AddRoundKey. Полученный блок объединяется с круглым ключом, полученным из расписания ключей.
4Завершение.После всех основных раундов проходит финальный раунд, включающий все этапы, кроме MixColumns.
5. Выпуск. Полученные биты - это шифрованный текст, соответствующий вводному блоку простого текста.
Дешифровка выполняется с обратными операциями в противоположном порядке.
Отправьте ваше дознание сразу в нас