Алгоритмы симметричного шифрования

       

Генерация подключей


Подключи вычисляются с использованием самого алгоритма Blowfish.

  • Инициализировать первый Р-массив и четыре S-boxes фиксированной строкой.
  • Выполнить операцию XOR P1 с первыми 32 битами ключа, операцию XOR P2 со вторыми 32 битами ключа и т.д. Повторять цикл до тех пор, пока весь Р-массив не будет побитово сложен со всеми битами ключа. Для коротких ключей выполняется конкатенация ключа с самим собой.
  • Зашифровать нулевую строку алгоритмом Blowfish, используя подключи, описанные в пунктах (1) и (2).
  • Заменить Р1 и Р2 выходом, полученным на шаге (3).
  • Зашифровать выход шага (3), используя алгоритм Blowfish с модифицированными подключами.
  • Заменить Р3 и Р4 выходом, полученным на шаге (5).
  • Продолжить процесс, заменяя все элементы Р-массива, а затем все четыре S-boxes, выходами соответствующим образом модифицированного алгоритма Blowfish.
  • Для создания всех подключей требуется 521 итерация.



    Содержание раздела