А.Винокуров. Серия "Энциклопедия блочных шифров".


DES. Начальная и конечная битовые перестановки.

На домашнюю страничку Список алгоритмов Общая структура Функция шифрования


Начальная и обратная ей конечная битовые перестановки алгоритма DES задаются в приведенных ниже таблицах. Каждая ячейка таблицы соответствует определенному биту блока данных, номер которого указан в ней мелкими цифрами более бледным по сравнению с основным текстом цветом. Каждая таблица приведена в двух вариантах, соответствующих двум используемым способам нумерации битов в блоках. В левой части приводится вариант нумерации битов, принятый в оригинале стандарта – начиная с единицы от старших битов к младшим. Учитывая распространенность архитектуры Intel x86, в правой части таблицы приводится принятый для нее вариант нумерации, – начиная с нуля от младших битов к старшим. При описании перестановки в ячейках указывается номер бита исходного блока, который при перестановке помещается на место бита, соответствующего ячейке. Например, согласно таблице начальной перестановки на место самого старшего бита результата (N1 в левой таблице и N63 в правой) помещается бит N58 (N6 в правой таблице) исходного блока, на место бита N2(N62) бит N50(N14), и т.д..

Начальная битовая перестановка (IP).

158250 342434 526618 71082  <-- старший байт --> 6366214 61226030 59385846 57545662
9601052 11441236 13281420 1512164  5545412 53205228 51365044 49524860
17621854 19462038 21302222 2314246  4724610 45184426 43344242 41504058
25642656 27482840 29323024 3116328  390388 37163624 35323440 33483256
33573449 35413633 37253817 399401  3173015 29232831 27392647 25552463
41594251 43434435 45274619 4711483  2352213 21212029 19371845 17531661
49615053 51455237 53295421 5513565  1531411 13191227 11351043 951859
57635855 59476039 61316223 6315647  <-- младший байт --> 7169 517425 333241 149057

Нумерация битов в оригинале DES

 

Нумерация битов в Intel x86

Конечная битовая перестановка (IP–1).

14028 348416 556624 764832  <-- старший байт --> 63246256 61166048 5985840 5705632
939107 11471215 13551423 15631631  55255457 53175249 5195041 4914833
1738186 19462014 21542222 23622430  47264658 45184450 43104242 4124034
2537265 27452813 29533021 31613229  39273859 37193651 35113443 3333235
3336344 35443612 37523820 39604028  31283060 29202852 27122644 2542436
4135423 43434411 45514619 47594827  23292261 21212053 19131845 1751637
4934502 51425210 53505418 55585626  15301462 13221254 11141046 96838
5733581 5941609 61496217 63576425  <-- младший байт --> 731663 523455 315247 17039

Нумерация битов в оригинале DES

 

Нумерация битов в Intel x86

На домашнюю страничку Список алгоритмов Общая структура Функция шифрования


[Список алгоритмов] [Основные характеристики] [Структура алгоритма] [Битовые перестановки] [Функция шифрования] [Узлы замен] [Ключевые элементы] [Историческая справка]
 
[Начало осмотра] [Что нового] [Статьи] [Выпуски в "Байтах"] [Что скачать] [Криптоалгоритмы] [Глоссарий] [Ссылки] [Гостевая книга] [Форум] [Напиши мне]

Подготовлено 24.02.01. (c) 2001 Андрей Винокуров.