Шифрование с открытым ключом — Проект SAFE
Инструменты
Шифрование с открытым ключом

Как работает популярная схема шифрования e-mail

I. Обычное (симметричное) шифрование

Аня и Борис решили защитить свою переписку по e-mail с помощью шифрования. Чтобы зашифровать письмо, Аня использует специальный код – шифровальный ключ. Зашифрованное письмо может быть прочитано только тем человеком, у кого есть этот ключ. Поэтому перед тем, как начинать переписку, у обоих наших друзей должен быть этот ключ.

Если Аня и Борис живут в разных городах и не могут встретиться, кто-то из них (например, Аня) создает ключ и отправляет его собеседнику по интернету.

Теперь Аня может:

  • сочинить письмо,
  • зашифровать его с помощью ключа,
  • отправить шифровку Борису.

Борис:

  • получит шифровку,
  • расшифрует ее с помощью того же ключа,
  • прочтет анино письмо.

Вот так:

Представим, что в планы друзей вмешивается злодей Захар. У него есть технические возможности перехватывать любые данные, которые Аня и Борис посылают друг другу. Специалисты по безопасности называют такой вид атаки “человек-в-середине” (man-in-the-middle). Если Аня отправит Борису шифровальный ключ по e-mail, Захар его скопирует. Потом Захар скопирует и шифровку. Ничто не может помешать ему читать всю зашифрованную переписку.

II. Шифрование с открытым ключом

Чтобы оставить Захара с носом, Аня (с помощью специальной программы) создает не один, а два ключа. Эти ключи уникальные, парные и обладают особенностью: то, что зашифровано одним ключом, может быть расшифровано только парным ему ключом. Назовем один из ключей секретным (С), а другой открытым (О). То же самое на своем компьютере сделает Борис. У него тоже появится уникальная пара ключей.

Свои секретные ключи Аня и Борис защитят надежными паролями и будут держать каждый при себе. Открытыми ключами друзья обменяются – прямо по e-mail, а может быть, даже разместят их на сервере в интернете (бывают специальные серверы ключей). 

Чтобы написать Борису, Ане нужно:

  • сочинить письмо,
  • зашифровать его с помощью открытого ключа Бориса,
  • отправить шифровку Борису.

Борис:

  • получит шифровку,
  • расшифрует ее с помощью своего секретного ключа (единственного ключа в мире, который это позволит),
  • прочтет анино письмо.

Вот как это выглядит на картинке:

Свой ответ Борис зашифрует открытым ключом Ани. Получив шифровку, Аня расшифрует ее своим секретным ключом.

Что же Захар? Он может перехватывать открытые ключи Ани и Бориса, а также все шифрованные письма, но никакой пользы это не принесет: открытые ключи не годятся для расшифровки.

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

III. Программы/приложения

Шифрование с открытым ключом в гражданской сфере получило широкое распространение благодаря усилиям американского программиста Фила Зиммермана и его единомышленников. Созданная Филом программа называется PGP (Pretty Good Privacy). Семена дали всходы, была разработана бесплатная программа с открытым кодом GnuPG, и сегодня много программ и мобильных приложений используют стандарт OpenPGP (это, в частности, значит, что они совместимы, то есть, письмо, зашифрованное одной программой, может быть расшифровано другой программой).

Если вы только открываете для себя шифрование e-mail, попробуйте Mailvelope. Это дополнение к браузеру (Google Chrome, Mozilla Firefox). Mailvelope предназначен для веб-почты. Неважно, какие почтовые провайдеры у вас и у вашего адресата. Вы можете использовать те адреса, к которым привыкли. Mailvelope позволяет шифровать и расшифровывать содержание электронных писем и файлы, которые затем можно отправлять как вложения.

Вашему вниманию предлагается отдельное руководство по Mailvelope.

Ищете что-то еще?

  • Enigmail. Дополнение, которое реализует шифрование в популярном офлайновом почтовом клиенте Mozilla Thunderbird. Работает на всех платформах, где способен работать Thunderbird.
  • GPGTools. Бесплатный шифровальный пакет с открытым кодом для Mac OSX, расширение почтового клиента Apple Mail, установленного по умолчанию.
  • K-9 Mail + OpenKeychain. Пара приложений для Android, которые действуют совместно: OpenKeychain "отвечает" собственно за шифрование, а K-9 является почтовой программой. Оба приложения бесплатные и с открытым кодом.

Здесь вы можете посмотреть другие программы.

Версия для печати