Криптографические стандарты des и гост 28147 89 реферат

Обновлено: 30.06.2024

ГОСУДАРСТВЕННЫЙ СТАНДАРТ СОЮЗА ССР

СИСТЕМЫ ОБРАБОТКИ ИНФОРМАЦИИ. ЗАЩИТА КРИПТОГРАФИЧЕСКАЯ

Алгоритм криптографического преобразования

Дата введения 1990-07-01

1. УТВЕРЖДЕН И ВВЕДЕН В ДЕЙСТВИЕ Постановлением Государственного комитета СССР по стандартам от 02.06.89 N 1409

2. ВВЕДЕН ВПЕРВЫЕ

3. ССЫЛОЧНЫЕ НОРМАТИВНО-ТЕХНИЧЕСКИЕ ДОКУМЕНТЫ

Обозначение НТД, на который дана ссылка

4. ПЕРЕИЗДАНИЕ, апрель 1996 г.

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

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

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

Термины, применяемые в настоящем стандарте, и их определения приведены в приложении 1.

1. СТРУКТУРНАЯ СХЕМА АЛГОРИТМА КРИПТОГРАФИЧЕСКОГО ПРЕОБРАЗОВАНИЯ

1.1. Структурная схема алгоритма криптографического преобразования (криптосхема) содержит (см. черт.1):


ключевое запоминающее устройство (КЗУ) на 256 бит, состоящее из восьми 32-разрядных накопителей (, , , , , , , );

четыре 32-разрядных накопителя (, , , );

два 32-разрядных накопителя (, ) с записанными в них постоянными заполнениями , ;

два 32-разрядных сумматора по модулю 2 (, );

32-разрядный сумматор поразрядного суммирования по модулю 2 ();

32-разрядный сумматор по модулю (2-1) ();

сумматор по модулю 2(), ограничение на разрядность сумматора не накладывается;

регистр циклического сдвига на одиннадцать шагов в сторону с

1.3. При сложении и циклическом сдвиге двоичных векторов старшими разрядами считаются разряды накопителей с большими номерами.

1.4. При записи ключа (, . ), , =1256, в КЗУ значение вводится в 1-й разряд накопителя , значение вводится во 2-й разряд накопителя , . , значение вводится в 32-й разряд накопителя ; значение вводится в 1-й разряд накопителя , значение вводится во 2-й разряд накопителя , . , значение вводится в 32-й разряд накопителя ; значение вводится в 1-й разряд накопителя и т.д., значение вводится в 32-й разр

1.5. При перезаписи информации содержимое -го разряда одного накопителя (сумматора) переписывается в -й разряд другого накопителя (сумматора).

1.6. Значения постоянных заполнений , (констант) накопителей , приведены в приложении 2.

1.7. Ключи, определяющие заполнения КЗУ и таблиц блока подстановки , являются секретными элементами и поставляются в установленном порядке.

Заполнение таблиц блока подстановки является долговременным ключевым элементом, общим для сети ЭВМ.

Организация различных видов связи достигается построением соответствующей ключевой системы. При этом может быть использована возможность выработки ключей (заполнений КЗУ) в режиме простой замены и зашифрования их в режиме простой замены с обеспечением имитозащиты для передачи по каналам связи или хранения в памяти ЭВМ.

1.8. В криптосхеме предусмотрены четыре вида работы:

зашифрование (расшифрование) данных в режиме простой замены;

зашифрование (расшифрование) данных в режиме гаммирования;

зашифрование (расшифрование) данных в режиме гаммирования с обратной связью;

режим выработки имитовставки.

Схемы программной реализации алгоритма криптографического преобразования приведены в приложении 3.

2. РЕЖИМ ПРОСТОЙ ЗАМЕНЫ

2.1. Зашифрование открытых данных в режиме простой замены

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


