Прошел экстерном экзамен по курсу перепордготовки "Информационная безопасность". Хочу получить диплом, но не вижу где оплатить? Ну и соответственно , как с получением бумажного документа? |
Преобразования
Перестановка
Другое преобразование производит сдвиг в раунде. Этот сдвиг переставляет байты. В отличие от DES, в котором делается поразрядная перестановка, преобразование сдвига делается на уровне байта; порядок битов в байте не меняется.
9.1. Программа на псевдокоде для преобразования SubBytes
ShiftRows
При шифровании применяется преобразование, называемое ShiftRows, со смещением влево. Число сдвигов зависит от номера строки (0, 1, 2 или 3) матрицы состояний. Это означает, что строка 0 не сдвигается и последняя строка сдвигается на три байта. Рисунок 9.9 показывает преобразование смещения.
Обратите внимание, что преобразование ShiftRows работает одновременно только с одной строкой.
InvShiftRows
При дешифровании применяется преобразование, называемое InvShiftRows, со смещением вправо. Число сдвигов равно номеру строки (0, 1, 2 и 3) в матрицы состояний.
Алгоритм
Алгоритм 9.2 для преобразования ShiftRows очень прост. Однако чтобы подчеркнуть, что преобразование делается одновременно только с одной строкой, мы используем процедуру, называемую shiftrow, которая сдвигает байт в единственной строке. Мы вызываем эту процедуру три раза.
Процедура shiftrow сначала копирует строку во временную матрицу строки (матрица t), а потом сдвигает строку.
Пример 9.4
Рисунок 9.10 показывает, как, используя преобразование ShiftRows, преобразуется матрица состояний. Рисунок также иллюстрирует, как преобразование InvShiftRows создает первоначальную матрицу состояний.
9.2. Программа на псевдокоде для преобразования ShiftRows