Смекни!
smekni.com

Интегральная атака против блочного симметричного шифра Crypton (стр. 8 из 11)

Λk – Λ-набор c k активными байтами.

Pr – множество состояний в конце раунда r.

Возьмем Λ-набор и проследим его изменение в течении нескольких раундов. После элементарных преобразований BS и KA блоки Λ-набора дадут в результате другой Λ-набор с активными байтами в тех же позициях, что и у исходного. Преобразование SR сместит эти байты соответственно заданным в ней смещениям. После преобразования MC Λ-набор в общем случае необязательно останется Λ-набором (т. е. результат операции может перестать удовлетворять определению Λ-набора). Но поскольку каждый байт

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

Рассмотрим шифрование Λ1-набора, во всех блоках которого активен только один байт. Т.е. значение этого байта различно во всех 256 блоках, а остальные байты одинаковы. Проследим эволюцию этого байта на протяжении трех раундов. В первом раунде преобразование MC преобразует один активный байт в столбец из 4 активных байт, т.е. P1 является Λ4. Во втором раунде эти 4 байта разойдутся по 4 различным столбцам в результате преобразования SR, P2 является Λ16. Преобразование MC следующего, третьего раунда преобразует эти байты в 4 столбца, содержащие активные байты. Этот набор все еще остается Λ-набором до того момента, когда он поступает на вход MC третьего раунда.

Основное свойство Λ-набора – поразрядная сумма по модулю 2 (

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

Рассмотрим теперь результат преобразования MC в третьем раунде байтов входного массива данных A в байты выходного массива данных B. Покажем, что и в этом случае поразрядная сумма всех блоков выходного набора будет равна нулю, то есть:

Таким образом, P3 является Λ16, т.е. все данные на входе четвертого раунда сбалансированы (их полная сумма равна нулю).

Этот баланс в общем случае нарушается последующим преобразованием BS. Ключ Kr также можно однозначно задать в L-представлении, которое строится следующим образом:

Зная Lr можно вычислить Kr, и обратно. Для проведения атаки потребуется множество Q4 состоящее из 256 состояний:

. Множество Q4 можно получить из выходных данных шифра P4 применением 2 обратных преобразований SR-1 и MC-1 к каждому состоянию.

Схема базовой интегральной атаки на 4-раундовый Crypton.

Для всех

Для

Если

, то

В этой схеме мы инвертируем 4-ый раунд шаг за шагом, чтобы получить сбалансированные байты P3. При

сумма
будет сбалансированной.

Если предполагаемое значение байта ключа было верно, то оно будет включено в возможные варианты на место

. Большая часть неверных значений байта будет отсеяно. За счет того, что поиск может производиться отдельно (параллельно) для каждого байта ключа, скорость подбора всего значения раундового ключа весьма велика. Далее по значению
можно найти
, а потом и
– исходный ключ [22].

2.3 Описание программной реализации

Разработанный в рамках дипломной работы программный продукт представляет собой реализацию шифрования и расшифрования данных с использованием алгоритма Cryptonи реализацию интегральной атаки. Системные требования - компьютер на базе IntelPentium и выше, ОС - Windows 95 + IE 4.0 и выше.

Программный продукт выполняет следующие операции:

- зашифрование входных данных в криптограму;

- расшифрование криптограммы;

- нахождение 128 – битного ключа.

Операция зашифрования выполняется следующим образом:

1. Запускаем файл ENCRDECR.EXE получаем на экране Рис.2.1

2. Нажатием кнопки "0" выбираем функцию зашифрования;

3. Указываем путь к файлу который необходимо зашифровать и путь где разместить криптограму Рис. 2.2

Рисунок 2.1 Начало работы программы


Рисунок 2.2 Указание пути к файлу

4. По указаному путимы получим криптограму.

Операция расшифрования выполняется следующим образом:

1. Запускаем файл ENCRDECR.EXE получаем на экране Рис.2.1

2. Нажатием кнопки "1" выбираем функцию расшифрования;

3. Указываем путь к криптограме и путь где разместить расшифрованный файл Рис. 2.3

Рисунок 2.3 Операция расшифрования


5. По указаному пути мы получим исходные данные.

Операция нахождения ключа выполняется следующим образом:

1. Запускаем файл ENCRDECR.EXE получаем на экране Рис.2.1

2. Нажатием кнопки "2" выбираем функцию атаки;

3. Указываем путь к криптограме Рис. 2.4

Рисунок 2.4 Операция нахождения ключа.

В результате получим наш ключ Рис.2.5


3. БЕЗОПАСНОСТЬ ЖИЗНЕДЕЯТЕЛЬНОСТИ

3.1 Анализ условий труда

Дипломный проект выполнялся в помещении научно - исследовательской лаборатории (НИЛ). При разработке применялись ПЭВМ. В дальнейшем при разработке вопросов БЖД будем использовать источники и нормативные документы, регулирующие вопросы БЖД при эксплуатации ПЭВМ [23, 12, 16].

Исследовательские работы выполнялись в помещении НИЛ,размеры которой составляют 4х6х3 м (площадь 24м2). В помещении имеется 1 окно, площадью 6 м2. Рабочих мест 2 (2 программиста). Каждое рабочее место оборудовано ПЭВМ.

Помещение соответствует требованиям ДНАОП 0.00-1.31-99 - на одного работающего приходится 12 м2площади и, 36 м3 объема при норме 6 м2и 20 м3соответственно.

Рассматривая НИЛ как систему "Человек-Машина-Среда" ("Ч-М-С"), можно выделить 2 подсистемы "рабочее место", в состав каждой из которых входят элементы "человек" (работник), "машина" (ПЭВМ). Элемент "среда" (производственная среда в помещении НИЛ) является общим для подсистем "рабочее место".

Элемент "человек" разделим на следующие функциональные части:

Ч1 – человек, выполняющий целенаправленные функции;

Ч2 – человек, рассматриваемый с точки зрения его влияния на "среду" за счет тепло-, влаговыделения и др.;

Ч3 – человек, рассматриваемый с точки зрения его психофизиологического состояния;

ПТ – предмет труда (проектирование программного продукта).

Элемент "машина" разделим на следующие части:

М1 – выполняет основную техническую функцию (программный продукт);

М2 – функции аварийной защиты (изоляция, предохранители);

М3 – управление окружающей средой (тепло, шум, электромагнитное излучение) (рисунок 1).

Рисунок 1. Система "Человек-Машина-Среда" для НИЛ

На рис. 1. приведены обозначения:

1 - (Ч1-М1) воздействие человека на управление машиной и ее настройки (программирование);

2 - (ПТ-М1) информация о состоянии предмета труда, управляемая машиной (исходные данные программы);

3 - (М1-ПТ) воздействие машины на предмет труда (компиляция программного кода);

4 - (Ч2-С) влияние "человека" на "среду" (теплообмен, шум) ;

5 - (С-Ч3) влияние "среды" на психофизиологическое состояние "человека" (утомление, перенапряженность анализаторов);

6 - (С-Ч1) влияние "среды" на качество работы "человека" (физическая и умственная активность);

7 - (М1-С) влияние "машины" на состояние "среды" (Эл.магн. излучение, тепло);

8 - (С-М1, С-М2, С-М3) влияние "среды" на качество работы "машины" (повышение температуры деталей компьютера);

9 - (Ч1-Ч3) связь выполняемой работы с психофизиологическим состоянием организма (утомление, умственная перенапряженность);