Открытые данные, подлежащие зашифрованию, разбивают на блоки по 64 бита в каждом. Ввод любого блока = ((0), (0). …, (0), (0), (0), (0) …, (0)) двоичной информации в накопители и производится так, что значение (0) вводится в 1-й разряд , значение (0) вводится во 2-й разряд и т.д., значение (0) вводится в 32-й разряд ; значение (0) вводится в 1-й разряд , значение (0) вводится во 2-й разряд и т.д., значение (0) вводится в 32-й разряд . В результате получают состояние ( (0), (0), …, (0), (0)) накопителя и состояние ( (0), (0),

Содержание работы

Перечень сокращений и условных обозначений 3
Введение 4
1. Анализ существующих и перспективных блочных симметричных
криптосистем 6
1.1 Понятие блочной симметричной криптосистемы 6
1.2 Блочные симметричные криптосистемы, использующие схему Фейстеля 7
1.2.1 Американский Федеральный стандарт шифрования DES 9
1.2.2 Российский стандарт шифрования ГОСТ 28147-89 19
Заключение 21
Список использованной литературы 22

Файлы: 1 файл

Petrov.docx

Руководитель, преп. Петров В.И.

Перечень сокращений и условных обозначений 3

1. Анализ существующих и перспективных блочных симметричных

1.1 Понятие блочной симметричной криптосистемы 6

1.2 Блочные симметричные криптосистемы, использующие схему Фейстеля 7

1.2.1 Американский Федеральный стандарт шифрования DES 9

1.2.2 Российский стандарт шифрования ГОСТ 28147-89 19

Список использованной литературы 22

Перечень сокращений и условных обозначений

АБ – авиационная безопасность

БЖД – безопасность жизнедеятельности

КЕО – коэффициент естественной освещенности

КП – компьютерная программа

КТС – комплекс технических средств

КУД – контроль и управление доступом

ПК – персональный компьютер

ПЭВМ – персональная электронно-вычислительная машина

ТО и Р – техническое обслуживание и ремонт

AES – Advanced Encryption Standard

DES – Data Encryption Standard

S-DES – Simple Data Encryption Standard

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

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

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

Первым классом криптосистем, практическое применение которых стало возможно с появлением мощных и компактных вычислительных средств, стали блочные шифры.

На сегодня реализовано довольно много различных алгоритмов криптографической защиты информации. Среди них можно назвать наиболее распространенные алгоритмы блочного шифрования DES (США), алгоритм шифрования ГОСТ 28147-89 (Россия) и ряд других, реализованных зарубежными и отечественными поставщиками программных и аппаратных средств защиты.

Алгоритм DES – один из самых распространённых алгоритмов блочного шифрования, рекомендованный Национальным бюро стандартов США совместно с Агентством национальной безопасности в качестве основного средства криптографической защиты информации как в государственных, так и в коммерческих структурах. Американский стандарт шифрования был разработан в 1977 году, а в 1978 был принят.

С появлением DES обогатился и криптоанализ, для атак на американский алгоритм было создано несколько новых видов криптоанализа (линейный, дифференциальный и т.д.), практическая реализация которых опять же была возможна только с появлением мощных вычислительных систем.

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

Несмотря на то, что DES имеет ряд недостатков, в начальный вариант стандарта постоянно вносятся изменения; появляются и новые алгоритмы, использующие в качестве основы DES – 3DES, DESX и др.

Данная работа посвящена вопросам современных методов криптоанализа, применяемым к алгоритмах блочного шифрования.

Рассмотрены некоторые общеизвестные алгоритмы шифрования, такие как DES, ГОСТ 28147-89. Рассмотрены способы проведения атак на эти алгоритмы с помощью линейного и дифференциального криптоанализа.

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

1 Анализ существующих и перспективных блочных симметричных криптосистем

1.1 Понятие блочной симметричной криптосистемы

Симметричные криптосистемы - это способ шифрования, в котором для шифрования и расшифрования применяется один и тот же криптографический ключ, называемый секретным [2]. Обобщенная структурная схема симметричной криптосистемы приведена на рисунке 1.1.

Рисунок 1.1 – Схема симметричной криптографической системы

В настоящее время симметричные шифры – это блочные шифры, которые обрабатывают информацию блоками определённой длины (обычно 64, 128 бит), применяя к блоку ключ в установленном порядке, как правило, несколькими циклами перемешивания и подстановки, называемыми раундами. Результатом повторения раундов является лавинный эффект - нарастающая потеря соответствия битов между блоками открытых и зашифрованных данных.

Фактически блочная криптосистема - система замены на алфавите блоков (она может быть моно- или многоалфавитной в зависимости от режима использования блочного шифра). В настоящее время блочные криптосистемы наиболее распространены.

Современные блочные симметричные криптосистемы представлены такими широко известными стандартами как российский стандарт ГОСТ 28147-89, американский стандарт DES и американский стандарт AES, в основу которого положен алгоритм Rijndael. Эти и большинство других шифров с секретным ключом основаны на принципе итерирования.

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

Рассмотрим и сравним наиболее часто используемые блочные симметричные криптосистемы.

1.2 Блочные симметричные криптосистемы, использующие схему Фейстеля

Одним из наиболее распространенных способов задания блочных шифров является использование схемы Фейстеля [2,6].

Стандарты ГОСТ 28147-89 (Россия), DES (США) и многие другие известные шифры с секретным ключом основаны на использовании схемы Фейстеля, конструкция которой заключается в том, что блок открытого текста с четным числом элементов (например, бит) разбивается на две равные части - левую L и правую R. На каждом раунде одна из частей подвергается преобразованию при помощи функции шифрования ψ и раундового (вспомогательного) ключа . Результат этой операции суммируется по mod 2 (обозначается на схеме как Å) с другой частью. Затем левая L и правая R части меняются местами и процесс преобразования повторяется. Обобщенная схема конструкции Фейстеля представлена на рисунке 1.2.

Рисунок 1.2 – Схема Фейстеля

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

Гарантируется, что блочный шифр, использующий такую конструкцию, является обратимым при возможности восстановления исходных данных функции ψ на каждом цикле. Сама функция ψ, называемая часто функцией усложнения, не обязательно должна быть обратимой. При задании произвольной функции ψ не потребуется реализовать две различные процедуры – одну для шифрования, а другую для расшифрования. Структура схемы Фейстеля автоматически позаботится об этом.

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

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

1.2.1 Американский Федеральный стандарт шифрования DES

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

DES является итеративным алгоритмом шифрования блоков данных разрядностью 64 бита на основе 64-битового ключа (реально используются 56 бит, а каждый восьмой бит не влияет на процесс шифрования и служит для контроля битов ключа по четности). Процесс расшифрования является инверсным по отношению к процессу зашифрования и выполняется по тому же ключу, что и зашифрование [2,3,6].

Шифр DES представляет собой результат отображений:

где IP - начальная перестановка (см. таблицу 1.1); - перестановка, обратная начальной;

5.1.4 Стандарт шифрования данных DES — государственный стандарт США

Стандарты по защите данных ЭВМ от несанкционированного доступа требовались в таких областях, как шифрование, установление подлинности личности и данных (аутентификация), контроль доступа, надежное хранение и передача данных. В результате сотрудничества трех организаций США — Национального бюро стандартов ( NBC ), Управления национальной безопасности ( NSA ) и фирмы IBM подобный стандарт получивший название DES ( Data Encryption Standart ) был разработан и опубликован в 1975 г .

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

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

Подстановка относится к простейшим методам шифрования. Ключом является переставленный алфавит, буквами которого заменяют буквы нормального алфавита. Так, если букву А заменить на Б, Б на В и т.д., то слово ОХРАНА будет выглядеть как ПЦСБОБ. Шифрование простой подстановкой на коротких алфавитах типа латинского и русского обеспечивает слабую защиту лежащего в основе открытого текста. Дело в том, что распределение частот появления отдельных символов в открытом тексте сохраняется неизменным в шифротексте.

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

Стандарт шифрованных данных DES — один из наиболее удачных примеров криптоалгоритма, разработанного в соответствии с принципами рассеивания и перемешивания. В нем открытый текст, криптограмма и ключ являются двоичными последовательностями длиной соответственно М — 64, N = 64, К = 56 бит. Криптоалгоритм

DES представляет собой суперпозицию элементарных шифров, состоящую из 16 последовательных шифроциклов, в каждом из которых довольно простые перестановки с подстановками в четырехбитовых группах. В каждом проходе используются лишь 48 бит ключа, однако они выбираются внешне случайным образом из полного 56-битового ключа.

Алгоритм DES используется как для шифрования, так и для установления подлинности (аутентификации) данных. Он способен функционировать в четырех основных режимах: электронной кодовой книги (ЕСВ), обратной связи по шифротексту (СРВ), сцепления блоков шифра (СВС) и обратной связи по выходу ( OFB ). Каждому режиму свой­ ственны свои преимущества и недостатки: режим ЕСВ хорошо подходит для шифрования ключей; режим СЕВ обычно предназначается для шифрования отдельных символов; режим OFB нередко применяется для шифрования в спутниковых системах связи.

Режимы СВС и СРВ пригодны для аутентификации данных. Они позволяют использовать алгоритм DES при обмене данными между терминалом и главной ЭВМ, шифрования криптографического ключа в процедурах автоматизированного распределения ключей, шифрования файлов, почтовых отправлений, спутниковой информации и для ряда других практических задач.

5.1.5 ГОСТ 28147-89 — отечественный стандарт на шифрование данных

В нашей стране установлен единый алгоритм криптографического преобразования данных для систем обработки информации в сетях отдельных вычислительных комплексах и ЭВМ, который определяется ГОСТ 28147-89 .

При описании алгоритма приняты следующие обозначения. Если /, // R — это последовательности бит, то LR будет обозначать конкатенацию последовательностей L и R , Под конкатенацией последовательной L и R понимается последовательность бит, размерность которой равна сумме размерностей L и R В этой последовательности биты последовательности R следуют за битами последовательности L . Конкатенация битовых строк является ассоциативной, т.е. запись ABCDE обозначает, что за битами последовательности/4 следуют биты последовательности В, затем С и т.д.

Символом (+) обозначается операция побитового сложения по модулю 2, символом [+] — операция сложения по модулю 2 32 двух 32-разрядных чисел. Числа суммируются по следующему правилу:

А [+1 ~В - А + В, если А + В 2 32 ;

Af + JB = A + В - 2 3 ~, если А + В > 2 3 ~.

Символом обозначается операция сложения по модулю 2 32 - 1 двух : 32-разрядных чисел. Правила суммирования чисел следующие:

АВ=А + В, если А ! В 32 - 1;

А <+) В -А + В - >2 32 - /;, ес.т А + В > 2 32 - 1.

Алгоритм криптографического преобразования предусматривает несколько режимов работы. Но в любом случае для шифрования данных используется ключ, который имеет размерность 256 бит и представляется в виде восьми 32-разрядных чисел ХО). Если обозначить ключ через W , то

