Для решения задач распределения ключей и ЭП были использованы идеи асимметричности преобразований и открытого распределения ключей Диффи и Хеллмана. В результате была создана криптография с открытыми ключами, в которой используется не один секретный, а пара ключей: открытый (публичный) ключ и секретный (личный, индивидуальный) ключ, известный только одной взаимодействующей стороне. В отличие от секретного ключа, который должен сохраняться в тайне, открытый ключ может распространяться публично. На Рис. 1.7.5 представлены два свойства систем с открытыми ключами, позволяющие формировать зашифрованные и аутентифицированные сообщения.
Схема шифрования данных с использованием открытого ключа приведена на Рис. 1.7.6 и состоит из двух этапов. На первом из них производится обмен по несекретному каналу открытыми ключами. При этом необходимо обеспечить подлинность передачи ключевой информации. На втором этапе, собственно, реализуется шифрование сообщений, при котором отправитель зашифровывает сообщение открытым ключом получателя. Зашифрованный файл может быть прочитан только владельцем секретного ключа, т.е. получателем. Схема расшифрования, реализуемая получателем сообщения, использует для этого секретный ключ получателя.
Схема шифрования в криптографии с открытыми ключами
Реализация схемы ЭП связанна с вычислением хэш-функции (дайджеста) данных, которая представляет собой уникальное число, полученное из исходных данных путём его сжатия (свёртки) с помощью сложного, но известного алгоритма. Хэш-функция является однонаправленной функцией, т.е. по хэш-значению невозможно восстановить исходные данные. Хэш-функция чувствительна к всевозможным искажениям данных. Кроме того, очень трудно отыскать два набора данных, обладающих одним и тем же значением хэш-функции.
Схема формирования подписи электронного документа (ЭД) его отправителем включает вычисление хэш-функции ЭД и зашифрование этого значения посредством секретного ключа отравителя. Результатом шифрования является значение ЭП ЭД (реквизит ЭД), которое пересылается вместе с самим ЭД получателю. При этом получателю сообщения должен быть предварительно передан открытый ключ отправителя сообщения
Схема ЭП в криптографии с открытыми ключами
Схема проверки (верификации) ЭП, осуществляемая получателем сообщения, состоит из следующих этапов. На первом из них производится расшифрование блока ЭП посредством открытого ключа отправителя. Затем вычисляется хэш-функция ЭД. Результат вычисления сравнивается с результатом расшифрования блока ЭП. В случае совпадения, принимается решение о соответствии ЭП ЭД. Несовпадение результата расшифрования с результатом вычисления хэш-функции ЭД может объясняться следующими причинами:
o в процессе передачи по каналу связи была потеряна целостность ЭД;
o при формировании ЭП был использован не тот (поддельный) секретный ключ;
o при проверке ЭП был использован не тот открытый ключ (в процессе передачи по каналу связи или при дальнейшем его хранении открытый ключ был модифицирован или подменен).
Реализация криптографических алгоритмов с открытыми ключами требует сравнительно (с симметричными алгоритмами) больших затрат процессорного времени. Поэтому криптография с открытыми ключами обычно используется для решения задач распределения ключей и ЭП, а симметричная криптография для шифрования.
Широко известна схема комбинированного шифрования, сочетающая высокую безопасность криптосистем с открытым ключом с преимуществами высокой скорости работы симметричных криптосистем. В этой схеме для шифрования используется случайно вырабатываемый симметричный (сеансовый) ключ, который, в свою очередь, зашифровывается посредством открытой криптосистемы для его секретной передачи по каналу в начале сеанса связи (см. Рис. 1.7.8).