Электронная коммерция

       

Криптография с открытым ключом


Криптография с открытым ключом основана на концеп­ции ключевой пары. Каждая половина пары (один ключ) шифрует информацию таким образом, что ее может рас­шифровать только другая по­ловина (второй ключ) Одна часть ключевой пары — личный ключ известна только ее владельцу. Другая половина — от­крытый ключ распространяется среди всех его корреспон­дентов, но связана только с этим владельцем. Ключевые пары обладают уникальной особенностью. Данные, зашифрованные любым из ключей пары, могут быть расшифрованы только другим ключом из этой пары. Другими сло­вами, нет никакой разницы, личный или открытый ключ ис­пользуется для шифрования послания, получатель сможет применить для расшифровки вторую половину пары.

Ключи можно использо­вать и для обеспечения конфи­денциальности послания, и для аутентификации его автора.  В первом случае для шифрования послания отправитель использует открытый ключ получателя, и таким образом оно останется зашифрованным, пока получатель не расшифрует его лич­ным ключом. Во втором случае, отправитель шифрует посла­ние личным ключом, к которому только он сам имеет доступ.

Например, чтобы отправить конфиденциальное послание, Тим сначала должен узнать открытый ключ Энн.  Затем он использует этот ее

открытый ключ для шифрования послания и отправляет послание. Поскольку оно было зашифровано от­крытым ключом Энн, только тот, кто знает этот личный ключ (предположительно, только сама Энн), сможет его расшифро­вать.

Размещение открытого ключа в  сети  делает  его легко доступным для корреспондентов, и в то же время ни коим образом не угрожает защищенности Вашего личного ключа.

Шифрование посланий открытым ключом принципиально не слишком отличается от симметричного шифрования с использованием секрет­ного ключа, но все же имеет ряд преимуществ. Например, открытая часть ключевой пары может свободно распространяться без опасений, что это по­мешает использовать личный ключ. Не нужно рассылать копию своего открытого ключа всем корреспондентам; они смогут получить его на сервере вашей компании или у Вашего провайдера.


Учтите,

каждый, кто имеет копию Вашего открытого ключа, способен прочитать послание, зашифрованное Вашим личным ключом. В коммерческих транзакциях принята стандартная процедура: покупатель шифрует послания своим личным ключом, а подтверждения продавца, в свою очередь, шифруются его личным ключом. Это означает, что всякий, кто знает открытый ключ продавца сможет это подтверждение прочитать. Для сохранения в тайне информации, посланной продавцом, необходимы дополнительные  шаги.

Другое преимущество криптографии с открытым ключом в  том, что она позволяет аутентифицировать отправителя послания. Поскольку Вы — един­ственный, кто имеет возможность зашифровать какую-либо информацию Вашим личным ключом, всякий, кто использует Ваш открытый ключ для расшифровки послания, может быть уверен, что оно от Вас. Таким образом, шифрование электрон­ного документа Вашим личным ключом схоже с подписью на бумажном документе. Но не забывайте: нет никаких гарантий, что помимо получателя Ваше послание не прочтет кто-то еще.

Использование криптографических алгоритмов с откры­тым ключом для шифрования посланий — это достаточно мед­ленный вычислительный процесс, поэтому специалисты по криптографии придумали способ быстро генерировать корот­кое, уникальное представление Вашего послания, называемое дайджестом

послания. Дайджест можно зашифровать, а затем использовать Вашу цифровую подпись.

(Несмотря на название, дайджест послания не является его кратким изложением).

Существуют популярные, быстрые криптографические алгоритмы для генерации дай­джестов послания — односто­ронние хеш-функции. Одно­сторонняя хеш-функция не ис­пользует ключ. Это обычная формула для преобразования послания любой длины в одну строку символов (дайджест послания). При использовании 16-байтной хеш-функции обработанный ей текст будет иметь на выходе длину 16 байт — например, послание может быть пред­ставлено цепочкой символов CBBV235ndsAG3D67. Каждое по­слание образует свой случайный дайджест. Зашифруйте этот дайджест своим личным ключом, и Вы получите цифровую подпись.



В качестве примера, предположим, что продавец Тим пре­образовал свое послание в дайджест, зашифровал его своим личным ключом, и отправил Энн эту цифровую подпись вмес­те с открытым текстом послания.     После того как Энн использует открытый ключ Тима для расшифровки цифровой подписи, у нее будет копия дайджеста послания Тима. Поскольку она сумела расшифровать цифровую подпись открытым клю­чом Тима, то значит, Тим является ее автором. Затем Энн ис­пользует ту же самую хеш-функцию (о которой оба договори­лись заранее) для подсчета собственного дайджеста для откры­того текста послания Тима Если полученная ей строка совпа­дает с той, что прислал Тим, то она может быть уверена в аутен­тичности цифровой подписи. А это означает не только то, что отправитель послания Тим, но также и то, что послание не было изменено.

При таком подходе единственная проблема в том, что само послание отправляется открытым текстом, и, следовательно, его конфиденциальность не сохраняется. Для шифрования от­крытого текста послания Вы можете дополнительно исполь­зовать симметричный алгоритм с секретным ключом. Но уч­тите, это приведет к дальнейшему усложнению процесса.


Содержание раздела