W = X (7) X (6) X (5) X (4) X (3) X (2) X (1) X (0).

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

Первый и самый простой режим — замена. Открытые данные, подлежащие зашифрованию, разбивают на блоки по 64 бит в каждом, которые можно обозначить TQ ). Очередная последовательность бит T ( j )' разделяется на две последовательности В(0) (левые или старшие биты) и А(0) (правые или младшие биты), каждая из которых содержит 32 бита. Затем выполняется итеративный процесс шифрования, который описывается следующими формулами:

при /=1,2. 24; / - (/- l )( modS )

при / = 25, 26. 31;/' = 32-/ А (/) =f(A(i - \)fv]X(i)(+)B(i - 1));

B(i)=A(i-\); при / = 32

где / обозначает номер итерации (/' = 1, 2. 32). Функция / называется функцией шифрования. Ее аргументом является сумма по модулю 2 32 числа А(/), полученного на предыдущем шаге итерации, и числа Хф ключа (размерность каждого из этих чисел равна 32 знакам).

Функция шифрования включает две операции над полученной 32-разрядной суммой. Первая операция называется подстановкой К. Блок подстановки К состоит из восьми узлов замены К(1) . К(8) с памятью 64 бит каждый. Поступающий на блок подстановки 32- разрядный вектор разбивается на восемь последовательно идущих 4-разрядных векторов, каждый из которых преобразуется в 4-разрядный вектор соответствующим узлом замены, представляющим собой таблицу из шестнадцати целых чисел в диапазоне 0 . 15.

Вторая операция — циклический сдвиг влево 32-разрядного вектора, полученного в результате подстановки К. 64-разрядный блок зашифрованных данных Тш, представляется в виде:

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

К этим случаям относится выработка ключа и зашифрование его с обеспечением имитозащиты для передачи по каналам связи или хранения в памяти ЭВМ.

Следующий режим шифрования называется режимом гаммирования. Открытые данные, разбитые на 64-разрядные блоки T ( i ) ( i ~ 1, 2, . m , где m определяется объемом шифруемых данных), зашифровываются в режиме гаммирования путем поразрядного сложения по модулю 2 с гаммой шифра Гш, которая вырабатывается блоками по 64 бит, т.е.

г,„ = (гтп2) . га) . пыу

Число двоичных разрядов в блоке Т(т) может быть меньше 64, при этом неиспользованная для шифрования часть гаммы шифра из блока Г(т) отбрасывается

Уравнение зашифрования данных в режиме гаммирования может быть представлено в следующем виде:

LLI(i) = A(Y(/ - 1)[+) С 2 , Z(i - 1) С ,(+) Т (/)) - Г (/)(+) Т (/). .

В этом уравнении IJJ ( i ) обозначает 64-разрядный блок зашифрованного текста; А(-) — функцию шифрования в режиме простой замены (аргументами этой функции являются два 32-разрядных числа); С/ и С> константы, заданные в обязательном приложении 2 к ГОСТ

28147-89. Величины Y (-) и Z (-) определяются итерационно по мере формирования гаммы следующим образом:

( Y (0), Z (0)) = A ( S ), где S — 64-разрядная двоичная последовательность (синхропосылка);

Расшифрование данных возможно только при наличии синхропосылки, которая не является секретным элементом шифра и может храниться в памяти ЭВМ или передаваться по каналам связи вместе с зашифрованными данными.

Режим гаммирования с обратной связью очень похож на режим гаммирования. Как и в режиме гаммирования, открытые данные, разбитые на 64-разрядные блоки Т(/) (/ = 1, 2. т, где т определяется объемом шифруемых данных), зашифровываются путем поразрядного сложения по модулю 2 с гаммой шифра Гш, которая вырабатывается блоками по 64 бит:

