Матрица начальной перестановки IP

               
               
               
               
               
               
               
               

Биты входного блока Т (64 бита) переставляются в соответствии с матрицей IP: бит 58 входного блока Т становится битом 1, бит 50 – битом 2 и т.д. Эту перестановку можно описать выражением Т0 = IP(T). Полученная последовательность битов Т0 разделяется на две последовательности: L0 – левые или старшие биты, R0 – правые или младшие биты, каждая из которых содер-жит 32 бита.

Затем выполняется итеративный процесс шифрования, состоящий из 16 шагов (циклов). Пусть Тi – результат i-й итерации:

Тi = Li Ri,

где Li= t1 t2... t32 (первые 32 бита); Ri = t33 t34... t64 (последние 32 бита). Тогда результат i-й итерации описывается следующими формулами:

Li = Ri–1, i = 1, 2,..., 16;

Ri= Li–1  f(Ri–1, Ki), i = 1, 2,..., 16.

Функция f называется функцией шифрования. Ее аргументами являются последовательность Ri–1, получаемая на предыдущем шаге итерации, и 48-битовый ключ Кi, который является результатом преобразования 64-битового ключа шифра К. (Подробнее функция шифрования f и алгоритм получения ключа Кi описаны ниже.)

На последнем шаге итерации получают последовательности R16 и L16 (без перестановки местами), которые конкатенируются в 64-битовую последовательность R16 L16.

По окончании шифрования осуществляется восстановление позиций битов с помощью матрицы обратной перестановки IP–1 (табл.3.2).


Таблица 3.2

Матрица обратной перестановки IP–1

               
               
               
               
               
               
               
               

Пример того, как соотносятся элементы первой строки матрицы IP–1 с элементами матрицы IP приведен в табл. 3.3.

Таблица 3.3


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: