Содержание
- 2. История проведения конкурса AES В 1997 году правительство США объявило на базе института стандартизации NIST (the
- 3. Требования, которые предъявлялись к новому стандарту: криптоалгоритм должен быть открыто опубликован; криптоалгоритм должен быть симметричным блочным
- 6. Число раундов Nr как функция от длины ключа Nk и длины блока Nb
- 7. Раундовое преобразование Раунд состоит из четырех различных преобразований: замена байтов SubBytes() – побайтовой подстановки в S-блоках
- 8. Применение преобразования SubBytes()
- 9. Преобразование SubBytes() Представляет собой нелинейную замену байтов, выполняемую независимо с каждым байтом состояния. Таблицы замены S-блока
- 10. Преобразование SubBytes()
- 11. Таблица замен S-блока Логика работы S-блока при преобразовании байта {xy} отражена в таблице. Например, результат {26}
- 12. Таблица замен S-блока Логика работы S-блока при преобразовании байта {xy} отражена в таблице. Например, результат {26}
- 13. Преобразование сдвига строк (ShiftRows)
- 14. Величина сдвига для разной длины блоков В стандарте AES, где определен единственный размер блока, равный 128
- 15. Преобразование перемешивания столбцов (MixColumns)
- 16. Преобразование перемешивания столбцов (MixColumns) это такое преобразование, при котором столбцы состояния рассматриваются как многочлены над GF(28)
- 17. В результате такого умножения байты столбца s0c, s1c, s2c, s3c заменяются соответственно на байты: s’0c=({02}*s0c)⊕({03}*s1c) ⊕s2c⊕s3c,
- 18. Добавление раундового ключа (AddRoundKey)
- 19. Алгоритм выработки ключей Раундовые ключи получаются из ключа шифрования посредством алгоритма выработки ключей. Он содержит два
- 20. Алгоритм выработки ключей Для слов, позиция которых кратна Nk перед операцией сложения по модулю два применяется
- 21. Функция зашифрования Шифр Rijndael состоит: из начального добавления раундового ключа; Nr – 1 раундов; заключительного раунда,
- 22. Функция обратного дешифрования Если вместо SubBytes(), ShiftRows(), MixColumns() и AddRoundKey() в обратной последовательности выполнить инверсные им
- 23. Функция обратного дешифрования В преобразовании InvMixColumns столбцы состояния рассматриваются как многочлен над GF(28) и умножаются по
- 24. Последовательность преобразований в двухраундовом варианте Rijndael
- 25. Основные особенности Rijndael Основные особенности Rijndael: новая архитектура «Квадрат», обеспечивающая быстрое рассеивание и перемешивание информации, при
- 26. Алгоритм шифрования S_AES
- 27. Формат представления данных
- 28. Формат секретного ключа шифрования
- 29. Раундовое преобразование Раунд состоит из четырех различных преобразований: замена полубайтов SubHalfBytes() –подстановки в S-блоках с фиксированной
- 30. Применение преобразования SubBytes в AES()
- 31. Применение преобразования SubBytes в S_AES()
- 32. Преобразование SubBytes() Представляет собой нелинейную замену полубайтов, выполняемую независимо с каждым полубайтом состояния. Таблицы замены S-блока
- 33. Таблица замен S-блока
- 34. Инверсная таблица замен S-блока
- 35. Преобразование сдвига строк в AES (ShiftRows)
- 36. Преобразование сдвига строк в S_AES (ShiftRows)
- 37. Величина сдвига для разной длины блоков В стандарте AES, где определен единственный размер блока, равный 128
- 38. Преобразование перемешивания столбцов в AES(MixColumns)
- 39. Преобразование перемешивания столбцов в S_AES(MixColumns)
- 40. Преобразование перемешивания столбцов (MixColumns) это такое преобразование, при котором столбцы состояния рассматриваются как многочлены над GF(24)
- 41. В результате такого умножения полубайты столбца S0c и S1c заменяются соответственно на полубайты: S0c’ = ({3}∙S0c)
- 42. Добавление раундового ключа в AES(AddRoundKey)
- 43. Добавление раундового ключа в S_AES(AddRoundKey)
- 44. Алгоритм выработки ключей Раундовые ключи вырабатываются из исходного 16-битового секретного ключа по следующей схеме. Исходный 16-битовый
- 45. Функция зашифрования
- 46. Функция дешифрования
- 47. ПРИМЕР Зашифровать входной блок данных: {7, e, 3, b} с использованием секретного ключа К: {3, e,
- 48. Запишем эти данные в виде двумерных массивов: Массив исходных данных: Ключ:
- 49. Для начала необходимо получить раундовые подключи. Первым раундовым подключом будет являться сам секретный ключ, то есть:
- 50. Воспользовавшись формулами К00r = Sub Half-Bytes*(K11r-1) ⊕ K00r-1; К10r = Sub Half-Bytes*(K01r-1) ⊕ K10r-1 ⊕ 2r-2;
- 51. Таким образом, получили три раундовых подключа: Первый подключ К1 Второй подключ К2 Третий подключ К3
- 52. Сложение исходных данных с первым раундовым подключом
- 53. Произведем замену полубайтов с помощью таблицы замены, получим:
- 54. Произведем сдвиг
- 55. Произведем перемешивание столбцов с помощью операции Mix Columns*() Для начала представим табличные данные в виде многочленов.
- 56. Теперь можно приступить к нахождению новых элементов массива: S00’ = ({3}∙S00) ⊕ ({2}∙S10) = ((x⊕1)∙x3) ⊕
- 57. Получили массив преобразованных данных
- 58. Сложение исходных данных со вторым раундовым подключом
- 59. Произведем замену полубайтов с помощью таблицы замены, получим:
- 60. Произведем сдвиг
- 61. Сложение исходных данных со вторым раундовым подключом
- 63. Скачать презентацию