RSS

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

17 Дек

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

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

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

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

Использование криптоконтейнеров уже рассматривалось на нашем сайте на странице 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
erYCitVOIZhIv9Za4ORtefgHymO7MyXhi9Kbjjo1cu/OnUvzlsRbg4Dx2ET/IV+b
5ZZNFSEIrIEqZ9u5wX/uBusU0uVP1I5Onb+Wwt9lawgAy+fTC59OfdtBCX/t2JmG
khkjhkKJH7687KHkjhlkNNMB8bnn6/ZSkANcRdZeXSLNbQ8+sQarLiESKkMkxq7q
6HgQtb3dg9HJhczxyu009nmBgsprtYjdijfer4U8lkdfHJwqabbFdgEi0c0Jhfdj
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 и сможет расшифровать полученное от вас сообщение следующим образом (считаем, что ключ импортирован):

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

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

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

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

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

Спасибо, Илья, неплохая статья, будет в самый раз для индивидуалистов и для начала понимания принципов работы с PGP (GPG). 😉

 
Оставить комментарий

Опубликовал на 17 декабря, 2011 в IT security

 

Метки:

Обсуждение закрыто.