Число двоичных разрядов в блоке Т(т) может быть меньше 64, при этом неиспользованная для шифрования часть гаммы шифра из блока Г(т) отбрасывается.

Уравнение зашифрования данных в режиме гаммирования с обратной связью для / = 2.3. т может быть представлено в следующем виде:

где III ( i ) обозначает 64-разрядный блок зашифрованного текста; А(-) — функцию шифрования в режиме простой замены. Аргументом функции на первом шаге итеративного алгоритма является 64-разрядная синхропосылка, а на всех последующих — предыдущий блок зашифрованных данных Ul ( i — I ).

Для получения имитовставки открытые данные представляются в виде 64-разрядных блоков Т(/') (/' = 1, 2, . , то, где т определяется объемом шифруемых данных). Первый блок открытых данных Т(1) подвергается преобразованию, соответствующему первым 16 циклам алгоритма зашифрования в режиме простой замены, причем в качестве ключа для выработки имитовставки используется ключ, по которому шифруются данные.

Полученное после 16 циклов работы 64-разрядное число суммируется по модулю 2 со вторым блоком открытых данных Т(2). Результат суммирования снова подвергается преобразованию, соответствующему первым 16 циклам алгоритма зашифрования в режиме простой замены.

Полученное 64-разрядное число суммируется по модулю 2 с третьим блоком открытых данных Т(3) и т.д. Последний блок Т(т), при необходимости дополненный до полного 64-разрядного блока нулями, суммируется по модулю 2 с результатом работы на шаге т — 1, после чего зашифровывается в режиме простой замены по первым 16 циклам работы алгоритма. Из полученного 64-разрядного числа выбирается отрезок Ир длиной/; бит.

