
- •Методы защиты от несанкционированного доступа
- •Основные понятия и методы шифрования
- •Симметричные и асимметричные криптографические системы
- •Криптографические системы с открытым ключом
- •Электронная цифровая подпись, её свойства
- •Метод формирования цифровой подписи rsa
- •Стандарт цифровой подписи Российской Федерации
- •Организационно-технические аспекты применения цифровой подписи
Симметричные и асимметричные криптографические системы
Выделяют два класса криптосистем:
-
симметричные (одноключевые) криптосистемы;
-
асимметричные (двухключевые) криптосистемы.
То обстоятельство, что в последних для шифрования и расшифровывания используются разные ключи (т.е. как бы имеет место асимметрия) и послужило основанием назвать их асимметричными.
Обобщённая схема симметричной криптографической системы, в которой получатель и отправитель пользуются одним и тем же секретным криптографическим ключом «К» показана на рисунке. Ключ применяется одновременно для шифрования и расшифровывания.
Отправитель
имеет открытый текст исходного сообщения
М, которое должно быть передано законному
получателю по незащищённому каналу.
Однако ключ К должен передаваться,
разумеется, по защищённому каналу. За
каналом следит перехватчик с целью
перехватить и раскрыть передаваемое
сообщение. Чтобы перехватчик не смог
узнать содержание сообщения М, отправитель
шифрует его с помощью обратимого
преобразования
и получает зашифрованный текст
(криптограмму)
,
который отправляет получателю.
Законный
получатель, приняв зашифрованный текст
,
расшифровывает его с помощью обратного
преобразования
и получает исходное сообщение М:
.
Преобразование
выбирается из семейства криптографических
преобразований, называемых криптоалгоритмами.
Асимметричная криптосистема работает в целом аналогично, с той разницей, что для шифрования и расшифровки сообщений используются разные ключи.
Одна из основных проблем при создании и использовании криптосистем – передача ключа пользователям системы. В симметричной криптосистеме это делается специальным центром изготовления и рассылки ключей. Здесь существует следующая проблема. Если, например, 100 пользователей будут обмениваться информацией по принципу «каждый с каждым», то потенциально возможных связей между ними будет (100 х 99)/2 = 4950, т.е. потребуется 4950 разных ключей. Тогда для обеспечения независимого обмена информацией между каждой парой пользователей нужно изготовить и разослать 100 комплектов по 99 ключей в каждом, сформированных надлежащим образом. Если ключи сменяются хотя бы 1 раз в месяц, то в течение года необходимо изготовить 59400 исходных ключей, и разослать их всем пользователям системы. И всё это для сети, состоящей только из 100 пользователей.
Эта проблема традиционных систем обмена шифрованной информацией была выявлена уже при первых попытках использования шифрования для обеспечения защищённого документооборота.
Криптографические системы с открытым ключом
Недостатки традиционных систем криптографической защиты, связанные с необходимостью содержать специальную службу изготовления секретных ключей и снабжения ими пользователей послужили побудительным мотивом для создания принципиально иной системы шифрования. Данная система связана с формированием парой пользователей А и В общего секретного ключа К для шифрования/расшифровывания на основе открытых ключей, которыми предварительно обмениваются пользователи.
Упрощённо процесс формирования общего секретного ключа можно представить из следующих операций:
-
Пользователи А и В предварительно договариваются о некоторых целых числах а и Р. Они могут быть не секретными.
-
Пользователи А и В независимо друг от друга определяют для себя секретные ключи х и у соответственно.
-
Пользователь А вычисляет открытый ключ
, а пользователь В – открытый ключ
. Затем пользователи обмениваются ключами
,
. Такой обмен может происходить по открытым каналам связи (операция
означает остаток от деления)
-
Пользователь А вычисляет ключ
, который будет далее применяться для шифрования/расшифровывания, по формуле
-
Пользователь В вычисляет ключ
, который будет далее применяться для шифрования/расшифровывания, по формуле
-
В результате выполнения операций 4 и 5 получаем общий ключ
, так как
Главным признаком,
принципиально отличающим данную схему
получения пользователями общего
секретного ключа от традиционной,
является то, что секретный ключ не
передаётся по каналам связи. Обмен
производится только открытыми ключами
и
,
которые могут передаваться по любому
доступному, в том числе незащищённому,
каналу связи. При этом есть гарантия,
что по перехваченным в канале открытым
ключам
и
практически невозможно получить общий
ключ К, не зная хотя бы один из исходных
секретных ключей х или у. Такой гарантией
служит сложность математической
проблемы, которую приходится решать в
ходе вычисления К по
и
при заранее не известных х и у. Известно,
что если значения х и у по 512 бит каждое
и выбираются случайным образом, то для
вычисления К по
и
с целыми а и Р (также по 512 бит каждое)
противнику необходимо проделать работу
не менее чем из 1024 операций. Таким
образом, вычисление общего секретного
ключа К только по открытым ключам
является практически неразрешимой
задачей и пользователи могут без страха
применять ключ К для криптографической
защиты информации.
Изложенный принцип и носит название «открытое шифрование».
Системы шифрования с единым секретным ключом (т.е. симметричные криптосистемы) при одной и той же криптостойкости обладают более высоким быстродействием, чем асимметричные системы. Это является следствием того, что при одинаковой криптостойкости последние имеют в несколько раз большую длину ключа. А чем длиннее ключ, тем дольше идёт шифрование и расшифровка.
Идея систем с открытым ключом позволяет защитить одно из уязвимых мест ЭВМ – таблицу паролей. В ней собраны все пароли и лицо, получившее к ним доступ, может выдать себя за любого из пользователей. Чтобы защититься от этого, владелец пароля передаёт в таблицу не сам пароль, а его зашифрованный своим секретным ключом образ. Зная образ, чрезвычайно сложно определить сам пароль. Это значительно снижает ценность таблицы образов паролей для противника.