
- •Методы защиты информации в компьютерных технологиях Москва 2011
- •1. Основные направления криптологии.
- •2. Элементы симметричных криптографических преобразований. История симметричных криптографических преобразований в приложениях.
- •2.2. Табличное шифрование методом перестановки по ключевому слову или фразе, задающими перестановку.
- •2.3. Табличное шифрование методом двойной перестановки.
- •2.5. Шифры сложной замены.
- •3. Методы криптографических преобразований с открытым ключом.
- •3.1. Алгоритм нахождения числа по модулю.
- •3.2. Вычисление обратных величин в модулярной алгебре.
- •3.3. Алгоритм операции возведения числа в степень по модулю.
- •3.4. Определение односторонней функции.
- •4. Алгоритмы формирования и функционирования криптографических систем с открытым ключом.
- •4.1. Алгоритм криптографической системы rsa (Райвест-Шамир-Адлеман).
- •4.2. Алгоритм криптографической системы на основе вычисления дискретных логарифмов в конечном поле – алгоритм Эль Гамаля.
- •4.3. Алгоритм функционирования криптографической системы на основе дискретного логарифмирования в метрике эллиптических кривых.
- •4.3.1. Основные операции криптографических преобразований в метрике эллиптических кривых.
- •4.3.2. Преобразование Диффи-Хеллмана в системах криптографии с открытым ключом.
- •XcxпШифратор
- •4.4. Формирование криптограмм открытых сообщений и их дешифрование с использованием методов дискретного логарифмирования в метрике эллиптических кривых.
- •4.4.1. Вычисление парного сеансового ключа шифрования-дешифрования для абонентов а и в на основе преобразований Диффи-Хеллмана.
- •4.4.3. Дешифрование абонентом а криптограммы, полученной от абонента в с использованием парного секретного симметричного ключа, сформированного по методу Диффи-Хеллмана в метрике эллиптических кривых.
- •5. Алгоритмы электронной цифровой подписи.
- •5.1. Алгоритм электронной цифровой подписи rsa (Райвест-Шамир-Адлеман).
- •5.2. Алгоритм электронной цифровой подписи Эль Гамаля (egsa). Egsa (el Gamal Signature Algorithm).
- •5. 3. Алгоритм электронной цифровой подписи dsa (Digital Signature Algorithm).
- •5.4. Алгоритм электронной цифровой подписи гост р34.10-94. (Отечественный стандарт электронной цифровой подписи).
- •5.5. Алгоритм электронной цифровой подписи гост р34.10-2001. (Отечественный стандарт электронной цифровой подписи).
5. Алгоритмы электронной цифровой подписи.
Введение.
Построение криптографических систем с открытым ключом создало грандиозные предпосылки для формирования и научно-практического применения нового направления в компьютерных технологиях – создание электронного юридически значимого электронного документа. В Федерально Законе №1 от 10 января 2002 года утверждается, что целью настоящего Федерального Закона является обеспечение правовых условий для использования электронной цифровой подписи в электронных документах, при соблюдении которых электронная цифровая подпись в электронном документе признается равнозначной собственноручной подписи человека (гражданина или юридического лица) в документе на бумажном носителе. Практически все ведущие страны мира приняли у себя соответствующие законодательства. В июне месяце 1999 года Европейским Союзом принята директива «Об условиях использования электронных подписей»
На современном этапе развития общества и общественных отношений в Российской Федерации и зарубежных странах в процессы повседневной жизни внедряются информационно-телекоммуникационные технологии и системы. В этих условиях использование корпоративных, региональных и глобальных телекоммуникационных систем для обеспечения эффективной деятельности системы государственного управления и деловой жизни общества приобретает первостепенное значение.
Целью аутентификации электронных сообщений является их защита от возможных несанкционированных и злоумышленных действий:
- активный перехват: изменение электронных документов, передаваемых в компьютерных сетевых системах;
- маскарад: посыл электронного сообщения от другого лица под видом зарегистрированного абонента;
- ренегатство: отказ от отправленного электронного сообщения;
При обработке документов в электронной форме совершенно неприемлемы традиционные способы установления их подлинности, принципиально новым решением является электронная цифровая подпись. Система электронной цифровой подписи включает две глобальные процедуры:
- процедура постановки ЭЦП;
- процедура проверки ЭЦП.
В процессе постановки подписи используется секретный ключ КЗ отправителя электронного сообщения, а в процедуре проверки подписи используется открытый ключ КО отправителя электронного сообщения.
Структурная схема процесса формирования и функционирования электронной цифровой подписи представлена ни рис.8.
Сообщение
Мррр
Блок
хеширования
Шифратор
рррКО
КЗ
Дешифратор
Сообщение
«М»
Блок
хэширования сообщений
Шифратор
хэш-функции
КО
КЗ
Блок
хэширования сообщений
хэширования
Дешифратор
криптограммы Ch(M)
Блок
хэширования сообщений
Ch(M)
h(M)D
h(M)D
h(M)B
Сообщение Сообщение
модифицировано достоверно
h(M) B
Рис. 8 . Структурная схема процесса аутентификации электронного сообщения.
Где:
М – открытое сообщение;
h(M) – хэш-функция (функция свертки; дайджест сообщения) передаваемого открытого сообщения «М»;
Ch(M) – криптограмма хэш-функции открытого сообщения « М»;
КЗ – закрытый ключ абонента-отправителя электронного документа;
КО – открытый ключ абонента-отправителя электронного документа;
h(M)В – хэш-функция вычисленная из принятого сообщения «М»;
h(M)D – хэш-функция дешифрованная из принятой криптограммы Ch(M).
Допустим, абонент-отправитель электронного сообщения «А» формирует на своем компьютере сообщение «М» и подписывает его своей ЭЦП, а абонент «В» получает подписанное сообщение «М» и на основе ЭЦП проводит его аутентификацию.
В этом случае под сообщением «М» понимается любой стандарт файла сообщения, это может быть текстовое сообщение, графический материал, фотографии, рисунки, видеофильмы и т.д.
Действие абонента-отправителя «А» электронного сообщения «М».
Абонент-отправитель аутентифицированного сообщения «М» после его формирования реализует операцию хеширования, т.е. сообщение «М» подается на блок вычисления хеш-функции. Эта операция получила также название как операция вычисления функции свертки или операция формирования дайджест-сообщения.
Основное назначение хеш-функции состоит в формировании однозначного отображения образа исходного сообщения в виде короткого блока информации. В соответствии с ГОСТ Р34.11-94 длина блока отображения образа исходного сообщения составляет 256 бит и не зависит от размера исходного текста. На вход блока хеширования поступает сообщение «М» произвольного размера, а на его выходе формируется отображение его образа фиксированного размера h(M) → 256 бит.
В свою очередь на хеш-функцию накладывается ряд ограничений, которые позволяют реализовать операцию однозначного отображения, т.е. формирование образа исходного сообщения «М» в виде одного короткого блока данных. Эти ограничения интерпретируются следующим образом:
1. Требование чувствительности хэш-функции h(M) к любым изменениям образа исходного сообщения «М». В этом случае функция преобразования образа исходного сообщения «М» в его отображение h(M) гарантированно исключает возможности изменения содержания исходного сообщения, перестановку, исключение или замену его отдельных символов или элементов, т.е. любые изменения образа исходного сообщения вносят изменения в его отображение М → h(M) – однозначно.
2.
Требование необратимости процесса
хеширования. Если отображение исходного
документа в виде результата функции
хеширования формируется на основе его
образа, то по полученному в результате
хеширования отображению образ исходного
сообщения не может быть восстановлен
ни при каких-либо условиях. Если М →
h(M),
то h(M)
→
.
3.
Требование однозначности установления
соответствия между образом исходного
сообщения и его отображением. Это
требование определяет условие
невозможности подбора или формирования
двух разных сообщений, которые имели
бы одно и то же отображение, т.е. один и
тот же результат хеширования {M1;
M2}
→
.
В настоящее время для реализации процессов аутентификации электронных сообщений с использованием электронных цифровых подписей в мировой практике предложены алгоритмы хеширования, такие как MD5; SHA-1, SHA- 256, SHA- 384, SHA- 512 (Secure Hash Algorithm), разработан Управлением национальной безопасности США; RIPEMID и ряд других.
В Российской Федерации алгоритм хеширования реализован в соответствии с ГОСТ Р34.11-94, который основан на блоковом шифре в соответствии со стандартом шифрования ГОСТ 28147-89. В результате преобразования электронного сообщения любого размера на выходе блока хеширования по ГОСТ Р34.11-94 формируется сообщение фиксированного размера равного 256 бит, однако восстановить исходное сообщение из значения хеш-функции невозможно, т.е. операция хеширования относится к классу однонаправленных функций.
После реализации операции вычисления значения хеш-функции h(M)B сообщения «М» абонент-отправитель (в данном случае абонент «А») на своем компьютере формирует случайным образом закрытый (секретный) ключ КЗА и вычисляет открытый ключ КОА. Закрытый ключ КЗА служит для формирования электронной цифровой подписи, а открытый ключ КОА для проверки аутентичности подписанного сообщения всеми абонентами корпоративной системы электронного документооборота.
Кодовая комбинация хеш-функции h(M)B подается на блок шифрования и с помощью закрытого (секретного) ключа КЗА абонента- отправителя производится шифрование кодовой комбинации хеш-функции h(M)B В результате шифрования значения хеш-функции h(M)B с помощью закрытого ключа КЗА на выходе блока шифрования формируется криптограмма хеш-функции исходного сообщения «М». Эта криптограмма Ch(M) и является электронной цифровой подписью открытого сообщения «М».
Криптограмма электронной цифровой подписи Ch(M), открытый ключ абонента-отправителя подписанного сообщения КОА и непосредственно исходное сообщение «М» единым файлом передаются по открытым телекоммуникационным каналам абоненту–получателю (абонентам-получателям) электронного сообщения корпоративной информационной системы.
Действия абонента «В» по приему и аутентификации подписанного электронного сообщения «М».
По каналу теледоступа абонент «В» получает:
- криптограмму значения хеш-функции Ch(M) – электронную цифровую подпись сообщения «М»;
- открытый ключ КОА абонента-отправителя подписанного сообщения (абонента «А»);
- исходное сообщение «М».
Криптограмма Ch(M) подается на вход дешифратора приемного устройства, на другой вход которого (вход ввода ключевой информации) подается открытый ключ абонента-отправителя КОА подписанного электронного сообщения. С помощью открытого ключа КОА, принятого по телекоммуникационным каналам связи, производится дешифрование криптограммы электронной цифровой подписи принятого сообщения Ch(M). В результате дешифрования на выходе дешифратора формируется восстановленное значение хеш-функции ЭЦП - h(M)D . Дешифрованная кодовая комбинация значения хеш-функции h(M)D далее поступает на блок анализа системы аутентификации электронного сообщения. Полученное в результате дешифрования криптограммы Ch(M) значение хеш-функции h(M)D абсолютно идентично кодовой комбинации хеш-функции h(M)B, сформированной по сообщению «М» на стороне абонента-отправителя (абонента «А»). Со стороны неавторизованного пользователя модификация принимаемой кодовой комбинации хэш-функции исключена, т.к. шифрование хэш-значения сообщения «М» производится на стороне абонента «А» на основе его закрытого (секретного) ключа КЗА, который никогда никому не передается и хранится в секрете у абонента-отправителя. В процессе восстановления значения хэш-функции h(M)D из принимаемой криптограммы Ch(M) закрытый ключ КЗА не участвует, что исключает возможность модификации сформированного значения хэш-функции исходного сообщения в передаваемой криптограмме Ch(M) по открытым каналам телекоммуникаций.
В свою очередь, открытое сообщение «М», принятое вместе с криптограммой хэш-функции Ch(M) и открытым ключом абонента-отправителя КОА, поступает на блок хеширования абонента-получателя (абонента «В»).
Функциональное назначение блока хеширования на стороне абонента-получателя идентично блоку хеширования стороны абонента-отправителя и строится в полном соответствии с ГОСТ Р34.11-94. Следовательно, если сообщение «М» в процессе передачи по телекоммуникационным каналам не было модифицировано случайно или преднамеренно, то на выходе блока хеширования абонента-получателя формируется значение хэш-функции абсолютно равное хэш-значению, вычисленному на стороне абонента-отправителя исходного сообщения. Это вычисленное значение хэш-функции h(M)B из принятого сообщения «М» на стороне абонента-получателя также поступает на блок анализа.
Функционально блок анализа реализует операцию сравнения двух кодовых комбинаций значений хэш-функций, поступающих на его входы. Проводится сравнение значения хэш-функции, полученной в результате дешифрования криптограммы Ch(M), и значения хэш-функции вычисленного из принятого по телекоммуникационным каналам исходного сообщения «М». В случае полного совпадения с точностью до 1 бита этих значений принимается решение о достоверности принятого сообщения, в случае несовпадения исходное сообщение признается недостоверным (модифицированным).