Мегаобучалка Главная | О нас | Обратная связь


Стандарт шифрования DES (США)



2016-01-02 1026 Обсуждений (0)
Стандарт шифрования DES (США) 0.00 из 5.00 0 оценок




Алгоритм, изложенный в стандарте DES (Data Encryption Standard), наиболее распространен и широко применяется для шифрования данных в США [7]. Он был разработан фирмой IBM для собственных целей, но после проверки Агентством Национальной Безопасности США был рекомендован к применению в качестве федерального стандарта шифрования. Алгоритм DES не является закрытым и был опубликован для широкого ознакомления. Алгоритм предназначен для зашифровки и расшифровки блоков данных длиной по 64 бита под управлением 64-битового ключа, в котором значащими являются 56 бит. Дешифрование в DES выполняется путем повторения операций шифрования в обратной последовательности.

Обобщенная схема шифрования алгоритма DES представлена на рис. 5.5.

Рис. 5.5. Обобщенная схема шифрования алгоритма DES

Пусть из открытого текста взят очередной 64-битовый блок T. Этот блок T преобразуется с помощью матрицы начальной перестановки IP. Данная перестановка фиксирована и приведена в таблице 5.2.

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

Например, бит 58 входного блока T становится битом 1, бит 50 – битом 2 и т.д.

Далее, полученная в результате перестановки последовательность битов T0 разделяется на 2 последовательности: L0 – старшие 32 бита, R0 – младшие 32 бита.

Затем выполняется итеративный процесс шифрования, состоящий из 16 циклов. Если Ti – последовательность битов, полученная на i – ой итерации, Ti=LiRi, то результат i-ой итерации описывается следующими формулами:

Li=Ri, Ri=Li-1 Å f(Ri-1,Ki), i=1,2,...,16,

где f – функция шифрования.

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

Табл. 5.3. Конечная перестановка(IP-1)

 

Схема вычисления функции шифрования f(Ri-1,Ki) представлена на рис. 5.6.

Для вычисления функции f используются:

- функция Е, расширяющая 32-битовое значение до 48 бит;

- функции S1,...,S8, преобразующие 6-битовое число в 4-битовое;

- функция P, осуществляющая перестановку битов в 32-битовой последовательности.

Функция расширения E определяется таблицей 5.4 выборки битов.

После расширения Ri-1 результат складывается по модулю два с текущим значением ключа Ki и затем разбивается на восемь 6-битовых блоков B1,B2,...,B8. Далее каждый из этих блоков используется как номер элемента в функциях-матрицах S1,S2,...,S8, содержащих 4-битовые значения (табл. 5.5).

Рис. 5.6. Схема вычисления функции шифрования f

 

Таблица 5.4. Таблица функции расширения Е

Выбор элемента в матрице Sj осуществляется следующим образом. Пусть на вход матрицы Sj поступает 6-битовый блок B1=b1b2b3b4b5b6, тогда двухбитовое число b1b2 указывает номер строки, а четырехбитовое число b2b3b4b5 – номер столбца матрицы Sj, откуда и берется требуемое четырехбитовое значение. Совокупность 6-битовых блоков B1B2,...,B8 обеспечивает выбор четырехбитового элемента в каждой из матриц S1,S2,...,S8.

Табл. 5.5. Функции преобразования S1,...,S8

Блок замены 1 (S[1])

Блок замены 2 (S[2])

Блок замены 3 (S[3])

Блок замены 4 (S[4])

Блок замены 5 (S[5])

Блок замены 6 (S[6])

Блок замены 7 (S[7])

Блок замены 8 (S[8])

 

 

В результате получаем значение S1(B1) S2(B2)... S8(B8) – 32 битовый блок, который преобразуется с помощью функции перестановки битов P (таблица 5.6.)

Табл. 5.6. Функция перестановки битов P

Необходимо отметить, что на каждой итерации в схеме 5.6 используется новое значение ключа Ki. Новое значение ключа Ki вычисляется из начального ключа K. Ключ K представляет собой 64-битовый блок с 8 битами контроля по четности, расположенными в позициях 8,16,24,32,40,48,56,64. Для удаления контрольных битов и подготовки ключа к работе используется функция G первоначальной подготовки ключа (табл. 5.7). Данная таблица имеет размер 7x8 и из нее исключены контрольные биты, то есть они не используются при шифровании.

Табл. 5.7. Функция G первоначальной подготовки ключа

 

Полученную в результате перестановки битов ключа последовательность делят на 2 части – C0 и D0. После этого, рекурсивно вычисляются Ci,Di, i=1,2,...,16. Для этого применяются операции независимого для Ci и Di циклического сдвига влево на 1 или 2 бита в зависимости от номера шага итерации. Число сдвигов на итерацию приведено в таблице ниже.

 

Итерация № 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

Сдвиги влево 1 1 2 2 2 2 2 2 1 2 2 2 2 2 2 1

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

Табл. 5.8. Функция H завершающей обработки ключа

Для шифрования или дешифрования более чем 64 битного блока существуют официальные режимы. Один из них - вычисления для каждого блока в ряде. Он назван режимом электронной кодовой книги. Более сильный метод заключается в суммировании по модулю два блока открытого текста с блоком шифротекста, прежде зашифрованным. Данный метод называется связыванием шифр-блоков(Сifer Block Chaining, CBC).

Другие два режима - режим с выходной обратной связью (Output Feedback mode, OFB) и шифрование с обратной связью (Cifer Feedback mode, CFB), распространяющие искажения в открытом тексте, что применяется для проверки целостности информации.

Число различных ключей DES-алгоритма равно 256 = 7*1016 . Недавние исследования показали, что современная технология позволяет создать вычислительное устройство стоимостью около 1 млн. долларов, способное вскрыть секретный ключ с помощью полного перебора в среднем за 3,5 часа.

В настоящее время криптостойкость алгоритма DES не удовлетворяет реальным потребностям, в связи с чем, данный алгоритм в настоящее время заменен в США на более стойкий алгоритм AES.

 



2016-01-02 1026 Обсуждений (0)
Стандарт шифрования DES (США) 0.00 из 5.00 0 оценок









Обсуждение в статье: Стандарт шифрования DES (США)

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:
Личность ребенка как объект и субъект в образовательной технологии: В настоящее время в России идет становление новой системы образования, ориентированного на вхождение...
Почему человек чувствует себя несчастным?: Для начала определим, что такое несчастье. Несчастьем мы будем считать психологическое состояние...
Как распознать напряжение: Говоря о мышечном напряжении, мы в первую очередь имеем в виду мускулы, прикрепленные к костям ...
Генезис конфликтологии как науки в древней Греции: Для уяснения предыстории конфликтологии существенное значение имеет обращение к античной...



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (1026)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.007 сек.)