Имитовставка Ир передается по каналу связи или в память ЭВМ после зашифрованных данных. Поступившие зашифрованные данные расшифровываются и из полученных блоков открытых данных Т(/) вырабатывается имитовставка Ир, которая затем сравнивается с имитовставкой Ир, полученной из канала связи или из памяти ЭВМ. В случае несовпадения имитовставок все расшифрованные данные считают ложными.

В 1973 г. Национальное бюро стандартов США начало разработку программы по созданию стандарта шифрования данных на ЭВМ. Был объявлен конкурс среди фирм разработчиков США, который выиграла фирма IBM, представившая в 1974 году алгоритм шифрования, известный под названием DES(Data Encryption Standart).

В этом алгоритме входные 64-битовые векторы, называемые блоками открытого текста, Преобразуются в выходные 64-битовые векторы, называемые блоками шифротекста, с помощью двоичного 56-битового ключа К. Число различных ключей DES-алгоритма равно 2 56 >7*10 16 .

Алгоритм реализуется в течение 16 аналогичных циклов шифрования, где на I-ом цикле используется цикловой ключ Ki , представляющий собой алгоритмически вырабатываемую выборку 48 битов из 56 битов ключа Ki, I=1,2,…,16.

Алгоритм обеспечивает высокую стойкость, однако недавние результаты показали, что современная технология позволяет создать вычислительное устройство стоимостью около 1 млн. долларов США, способное вскрыть секретный ключ с помощью полного перебора в среднем за 3,5 часа.

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

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

Достигнута высокая скорость шифрования. Она составляет в лучших изделиях 45 Мбит/с. Цена некоторых аппаратных изделий ниже 100 долларов США.

Основные области применения DES-алгоритма:

1) хранение данных на компьютерах (шифрование файлов, паролей);

3) электронная система платежей (при операциях с широкой клиентурой и между банками);

4) Электронный обмен коммерческой информацией( обмен данными между покупателями, продавцом и банкиром защищен от изменений и перехвата.

3.5.2 ГОСТ 28147-89

В общих чертах ГОСТ 28147 аналогичен DES. Блок-схема алгоритма ГОСТ отличается от блок-схемы DES-алгоритма лишь отсутствием начальной перестановки и число циклов шифрования (32 в ГОСТ против 16 в DES-алгоритме).

Ключ алгоритма ГОСТ — это массив, состоящий из 32-мерных векторов X1, X2,…X8. Цикловой ключ i-го цикла Ki равен Xs, где ряду значений i от 1 до 32 соответствует следующий ряд значений s:

В шифре ГОСТ используется 256-битовый ключ и объем ключевого пространства составляет 2 256 . Ни на одной из существующих в настоящее время или предполагаемых к реализации в недалеком будущем компьютерной системе общего применения нельзя подобрать ключ за время, меньшее многих сотен лет. Российский стандарт проектировался с большим запасом, по стойкости он на много порядков превосходит американский стандарт DES с его реальным размером ключа в 56 бит о и объемом ключевого пространства всего 2 56 ( и неудивительно: его ключ длиной 32 байта (256 бит) вчетверо больше ключа DES. Необходимое же на перебор всех ключей время при этом возрастает не в четыре раза, а в 256 32-8 =256 24 , что выливается уже в астрономические цифры), чего явно недостаточно. В этой связи DES может представлять скорее исследовательский или научный, чем практический интерес.

Читайте также: