Зашифрованные сообщения

03.05.2018


На основе незашифрованного сообщения, которое отправитель собирается отсылать, генерируется дайджест. Затем отправитель зашифровывает дайджест при помощи своего закрытого ключа. Зашифрованный дайджест и есть цифровая подпись. Цифровая подпись основывается на сообщении и закрытом ключе отправителя. Таким образом, различные сообщения одного отправителя имеют разные цифровые подписи и одинаковые сообщения разных отправителей также имеют разные цифровые подписи.


Затем зашифрованное сообщение и подпись передаются получателю. Тот сначала расшифровывает открытым ключом отправителя сообщение и на его основе сам генерирует дайджест. Дайджест, как мы помним, зависит только от сообщения, поэтому у отправителя и получателя дайджесты будут одинаковыми. После этого получатель открытым ключом отправителя расшифровывает его подпись. Расшифрованная подпись является дайджестом, поэтому получателю остается лишь сравнить дайджест, полученный из сообщения, и дайджест, полученный из подписи. Если они не совпадают, то либо сообщение, либо подпись, а возможно, и то и другое в процессе пересылки было перехвачено и подделано. Следовательно, доверять полученной информации нельзя. А если дайджесты совпали, то можно с уверенностью заявлять, что отправителем является хозяин пары закрытый/открытый ключ, и сообщение в пути следования не было перехвачено и изменено. Подделать цифровую подпись без закрытого ключа невозможно, и отправитель впоследствии не сможет отрицать факт отправки сообщения. У вас гепатит С? Закажите полный курс лечения тут. Эффективность будет видна через несколько дней после начала приема.


Помимо перечисленных механизмов, PGP также позволяет контролировать возможную подмену открытых ключей. Рассмотрим простую ситуацию. Вы находите на одном из форумов наш открытый ключ. Пишете нам сообщение, использовав найденный открытый ключ, и отсылаете нам сообщение. Но оказывается, этот открытый ключ был написан злоумышленником, который имеет возможность перехватывать сообщения. Более того, это не наш открытый ключ, а открытый ключ злоумышленника. Таким образом, он получит возможность читать сообщения, которые вы отсылаете нам, используя фальшивый открытый ключ. Что же делать? Скрывать свои открытые ключи? Наоборот, каждый пользователь системы PGP должен стремиться как можно шире распространить свой открытый ключ. Вот только остальные пользователи должны быть уверены, что этот ключ действительно принадлежит этому пользователю. Но как? Мы ведь уже знаем, что у нас нет абсолютно надежного канала, иначе не было бы нужды использовать криптографию.