Сервер в кармане, или просто о сложном!

главная - Статьи - Разное

Шифрование текстовых сообщений с помощью GPG (GnuPG)

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

Для защиты информации (с возможностью ее передачи по электронной почте или на физическом носителе) от чужих глаз используется несколько основных методик:

  • криптоконтейнеры
  • зашифрованные файлы
  • зашифрованные сообщения, передаваемые в открытом текстовом сообщении

Также используют скрытые контейнеры, но я не представляю себе, как передать по почте скрытый криптоконтейнер. И еще - никто не возбраняет использовать несколько методик одновременно, например, зашифровать текстовое сообщение, поместить его в текстовый файл, файл зашифровать, поместить в другой криптоконтейнер, который и передавать по электронной почте (вариант с хранением смерти Кощея Бессмертного).

Использование криптоконтейнеров уже рассматривалось на нашем сайте на странице TrueCrypt.

Мы же кратко рассмотрим использование GnuPG как средство шифрования текстовых сообщений.

Итак, GnuPG.

Веб-сайт http://www.gpg4win.org/
Распространение бесплатно
OS Windows (2000/XP/2003/Vista)

Установка GPG

Скачиваем, устанавливаем. После установки при первом запуске программа предлагает сгенерировать ключ для подписывания/шифрования информации. Соглашаемся, вводим необходимую информацию, программа сгенерирует пару секретного/открытого ключей. Открытым ключом сообщения подписываются и/или шифруются (этот ключ можно отправить вашему другу, который будет посылать вам секретные письма!), а расшифровываются они только закрытым ключем, который есть только у вас. Все, установка закончена.

Шифрование текста

Запускаем "Пуск - Программы - GnuPG for Windows - WinPT" (Windows Privacy Tray).

Рядом с часами внизу экрана появиось изображение ключа с символом "@". Так, программа запущена.

Теперь откроем блокнот, напишите в нем что-либо и скопируйте в буфер обмена. Для примера, пусть это будет слово "test" (без кавычек). Теперь правой мышкой на значке WinPT - Clipboard - Encrypt. Появится окно, в котором вы должны выбрать, каким ключом будете шифровать секретный текст "test". Выбрали ключ, нажали "Ok". Все, программа зашифровала текст из буфера обмена с помощью вашего ключа и поместила результат шифрования в буфер обмена. Теперь вы можете вставить в блокноте содержимое буфера обмена. У меня это выглядит так:

-----BEGIN PGP MESSAGE-----
Version: GnuPG v1.4.7 (MingW32) - WinPT 1.2.0

hQIOA0TNrnUvaTuCEAgAt4cfi8jchGvDmid19zyw9QHqMCSdyo/Q+URp20MNwhCY
9C2zvdRFwPn1ut7hJ/b4nBiDbElTCkMy+dzzuQUM8/BO5Qe8rhdeHkOhzf3vwrjI
Ue9DG8tPz4t1rN4h8tT0x+M+k78E+kWGjsb7xP3GX+fiu8Whld1wnCN0WF+5eDkk
ZMEbHhxxQZYP2OxU5Dbk1GkhTJYOjOtX8My9d0y5JNPc1S91PGSASiXtixOdtdST
erYCitVOIZhIv9Za4ORtefmsImO7MyXhi9Kbjjo1cu/OnUvzlsRbg4Dx2ET/IV+b
5ZZNFSEIrIEqZ9u5wX/uBusU0uVP1I5Onb+Wwt9lawgAy+fTC59OfdtBCX/t2JmG
qdPkNx6cMzkdvZJk5NG9zjBb9R1aY/ZSkANcRdZeXSLNbQ8+sQarLiESKkMkxq7q
Udwmi4djf3aUd4uQPN1F9m0d61zK6sJqWKdpBeR5VMZLbBOf2N54g7BcyxHa1ToL
aM4f9iABj5Ccebl/v20PNOSLZF9iSBGBmQmyA1G5n/48tKkGw3zrHgMVR6FRe4dA
HfDOTkMXh299ZtE9bRV5GuEU/qZj3Jz20tzBT3Etpo6VUIcaRVXpSg5yNK4mYQib
6a6VWIeOpL/0rZY+o2G9gmS7/Vhqar+ReDl4vmqfPKBPB+bm6aclsrqvwm6VEzVu
i9I/Aeg8iNVmbGGuUob0mcoWFGxGIL9uSJdyQaHCjkBQZllS5NH4612As1dqLW5J
ppHf66ZZTrYGv4forsrXAwt5
=1MaX
-----END PGP MESSAGE-----

Весь этот текст (включая заголовки -----BEGIN PGP MESSAGE----- и -----END PGP MESSAGE-----), можно теперь спокойно переслать по элетронной почте в отрытом виде (более открытого вида и не придумать!) кому угодно. Без вашего секретного ключа и пароля этот текст расшифровать невозможно.

Расшифровка шифровки

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

Итак, при личной встрече мы лично передали секретный ключ и пароль нашему получателю. Ок, теперь, используя мастер импорта ключей, наш получатель сможет импортировать полученный ключ в его копию программы GnuPG и сможет расшифровать полученное от вас сообщение следующим образом (считаем, что ключ импортирован):

  1. Копируем полученное зашифрованное сообщение в буфер обмена
  2. Правой кнопкой на пиктограмме WinPT - Clipboard - Decrypt/Verify
  3. Программа попросит ввести пароль ключа и расшифрованное сообщение поместит в буфер обмена

Напомню, что копировать шифрованный текст необходимо полностью, от -----BEGIN ... и до END PGP MESSAGE-----

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

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

С уважением,
Иванов Илья,
http://bozza.ru

Авторизуйтесь для добавления комментариев!


    забыли пароль?    новый пользователь?