Московский государственный университет имени М.В.Ломоносова
Опубликован: 19.11.2003 | Доступ: свободный | Студентов: 12375 / 4860 | Оценка: 4.36 / 4.13 | Длительность: 13:09:00
ISBN: 978-5-9556-0102-1
Лекция 3:

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

< Лекция 2 || Лекция 3: 123456 || Лекция 4 >

Дешифрование

Процесс дешифрования аналогичен процессу шифрования. Дешифрование состоит в использовании зашифрованного текста в качестве входа в ту же самую структуру IDEA, но с другим набором ключей. Дешифрующие ключи U1, . . . , U52 получаются из шифрующих ключей следующим образом:

  1. Первые четыре подключа i-ого раунда дешифрования получаются из первых четырех подключей (10-i)-го раунда шифрования, где стадия заключительного преобразования считается 9-м раундом. Первый и четвертый ключи дешифрования эквивалентны мультипликативной инверсии по модулю ( 216 + 1 ) соответствующих первого и четвертого подключей шифрования. Для раундов со 2 по 8 второй и третий подключи дешифрования эквивалентны аддитивной инверсии по модулю ( 216 ) соответствующих третьего и второго подключей шифрования. Для раундов 1 и 9 второй и третий подключи дешифрования эквивалентны аддитивной инверсии по модулю ( 216 ) соответствующих второго и третьего подключей шифрования.
  2. Для первых восьми раундов последние два подключа i раунда дешифрования эквивалентны последним двум подключам ( 9 - i ) раунда шифрования.

Для мультипликативной инверсии используется нотация Zj-1, т.е.:

Z_{j} \bullet Z_{j}^{-1} =1 mod (2^{16} + 1)

Так как 216 + 1 является простым числом, каждое ненулевое целое Zj <= 216 имеет уникальную мультипликативную инверсию по модулю ( 216 + 1 ). Для аддитивной инверсии используется нотация ( -Zj ), таким образом, мы имеем: -Zj + Zj = 0 mod (216)

Для доказательства того, что алгоритм дешифрования с соответствующими подключами имеет корректный результат, рассмотрим одновременно процессы шифрования и дешифрования. Каждый из восьми раундов разбит на две стадии преобразования, первая из которых называется трансформацией, а вторая шифрованием.

Шифрование IDEA

Рис. 3.5. Шифрование IDEA
Дешифрование IDEA

Рис. 3.6. Дешифрование IDEA

Рассмотрим преобразования, выполняемые в прямоугольниках на обоих рисунках. При шифровании поддерживаются следующие соотношения на выходе трансформации:

Y_{1} = W_{81} \bullet Z_{49} Y_{3} = W_{82} + Z_{51}\\
Y_{2} = W_{83} + Z_{50} Y_{4} = W_{84} \bullet Z_{52}

Первая стадия первого раунда процесса дешифрования поддерживает следующие соотношения:

J_{11} = Y_{1} \bullet U_{1} J_{13} = Y_{3} + U_{3}\\
J_{12} = Y_{2} + U_{2} J_{14} = Y_{4} \bullet U_{4}

Подставляя соответствующие значения, получаем:

J_{11} = Y_{1} \bullet Z_{49}^{-1} = W_{81} \bullet Z_{49} \bullet Z_{49}^{-1} = W_{81}\\
J_{12} = Y_{2} + -Z_{50} = W_{83} + Z_{50} = W_{83} + Z_{50} + -Z_{50} = W_{83}\\
J_{13} = Y_{3} + -Z_{51} = W_{82} + Z_{51} + -Z_{51} = W_{82}\\
J_{14} = Y_{4} \bullet Z_{52}^{-1} = W_{84} \bullet Z_{52} \bullet Z_{52}^{-1} = W_{84}

Таким образом, выход первой стадии процесса дешифрования эквивалентен входу последней стадии процесса шифрования за исключением чередования второго и третьего блоков. Теперь рассмотрим следующие отношения:

W_{81} = I_{81 } \oplus MA_{R}(I_{81 } \oplus I_{83}, I_{82 } \oplus I_{84})\\
W_{82} = I_{83} \oplus MA_{R}(I_{81} \oplus I_{83}, I_{82} \oplus I_{84})\\
W_{83} = I_{82} \oplus MA_{L}(I_{81} \oplus I_{83}, I_{82} \oplus I_{84})\\
W_{84} = I_{84} \oplus MA_{L}(I_{81} \oplus I_{83}, I_{82} \oplus I_{84})

Где MAR(X, Y) есть правый выход МА структуры с входами Х и Y, и MAL(X, Y) есть левый выход МА структуры с входами Х и Y. Теперь получаем

V_{11} = J_{11} \oplus MA_{R} (J_{11} \oplus J_{13}, J_{12} \oplus J_{14}) =\\
      W_{81} \oplus MA_{R}(W_{81} \oplus W_{82}, W_{83} \oplus W_{84}) =\\
      I_{81} \oplus MA_{R}(I_{81} \oplus I_{83}, I_{82} \oplus I_{84}) \oplus \\
      MA_{R}[ I_{81} \oplus MA_{R}(I_{81} \oplus I_{83}, I_{82} \oplus I_{84}) \oplus I_{83} \oplus\\
      MA_{R}(I_{81} \oplus I_{83}, I_{82} \oplus I_{84}), I_{82} \oplus\\
      MA_{L}(I_{81} \oplus I_{83}, I_{82} \oplus I_{84}) \oplus I_{84} \oplus \\
      MA_{L}(I_{81} \oplus I_{83}, I_{82} \oplus I_{84}) ] =\\
      I_{81} \oplus MA_{R}(I_{81} \oplus I_{83}, I_{82} \oplus I_{84}) \oplus \\
      MA_{R}(I_{81} \oplus I_{83}, I_{82} \oplus I_{84}) = I_{81}

Аналогично мы имеем

V12 = I83
V13 = I82
V14 = I84

Таким образом, выход второй стадии процесса дешифрования эквивалентен входу предпоследней стадии процесса шифрования за исключением чередования второго и третьего подблоков. Аналогично можно показать, что

V81 = I11
V82 = I13
V83 = I12
V84 = I14

Наконец, так как выход трансформации процесса дешифрования эквивалентен первой стадии процесса шифрования за исключением чередования второго и третьего подблоков, получается, что выход всего процесса шифрования эквивалентен входу процесса шифрования.

< Лекция 2 || Лекция 3: 123456 || Лекция 4 >
Наталья Шульга
Наталья Шульга

Курс "информационная безопасность" .

Можно ли на него записаться на ПЕРЕПОДГОТОВКУ по данному курсу? Выдается ли диплом в бумажном варианте и высылается ли он по почте?

Мария Архипова
Мария Архипова