Главная  | О журнале  | Авторы  | Новости  | Конкурсы  | Научные мероприятия  | Вопросы / Ответы

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

К содержанию номера журнала: Вестник КАСУ №1 - 2009

Автор: Жантасова Ж.З.

Исторически первым оценочным стандартом, получившим широкое распространение и оказавшим огромное влияние на базу стандартизации информационной безопасности во многих странах, стал стандарт Министерства обороны США "Критерии оценки доверенных компьютерных систем". Данный труд, называемый чаще всего по цвету обложки "Оранжевой книгой", был впервые опубликован в августе 1983 года. Уже одно его название требует комментария. Речь идет не о безопасных, а о доверенных системах, то есть системах, которым можно оказать определенную степень доверия.

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

Степень доверия, или надежность систем, оценивается по двум основным критериям:

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

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

Согласно "Оранжевой книге", политика безопасности должна включать в себя, по крайней мере, следующие элементы:

- добровольное управление - это метод ограничения доступа к объектам, основанный на учете личности субъекта или группы, в которую субъект входит. Добровольность управления состоит в том, что некоторое лицо (обычно владелец объекта) может по своему усмотрению давать другим субъектам или отбирать у них права доступа к объекту;

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

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

- принудительное управление доступом основано на сопоставлении меток безопасности субъекта и объекта. Субъект может читать информацию из объекта, если уровень секретности субъекта не ниже, чем у объекта, а все категории, перечисленные в метке безопасности объекта, присутствуют в метке субъекта.

В "Оранжевой книге" введены следующие классификации уровней:

- уровень D - предназначен для систем, признанных неудовлетворительными;

- уровень C - произвольное управление доступом;

- уровень B - принудительное управление доступом;

- уровень A - верифицируемая безопасность.

Некоторые из них имеют подклассы.

Класс D: (Минимальная защита) - к этому классу относятся системы на подобия DOS, так как защита в них практически отсутствует.

Класс С: (Избирательная защита) - большинство широко используемых систем претендует на соответствие защите по классу С2. Однако, есть разница между сертификацией по классу С2 в Национальном центре компьютерной безопасности (NCSC) и просто соответствие уровню защиты класса С2;

- Класс С1: На основе избирательной защиты;

- Класс С2 На основе управляемого доступа.

Класс В: (Обязательная защита) - система должна иметь математическое описание своей защиты и поддерживать защиту даже в отключенном состоянии:

- Класс В1: Защита с применением меток безопасности;

- Класс В2: Структурированная защита;

- Класс В3 Домены безопасности.

Класс А: (Верифицированная защита) - для проверки спецификации такой системы применяются методы формальной верификации:

- Класс А1: Верифицированная разработка;

- Класс выше А1.

Любая компьютерная система, разрешающая открытый и неограниченный доступ, относится к классу D. Большинство операционных систем соответствуют классам С1 и С2. Системы класса А и В чаще всего встречаются там, где постоянно требуется поддерживать максимально возможную защиту – например, в некоторых правительственных учреждениях.

Алгоритм DES был представлен фирмой IBM в 1974 г. в Национальное бюро стандартов США (NBS) к специалистам по вопросу об алгоритмах для стандарта шифрования данных в государственных и частных учреждениях. Одно из требований состояло в возможности публикации алгоритма без ущерба для его стойкости. Алгоритм DES (Data Encryption Standard) как федеральный стандарт обработки данных был полностью опубликован NBS в 1977 году. DES представляет собой блочный шифр, он шифрует данные 64-битовыми блоками. С одного конца алгоритма вводится 64-битовый блок открытого текста, а с другого конца выходит 64-битовый блок шифртекста. DES является симметричным алгоритмом: для шифрования и дешифрования используются одинаковый ключ (за исключением небольших отличий в использовании ключа). Длина ключа равна 56 битам. (Ключ обычно представляется 64-битовым числом, но восемь битов используются для проверки четности) Безопасность полностью определяется ключом. 56 бит - это 8 семибитовых ASCII символов. Алгоритм представляет собой комбинацию 2-х основных методов шифрования: подстановок и перестановок. Фундаментальным строительным блоком DES является применение к тексту единичной комбинации этих методов (подстановка, а за ней – перестановка), зависящей от ключа. Такой блок называется этапом. DES состоит из 16 этапов, одинаковая комбинация методов применяется к открытому тексту 16 раз.

IDEA (International Data Encryption Algorithm) - это вторая версия блочного шифра, разработанный К. Лейем (Lai)и Д. Месси (Massey) в конце 80-х. Это шифр, состоящий из 64-битных повторяющихся блоков со 128-битным ключом и 8-ю проходами (rounds). Дешифрование выполняется по тому же принципу, что и шифрование. Структура шифра была разработана для легкого воплощения как программно, так и аппаратно, и безопасность IDEA основывается на использовании трех несовместимых типов арифметических операций над 16-битными словами:

- поразрядное сложение по модулю 2;

- сложение беззнаковых целых по модулю 216 (модуль 64536);

- умножение целых по модулю (216+1) (модуль 64536), рассматриваемых как беззнаковые целые.

IDEA базируется исключительно на операции «исключающее ИЛИ». Алгоритм использует всего 52 подключа (по 6 для каждого из 8 циклов и еще 4 для преобразования выхода). Сначала 128-битовый ключ делят на 8 16-битовых подключей. Это - первые 8 подключей для алгоритма (6 подключей - для первого цикла и первые 2 подключа - для второго цикла). Затем 128-битовый ключ циклически сдвигается влево на 25 бит и снова делится на 8 подключей. Первые 4 из них используют во втором цикле; последние 4 – в третьем цикле. Ключ снова циклически сдвигается влево еще на 25 бит для получения следующих 8 подключей и т.д., пока выполнение алгоритма не завершится.

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

