Основными компонентами криптографии являются данные, криптографическое преобразование и ключ:
При зашифровании сообщения криптографическое преобразование использует ключ. Он используется аналогично обычному ключу, которым запирают дверь, и закрывает сообщение от посторонних глаз. Для расшифрования сообщения нужен соответствующий ключ. Важно ограничить доступ к ключам шифрования, так как любой, кто обладает ключом шифрования, может прочитать зашифрованное Вами сообщение.
В СКЗИ "Верба-OW" используется механизм открытого распределения ключей, при котором для формирования ключа связи используется пара ключей: открытый и секретный ключи шифрования.
Алгоритм криптографического преобразования
В СКЗИ "Верба-ОW" используется симметричный алгоритм криптографического преобразования данных, определенный ГОСТ28147-89. Данный алгоритм предназначен для аппаратной и программной реализации и удовлетворяет необходимым криптографическим требованиям. ГОСТ28147-89 предусматривает несколько режимов работы алгоритма криптографического преобразования. В СКЗИ "Верба-ОW" используется алгоритм шифрования, основанный на принципе гаммирования, который подразумевает процесс наложения по определенному закону гаммы шифра на открытые данные (под гаммой понимается псевдослучайная двоичная последовательность, вырабатываемая по заданному алгоритму). ГОСТ 28147-89 также определяет процесс выработки имитовставки. Имитовставка - это последовательность данных фиксированной длины, которая вырабатывается по определенному правилу из открытых данных и ключа шифрования. Выработка имитовставки обеспечивает защиту информации от случайных или преднамеренных искажений в канале связи. Выработка имитовставки обеспечивает защиту от навязывания ложных данных. Вероятность навязывания ложных помех равна 10-9. Имитовставка передается по каналу связи вместе с зашифрованным сообщением. Поступившие зашифрованные данные расшифровываются, и из полученных блоков данных вырабатывается контрольная имитовставка, которая затем сравнивается с имитовставкой, полученной из канала связи. В случае несовпадения имитовставок все расшифрованные данные считаются ложными.
Пара: секретный и открытый ключи
В последнее время широкое распространение получили криптографические системы с открытым распределением ключей. В таких системах каждый пользователь формирует два ключа: открытый и секретный. Секретный ключ шифрования должен храниться в тайне. Открытый ключ шифрования не является секретным и может быть опубликован для использования всеми пользователями системы, которые обмениваются сообщениями. Знание открытого ключа шифрования не дает практической возможности определить секретный ключ.
Общий секретный ключ связи (длиной 256 бит согласно требованиям ГОСТ 28147-89) вырабатывается после того, как абоненты сети обменялись своими открытыми ключами.
СКЗИ "Верба-ОW" является системой с открытым распределением ключей. Каждый пользователь вырабатывает свой секретный ключ, из которого затем с помощью некоторой процедуры формируется открытый ключ. Открытые ключи объединяются в справочник.
В СКЗИ "Верба-ОW" ключ зашифрования совпадает с ключом расшифрования. При зашифровании сообщения i-ым абонентом для j-ого абонента общий секретный ключ связи вырабатывается на основе секретного ключа шифрования i-ого абонента и открытого ключа шифрования j-ого абонента. Соответственно, для расшифрования этого сообщения j-ым абонентом формируется секретный ключ связи на основе секретного ключа шифрования j-ого абонента и открытого ключа шифрования i-ого абонента. Таким образом, для обеспечения связи с другими абонентами каждому пользователю необходимо иметь:
Примем следующее соглашение. Абонента, который зашифровывает сообщение, будем в дальнейшем называть отправителем; абонента, который расшифровывает закрытое сообщение- получателем.
Электронная цифровая подпись
Электронная цифровая подпись- это средство, позволяющее на основе криптографических методов надежно установить авторство и подлинность электронного документа. Электронная цифровая подпись позволяет заменить при безбумажном документообороте традиционные печать и подпись. При построении цифровой подписи вместо обычной связи между печатью или рукописной подписью и листом бумаги выступает сложная математическая зависимость между электронным документом, секретным и общедоступным ключами. Практическая невозможность подделки электронной цифровой подписи опирается на очень большой объем определенных математических вычислений.
Проставление подписи под документом не меняет самого документа, она только дает возможность проверить подлинность и авторство полученной информации.
В СКЗИ "Верба-ОW" реализована система электронной цифровой подписи на базе криптографического алгоритма, соответствующего ГОСТ Р34.10-94. Секретный ключ подписи используется для выработки электронной цифровой подписи. Только сохранение пользователем в тайне своего секретного ключа гарантирует невозможность подделки злоумышленником документа и цифровой подписи от имени заверяющего.
Открытый ключ подписи вычисляется как значение некоторой функции от секретного ключа, но знание открытого ключа не дает возможности определить секретный ключ. Открытый ключ может быть опубликован и используется для проверки подлинности подписанного документа, а также для предупреждения мошенничества со стороны заверяющего в виде отказа его от подписи документа.
При работе с СКЗИ "Верба-ОW" каждый пользователь, обладающий правом подписи, самостоятельно формирует личные секретный и открытый ключи подписи. Открытые ключи подписи всех пользователей объединяются в справочники открытых ключей сети конфиденциальной связи.
Каждому пользователю, обладающему правом подписи, необходимо иметь:
В СКЗИ "Верба-ОW" реализована система электронной цифровой подписи на базе асимметричного криптографического алгоритма согласно ГОСТ Р 34.10-94. Электронная цифровая подпись вырабатывается на основе электронного документа, требующего заверения, и секретного ключа. Согласно стандарту документ "сжимается" с помощью функции хэширования (ГОСТР34.11-94 "ИНФОРМАЦИОННАЯ ТЕХНОЛОГИЯ. КРИПТОГРАФИЧЕСКАЯ ЗАЩИТА ИНФОРМАЦИИ. ФУНКЦИЯ ХЭШИРОВАНИЯ"). Однонаправленная хэш-функция получает на входе исходное сообщение произвольной длины и преобразует его в хэш-значение фиксированной длины (256 бит согласно ГОСТ Р34.11-94). Значение хэш-функции сложным образом зависит от содержания документа, но не позволяет восстановить сам документ. Хэш-функция чувствительна к всевозможным изменениям в тексте. Кроме того, для данной функции нельзя вычислить, какие два исходные сообщения могут генерировать одно и то же хэш-значение, поскольку хэш-значения двух 256-битовых документов могут совпасть в одном из 2256 (1077) случаев. Далее к полученному хэш-значению применяется некоторое математическое преобразование, в результате которого и получается собственно цифровая подпись электронного документа.
При проверке подписи проверяющий должен располагать открытым ключом пользователя, поставившего подпись. Проверяющий должен быть полностью уверен в подлинности открытого ключа (а именно в том, что имеющийся у него открытый ключ соответствует открытому ключу конкретного пользователя). Процедура проверки подписи состоит из вычисления хэш-значения документа и проверки некоторых соотношений, связывающих хэш-значение документа, подпись под этим документом и открытый ключ подписавшего пользователя. Документ считается подлинным, а подпись правильной, если эти соотношения выполняются. В противном случае подпись под документом считается недействительной.
Для разрешения споров между отправителем и получателем информации, связанных с возможностью искажения пересылаемого документа или открытого ключа проверки подписи, достоверная копия этого ключа может выдаваться третьей стороне (арбитру) и применяться им при возникновении конфликта между отправителем и получателем. Наличие у абонента секретного ключа не позволяет ему самому сменить свой номер в сети или выработать подпись под номером другого абонента.
Для контроля целостности и подлинности справочников открытых ключей используется процедура выработки имитовставки, определяемая ГОСТ 28147-89. При проверке подписи проверяющий должен располагать открытым ключом пользователя, поставившего подпись. Проверяющий должен быть полностью уверен в подлинности открытого ключа (а именно в том, что имеющийся у него открытый ключ соответствует открытому ключу конкретного пользователя).