Электронная цифровая подпись и ее использование в инф-х процессах
Особенности алгоритма RSA
RSA отн-ся к асим-м алгоритмам, у которых ключ шифр-я не совп-т с ключом дешифровки. 1 из ключей доступен всем и называется открытым ключом, другой хранится только у его хозяина и неизвестен никому другому. С пом-ю 1го ключа можно производить операции только в одну сторону. Если сообщение зашифровано с помощью одного ключа, то расшифровать его можно только с помощью другого. Имея один из ключей невозможно (очень сложно) найти другой ключ, если разрядность ключа высока.
Алгоритм RSA состоит из следующих пунктов:
§ Выбрать простые числа p и q
§ Вычислить n = p * q
§ Вычислить m = (p - 1) * (q - 1)
§ Выбрать число d взаимно простое с m
§ Выбрать число e так, чтобы e * d = 1 (mod m)
Hазовем открытым ключем числа e и n, а секретным - d и n.
Числа e и d являются ключами. Шифруемые данные необходимо разбить на блоки - числа от 0 до n - 1. Шифр-е и дешифровка данных произв-ся след. Обр.:
Шифрование: b = ae (mod n)
Дешифровка: a = bd (mod n)
Следует также отметить, что ключи e и d равноправны, т.е. сообщение можно шифровать как ключом e, так и ключом d, при этом расшифровка должна быть произведена с помощью другого ключа.
Зашифруем и расшифруем сообщение "САВ" по алгоритму RSA.
Выберем p=3 and q=11.
Определим n= 3*11=33.
Hайдем (p-1)*(q-1)=20. Следовательно, d будет равно, например, 3: (d=3).
Выб-м число е по след-й формуле: (e*3) mod 20=1. Значит е будет равно, например, 7: (e=7).
Представим шифруемое сообщение как последовательность чисел в диапозоне от 0 до 32 (незабывайте, что кончается на n-1). Буква А =1, В=2, С=3.
Теперь зашифруем сообщение, используя открытый ключ {7,33}
C1 = (3^7) mod 33 = 2187 mod 33 = 9;
C2 = (1^7) mod 33 = 1 mod 33 = 1;
C3 = (2^7) mod 33 = 128 mod 33 = 29;
Теперь расшифруем данные, используя закрытый ключ {3,33}.
M1=(9^3) mod 33 =729 mod 33 = 3(С);
M2=(1^3) mod 33 =1 mod 33 = 1(А);
M3=(29^3) mod 33 = 24389 mod 33 = 2(В);
На 2009 г. система шифр-я на основе RSA считается надёжной, начиная с размера в 1024 бита. Группе учёных удалось успешно вычислить данные, зашифр-е при помощи криптогр-го ключа стандарта RSA длиной 768 бит. Причём от шифря ключом длиной в 1024 бит стоит отказаться в ближайшие три-четыре года.
На случ-е простые числа p и q наклад-ся след-е дополнительные ограничения:
Они не д.б. слишком близки друг к другу, иначе можно будет их найти.
В конце обыч-го письма или док-та исп-ль или ответст-е лицо обычно ставит свою подпись. Подобное действие пресл-т 2 цели. Во-первых, пол-ль имеет возм-сть убедиться в истин-сти письма, сличив подпись с им-мся у него образцом. Во-вторых, личная подпись явл-ся юр-м гарантом авторства док-нта. Последний аспект особенно важен при заключ-и разного рода торг-х сделок, сост-нии довер-стей, обяз-ств и т.д. Если подделать подпись ч-ка на бумаге весьма непросто, то с подписью электронной дело обстоит иначе. Подделать цепочку битов, просто ее скопировав, или незаметно внести нелегал-е исправл-я в док-нт сможет любой польз-ль. С широким распр-м в совр-м мире электронных форм док-нтов (в том числе и конфиденц-х) и ср-в их обработки особо актуальной стала проблема уст-ния подлинности и авторства безбум-й док-ции.
ЭЦП (Е) – бинарная пос-сть, кот-я добавляется к подписываемому док-нту М (так же предст-му в двоичной форме) и зависящая от М и от ключа К.
Е различна при неизменном К, но разных М.
Е предназначена для аутентифик-и лица, подпис-го электронный документ. Кроме этого, использование цифровой подписи позволяет осуществить:
§ Контроль целост-сти передаваемого док-нта: при любом случайном или преднам-м изменении док-нта подпись станет недейств-й, потому что вычислена она на основании исх-го состояния документа и соответствует лишь ему.
§ Защиту от измен-й (подделки) док-нта: гарантия выявл-я подделки при контроле целостности делает поддел-е нецелесообразным в большинстве случаев.
§ Невозможность отказа от авторства. Т.к. создать корректную подпись можно, лишь зная закрытый ключ, а он должен быть известен только владельцу, то владелец не может отказаться от своей подписи под документом.
§ Доказательное подтверждение авторства документа: Владелец пары ключей может доказать своё авторство подписи под документом. В зав-сти от деталей опр-я документа м.б. подписаны такие поля, как «автор», «внесённые изменения», «метка времени» и т. д.
Все эти свойства ЭЦП позволяют исп-ть её для следующих целей: Декларирование товаров и услуг (таможенные декларации), Регистрация сделок по объектам недвижимости, Исп-е в банковских системах, Электронная торговля и госзаказы, Контроль исполнения гос-го бюджета, В системах обращения к органам власти, Для обязательной отчетности перед гос-ми учреждениями, Организация юридически значимого электронного документооборота.
Сущ-т несколько схем построения цифровой подписи:
§ На основе алгоритмов сим-го шифр-я. Данная схема предусм-т наличие в системе третьего лица - арбитра, пользующегося доверием обеих сторон. Авторизацией док-нта является сам факт зашифр-я его секретным ключом и передача его арбитру.
§ На основе алгоритмов асимметричного шифрования. На данный момент такие схемы ЭЦП наиболее распространены и находят широкое применение.
Кроме этого, существуют другие разновидности цифровых подписей (групповая подпись, неоспоримая подпись, доверенная подпись), которые являются модификациями описанных выше схем. Их появление обусловлено разнообразием задач, решаемых с помощью ЭЦП.
Поскольку подпис-е док-нты – перем-го (и как правило достаточно большого) объёма, в схемах ЭЦП зачастую подпись ставится не на сам док-нт, а на его хэш. Для вычисл-я хэша исп-ся криптогр-е хэш-функции, что гарантирует выявление измен-й документа при проверке подписи. Хэш-функции не явл-ся частью алгоритма ЭЦП, поэтому в схеме м.б. исп-на любая надёжная хэш-функция.
Использование хэш-функций даёт следующие преимущества:
§ Вычисл-я сложность. Обычно хеш цифр-го документа делается во много раз меньшего объёма, чем объём исх-го документа, и алг-мы вычисления хеша явл-ся более быстрыми, чем алгоритмы ЭЦП. Поэтому формировать хэш документ и подписывать его получается намного быстрее, чем подписывать сам документ.
§ Совместимость. Бол-во алгоритмов оперирует со строками бит данных, но некоторые используют другие представления. Хеш-функцию можно использовать для преобразования произвольного входного текста в подходящий формат.
§ Целостность. Без исп-я хеш-функции бол-й электронный док-нт в нек-х схемах нужно разделять на дост-но малые блоки для прим-я ЭЦП. При верифик-и невозможно определить, все ли блоки получены и в правильном ли они порядке.
В бол-ве ранних систем ЭЦП исп-сь функции с секретом, которые по своему назнач-ю близки к односторонним функциям. Такие системы уязвимы к атакам с исп-м открытого ключа, так как, выбрав произв-ю цифровую подпись и применив к ней алгоритм верификации, можно получить исходный текст. Чтобы избежать этого, вместе с цифровой подписью используется хеш-функция, то есть, вычисление подписи осущ-ся не относительно самого документа, а относ-но его хеша. В этом случае в результате верификации можно получить только хеш исходного текста, следовательно, если используемая хеш-функция криптографически стойкая, то получить исходный текст будет вычислительно сложно, а значит атака такого типа становится невозможной.