Один из принципов создания IDEA - затруднить дифференциальный криптоанализ. Анализ, проведенный Daemen, привел к открытию большого класса 251 слабых ключей, при использовании которых в процессе шифрования ключ может быть обнаружен и восстановлен. Однако, т.к. в IDEA существует 2128 возможных вариантов ключей, то это открытие не влияет на практическую безопасность шифра.

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

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

- шифрование данных в режиме гаммирования;

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

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

Активное внедрение компьютерных технологий во все сферы деятельности человека способствовало качественным изменениям в развитии криптографических систем. До 1976 года рассматривались симметричные системы, в которых ключи шифрования и расшифрования считались секретными. Появление систем с открытым ключом, где секретным является только ключ дешифровки, явилось новым направлением в криптографии. Фундаментальной основой введения и использования систем с открытым ключом является математика, обеспечивающая построение и анализ подходящих функций. Именно трудноразрешимые (трудновычислимые) математические задачи (функции) послужили основой эффективности криптосистем с открытым ключом. В схеме Diffie и Hellmana рассматривается функция f(x)=gx, f: P*→P* (P-конечное поле, g-его примитивный элемент). Если gx=f, x-есть дискретный логарифм элемента f по основанию g. Задача нахождения x по f и g известна как проблема дискретного логарифма и считается трудновычислимой.

В алгоритме RSA используются большие натуральные числа N=P*Q, где P,Q – большие простые числа. Построение больших простых чисел P,Q является сложной задачей. В основе шифрования в RSA лежит односторонняя функция f(x)=xemodn. Если известны y= xemodn, и e-значение открытого ключа, n-модуль, то трудно восстановить х, если мы не знаем ключ дешифровки d: yd=xed=1modn=x.

Алгоритм RSA опубликован в 1978 году и назван по именам создателей: R. Rivest, A. Shamir и L. Adleman. Это самая распространенная в настоящее время криптосистема с открытым ключом. Это алгоритм основан на использовании односторонней функции с лазейкой (trapdoor one-way function). Зная 2 простых P,Q числа, умножить их и получить N=P*Q очень легко, разложение же числа N на простые множители и есть «лазейка». Разложение N на P и Q вычислительно неосуществимо при условии, что длины P и Q составляют не менее 100 десятичных знаков. В 1994 году было факторизировано число со 129 десятичными цифрами (математиком А. Мистра, М. Манасси) на 1600 компьютерах в сети в течение 8 месяцев.

Таким образом, выбираем большое натуральное число N=P*Q, где P,Q простые числа.

Рассмотрим генерацию ключей. В алгоритме RSA используются два ключа:

- e – открытый ключ;

- d – закрытый/секретный ключ.

Открытый ключ e выбирается из следующего условия:

,

где - функция Эйлера.

Секретный ключ d вычисляется из сравнения по следующей формуле:

Криптографическую систему формирует получатель секретной информации, т.е. осуществляет генерацию ключей и публикует (e,N).

Таким образом, (e,N) – открытая информация, (d,P,Q) – секретная информация.

Шифрование и расшифрование реализуется по следующей схеме:

- оцифровка исходного текста pt;

- шифрование производится по следующей формуле:

Действие производится отправителем.

- Расшифрование производится по следующей формуле:

Действие производится получателем информации.

Пример 1:

1.

2.

3.

Пример 2: Агент и контора передают сообщения друг другу с помощью алгоритма RSA. Независимо друг от друга, они создают ключи:

Пусть агенту требуется переслать конторе сообщение: fin. Вначале необходимо провести оцифровку исходного текста:

Далее следует шифровка:

Получив шифровку контора производит обратный процесс:

Достоинством данного алгоритма является то, что исключается необходимость передачи секретного ключа по каналам связи. Недостаток состоит в том, что, используя опубликованный ключ, сообщение может прислать любой абонент, выдавая себя за другого абонента. Решением этой проблемы может быть аутентификация – подтверждение авторства присланного документа. Для этих целей разработан способ шифрования, который называется электронной цифровой подписью (ЭЦП). Идея ЭЦП: сообщение шифруется не только опубликованным открытым ключом, но и собственным секретным ключом абонента, отправляющего сообщение.

Пример 3: Пусть контора отправляет агенту сообщение – . Вначале контора шифрует сообщение открытым ключом агента:

Далее контора повторно шифрует полученный шифр своим секретным ключом:

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

, (затем секретный ключ самого агента)

ЛИТЕРАТУРА

1. Романец Ю.В., Тимофеев П.А., Шаньгин В.Ф. Защита информации в компьютерных системах и сетях /Под ред В.Ф. Шаньгина. - М.: «Радио и связь», 1999. - 328 с.

2. http://www.finam.ru/dictionary/

3. Галатенко В.А. АО "Инфосистемы Джет" http://www.osp.ru/os/

4. http://www.ssga.ru/metodich/

5. Романьков В.А. Введение в криптографию. Методические указания. - Усть-Каменогорск: Изд-во ВКГУ, 2003.



К содержанию номера журнала: Вестник КАСУ №1 - 2009


 © 2024 - Вестник КАСУ