PGP: Кодирование и шифрование информации с открытым ключом
Шрифт:
Одно замечание, касающееся выражений. Их синтаксис не совпадает с использованием "козырных" символов ("*" и "?") в оболочках Unix и MS DOS. "*" означает не "что угодно", а "ноль или более вхождений предшествующего символа или метасимвола":
а.* — все, что начинается с "а"
ab*с — ас, аbс, аbbс и т.д.
Поэтому не используйте "MGET.*" — используйте вместо этого "GET".
3. Ограничения на количество возвращаемых ключей.
Некоторые серверы налагают ограничение на количество возвращаемых в ответ на запросы "MGET" и "LAST" ключей, чтобы не завалить вас слишком большим их количеством в
Пользователи должны использовать адрес или pgp-public-keys@keys.pgp.net или адрес своего национального сервера:
• pgp-public-keys@keys.uk.pgp.net
• pgp-public-keys@keys.de.pgp.net
• pgp-public-keys@keys.no.pgp.net
• pgp-public-keys@keys.us.pgp.net
• pgp-public-keys@keys.nl.pgp.net
• pgp-public-keys@keys.fi.pgp.net
• pgp-public-keys@keys.es.pgp.net
• pgp-public-keys@keys.pt.pgp.net
• pgp-public-keys@keys.hr.pgp.net для обращений по почте и
• ftp.pgp.net:pub/pgp/ для обращений по FTP.
Пользователям рекомендуется использовать перечисленные выше адреса "*.pgp.net", поскольку предполагается, что они устойчивы и надежны.
Использование PGP в Unix.
PGP является средством, созданным для обеспечения защиты и аутентификации информации в таких ненадежных коммуникационных сетях, как Internet. Защита гарантирует, что только получатель информации может воспользоваться ей. Оказавшись в чужих руках, она будет совершенно бесполезной, поскольку ее нельзя будет декодировать.
Аутентификация гарантирует, что если некоторая информация была создана лицом "А", то она действительно поступила от "А" и не была никем сфальсифицирована или изменена в пути.
PGP основана на криптографической системе, известной как открытый ключ, которая может быть использована на ненадежных каналах. Это делает ее идеальной для обеспечения защиты информации, передаваемой по таким сетям, как Internet.
Для того, чтобы интересоваться защитой передаваемых вами данных и, следовательно, нуждаться в средстве криптографии, вовсе не обязательно участвовать в крутом промышленном шпионаже :) Нечто совсем простое, например E-mail, может быть самой настоящей причиной начать использовать PGP. Давайте разберемся почему:
Можно сравнить E-mail с почтовыми карточками. Любой, кому она попадет в руки, может прочитать ее, потому что нет физических преград, которые смогут помешать этому. С другой стороны, письмо в конверте более защищено. Можно держать конверт в руках, но нельзя прочитать письма. Если кто-то захочет прочитать его, ему придется порвать конверт.
Можно провести аналогию конверта с PGP, которое действует как дополнение к нашей E-mail. PGP не позволяет никому прочитать сообщение, это может сделать только тот, кому оно предназначено; это одно из многих преимуществ PGP.
Как работает криптография открытого ключа.
В системах с открытым ключом каждый человек имеет два ключа, взаимно дополняющих друг друга; один является открытым ключом, а другой закрытым.
Открытый ключ может и должен быть свободно доступным, так как он является именно тем ключом, который остальной мир использует для передачи вам информации. Однако открытый ключ
Рассмотрим это на примере двух друзей, Хуана и Педро. Хуан может безопасно послать информацию Педро, если он знает его открытый ключ. С другой стороны, Педро, используя свой закрытый ключ, способен декодировать сообщение, которое послал Хуан. Предположим, что есть еще один человек, Маркое, который перехватывает сообщение, которое Хуан послал Педро. Маркое не может ничего сделать с сообщением, поскольку у него нет закрытого ключа Педро. Даже сам Хуан, отправитель и создатель сообщения, не может декодировать его, это может сделать только Педро, при помощи закрытого ключа.
Безопасность системы основана на надежном хранении каждым пользователем своих закрытых ключей, даже в тех случаях, когда открытый ключ широко известен. Если кто-то попытается сломать систему, не зная закрытого ключа получателя, ему потребуется так много лет, что в конце концов информация окажется бесполезной.
Как было сказано во вступлении, помимо защиты, PGP дает возможность аутентифицировать информацию. Рассмотрим почему:
Наш открытый ключ служит не только для кодирования сообщений, но и для "подписи" посылаемой информации; полная аналогия с подписями, которые часто ставят на бумажных документах.
Подписанный цифровым образом без закрытого ключа документ может быть аутентифицирован любым человеком, обладающим открытым ключом. Такая аутентификация предоставляет средства, позволяющие проверить, действительно ли сообщение поступило от человека, указанного в качестве отправителя, и что оно не было изменено или фальсифицировано.
Для обеспечения защиты и аутентификации могут использоваться оба процесса, как кодирование, так и подпись. Сначала документ подписывается нашим закрытым ключом и затем кодируется с помощью открытого ключа получателя.
По получении сообщения получатель выполняет шаги в обратном порядке, сначала декодируя документ своим закрытым ключом и потом проверяя нашу подпись нашим открытым ключом.
Все эти процессы могут быть автоматизированы, это мы покажем позднее.
Открытый ключ хранится в так называемом сертификате ключа, который является самим открытым ключом вместе с именем владельца и датой его создания.
Закрытый ключ защищен паролем, который предотвращает его несанкционированное использование.
Оба ключа хранятся в файле, известном как кольцо ключей, в котором также хранятся различные сертификаты ключей. Обычно есть кольцо для открытых ключей и кольцо для закрытых.
Ключи имеют внутренний идентификатор ключа, который состоит из 64 последних бит ключа. При отображении информации о ключе на самом деле показываются последние 32 бита ключа. Эти идентификаторы ключа используются PGP, например, для определения ключа при декодировании сообщения.
При подписывании документа PGP формирует 128 бит, которые представляют документ. Эта подпись является своего рода контрольной суммой, или CRC, которая позволяет обнаружить изменения в документе. В отличие от обычных CRC или контрольных сумм, никто не может заново создать эту подпись, чтобы узаконить любые изменения исходного документа. Подпись создается при помощи закрытого ключа отправителя и тот, кто хочет внести изменения, не имеет к нему доступа.