На какой криптосистеме основана схема открытого распространения ключей в программе pgp

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

Что такое PGP?

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

Как работает шифрование?

Чтобы понять шифрование, представьте, что вы хотите отправить любовное письмо, но вы не хотите, чтобы кто-то его читал, кроме предполагаемого получателя. Вы пишете свое письмо, а затем создаете код (в терминах криптографии ключ) для шифрования вашего сообщения. Например, если вы выберете, что каждая буква алфавита соотносится с числом, то ваше сообщение “I love you” будет выглядеть так: “9 12-15-22-5 25-15-21”.

Использование открытых и закрытых ключей PGP. Зачем это все

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

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

Шифрование PGP

Шифрование PGP

PGP использует “криптографию с открытым ключом”, что означает, что для шифрования и расшифровки сообщений вам нужны два ключа – открытый и закрытый. Открытый ключ используется для шифрования данных, а закрытый-для их расшифровки.

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

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

Является ли шифрование PGP безопасным?

Шифрование PGP использует 128-битные ключи, что делает его довольно сложным для взлома. Другими словами, есть 2^128 возможных комбинаций, которые кто-то может попробовать, прежде чем сломает шифрование и прочитает ваше сообщение.

Чтобы атака была успешной, хакеру понадобится компьютер, способный запускать миллиард ключей каждую секунду. Даже если бы такой суперкомпьютер существовал, все равно потребовалось бы более 10 000 000 000 000 лет, чтобы опробовать все возможности. Таким образом, пользователи PGP могут чувствовать себя довольно безопасно, используя этот стандарт шифрования.

Зачем использовать PGP?

1. Чтобы зашифровать сообщения электронной почты

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

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

2. Использование цифровых подписей

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

Например, представьте, что вы посылаете книгу своему лучшему другу. Вы шифруете документ их открытым ключом и подписываете его своим закрытым ключом. Как только он получит книгу, то узнает, что она пришла от вас и больше ни от кого. Если по какой-то причине кто-то перехватил документ и что-то изменил – хотя бы одну букву или цифру – ваш друг увидит недействительную цифровую подпись.

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

Как использовать PGP?

Продвинутые пользователи смогут настроить свое собственное шифрование PGP, но большинство пользователей должны искать службы, которые предоставляют шифрование PGP в качестве функции. Как и большинство протоколов, он не доступен в качестве отдельного приложения.

Одно из его самых частых применений – это электронные письма. Ваши лучшие варианты состояли бы в том, чтобы найти электронную почту, которая предлагает встроенное шифрование PGP.

На видео: Как создать PGP-ключ и шифровать свою почту?

Источник: bezopasnik.info

Защита целостности кода с помощью PGP. Часть 1. Базовые концепции и инструменты

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

Здесь будут раскрыты следующие темы:

  • Основы PGP и рекомендации по работе с соответствующим ПО.
  • Использование PGP с Git.
  • Защита учётной записи разработчика.

О структуре материалов

Каждый раздел этой серии материалов разбит на две части:

  1. Контрольный список, который может быть адаптирован под нужды конкретного проекта.
  2. Пояснения, раскрывающие суть элементов контрольного списка, а также инструкции по работе с программами.
Читайте также:
Как firewall разрешить программу

Особенности контрольного списка

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

  • Элементам, которым назначен приоритет «важно», следует уделить особое внимание. Если рекомендации из «важных» пунктов не будут реализованы, это будет означать высокий риск возникновения проблем с кодом, включаемым в проект.
  • Элементы с приоритетом «рекомендовано» содержат рекомендации, которые полезно реализовать для улучшения общего уровня безопасности. Их внедрение может подействовать на взаимодействие программиста с его рабочим окружением, это, возможно, потребует приобретения новых привычек или отказа от старых.

Базовые концепции и инструменты PGP

▍Контрольный список

Вот темы, в которых нужно ориентироваться после успешного освоения материала этого раздела:

  1. Роль PGP в разработке свободного ПО (Важно).
  2. Основы криптографии с открытым ключом (Важно).
  3. Различия между шифрованием и подписыванием материалов (Важно).
  4. Идентификационные данные ключей PGP (Важно).
  5. Достоверность ключей PGP (Важно).
  6. Установка утилит GnuPG (версии 2.x) (Важно).

▍Пояснения

Сообщество открытого ПО уже давно полагается на PGP для обеспечения аутентичности и целостности разрабатываемых программных продуктов. Вы можете об этом не знать, но работаете ли вы в среде Linux, Mac или Windows, вы уже пользовались PGP для того, чтобы обеспечить целостность вашего вычислительного окружения.

  • Дистрибутивы Linux используют PGP для обеспечения неизменности бинарных пакетов или пакетов с исходным кодом с момента их создания до момента их установки конечным пользователем.
  • Проекты свободного ПО обычно предлагают отдельные подписи PGP для выпущенных программных архивов, таким образом, проекты, полагающиеся на них, могут проверить целостность загруженных релизов перед интеграцией их в собственные дистрибутивы.
  • Проекты свободного ПО обычно полагаются на подписи PGP в самом коде для того, чтобы отслеживать происхождение и обеспечивать целостность кода, вносимого в проект его разработчиками.

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

▍Обзор работы PGP

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

  • Открытого ключа, который известен всем.
  • Закрытого ключа, который известен только владельцу.

▍Шифрование

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

Процесс шифрования выглядит так:

  1. Отправитель создаёт случайный ключ шифрования (сеансовый ключ).
  2. Отправитель шифрует содержимое сообщения, применяя этот сеансовый ключ (с использованием симметричного шифра).
  3. Отправитель шифрует сеансовый ключ, используя открытый ключ PGP получателя.
  4. Отправитель отправляет зашифрованные данные и зашифрованный сеансовый ключ получателю.
  1. Получатель расшифровывает сеансовый ключ, используя свой закрытый ключ PGP.
  2. Получатель использует сеансовый ключ для расшифровки содержимого сообщения.

▍Подписывание

Для подписывания данных открытые и закрытые ключи PGP используются обратным способом:

  1. Подписывающий генерирует хэш контрольной суммы неких данных.
  2. Подписывающий использует собственный закрытый ключ для шифрования этой контрольной суммы.
  3. Подписывающий предоставляет зашифрованную контрольную сумму вместе с данными.
  1. Проверяющий генерирует собственную контрольную сумму данных.
  2. Проверяющий использует открытый ключ подписывающего для расшифровывания предоставленной контрольной суммы.
  3. Если контрольные суммы совпадают, значит целостность содержимого подтверждена.

▍Совместное использование шифрования и подписывания

Часто зашифрованные сообщения ещё и подписывают с использованием собственного PGP-ключа отправителя данных. Подобный подход следует использовать всегда, когда осуществляется обмен зашифрованными сообщениями, так как шифрование без аутентификации не имеет особого смысла (пожалуй, анонимность в подобных вещах нужна лишь секретным агентам и тем, кто делает общественным достоянием некую закрытую информацию).

▍Идентификационные данные ключа

С каждым PGP-ключом должны быть ассоциированы идентификационные данные владельца ключа. Обычно это — полное имя человека и адрес электронной почты в следующем формате:

Alice Engineer

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

Bob Designer (obsolete 1024-bit key)

Так как люди, владельцы ключей, могут играть множество профессиональных и персональных ролей, в одном и том же ключе могут присутствовать несколько наборов идентификационных данных:

Alice Engineer Alice Engineer Alice Engineer

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

▍Достоверность ключа

Для того чтобы иметь возможность использовать чей-нибудь открытый ключ для шифрования или верификации, вам нужно убедиться в том, что он действительно принадлежит этому человеку (Alice в данном случае), а не мошеннику (пусть мошенника зовут Eve). В PGP это называется достоверностью ключа:

  • Полная достоверность ключа означает, что имеется очень высокий уровень уверенности в том, что данный ключ принадлежит Alice.
  • Граничная достоверность ключа означает, что мы до некоторой степени уверены в том, что ключ принадлежит Alice.
  • Неизвестная достоверность ключа означает, что у нас абсолютно нет уверенности в том, что этот ключ принадлежит Alice.

▍Сеть доверия и механизм «доверие при первом использовании»

PGP включает в себя механизм делегирования доверия, известный как сеть доверия (Web of Trust, WOT). В своей основе — это попытка заменить необходимость в централизованных службах сертификации вроде тех, что используются в HTTPS/TLS. При таком подходе пользователь самостоятельно принимает решения о том, кому можно доверять.

К сожалению, очень немногие понимают, как работает сеть доверия, и ещё меньше людей заботится об этой технологии. И хотя сети доверия остаются важным аспектом спецификации OpenPGP, существующие версии GnuPG (2.2 и выше) реализовали альтернативный подход, представленный механизмом «доверие при первом использовании» (Trust on First Use, TOFU).

TOFU можно сравнить с SSH. Когда вы, используя SSH, в первый раз подключаетесь к удалённой системе, ваша система запоминает отпечаток её ключа. Если ключ изменится, SSH-клиент сообщит вам об этом и отклонит соединение, предлагая вам принять решение о том, доверяете ли вы изменившемуся ключу или нет.

Читайте также:
Как открыть программы и компоненты от имени другого пользователя

Похожим образом работает и механизм TOFU. Когда вы впервые импортируете чей-то PGP-ключ, он считается достойным доверия. Если после этого GnuPG столкнётся с новым ключом с теми же самыми идентификационными данными, тогда оба ключа будут помечены как недействительные и вам нужно будет самостоятельно принять решение о том, какой из них следует сохранить.

В этом руководстве мы будем использовать модель доверия TOFU.

▍О терминологии

Тут нам хотелось бы отметить важность понимания различий между такими терминами, как PGP, OpenPGP, GnuPG и gpg:

  • PGP (Pretty Good Privacy) — это название коммерческой программы, вышедшей в 1991-м году.
  • OpenPGP — это стандарт IETF, совместимый с PGP.
  • GnuPG (Gnu Privacy Guard) — это бесплатное ПО, которое реализует стандарт OpenPGP.
  • Инструмент командной строки для GnuPG называется gpg.
  • Ключ PGP (не GnuPG или GPG)
  • Подпись PGP (не GnuPG или GPG)
  • Сервер ключей PGP (не GnuPG или GPG)

▍Установка GnuPG

Если вы используете Linux, это значит, что в вашей системе уже установлено ПО GnuPG. На Mac вам надо установить GPG-Suite, или воспользоваться командой brew install gnupg2 . Если вы пользователь Windows, то вам подойдёт GPG4Win, и вам, вероятно, потребуется изменить некоторые команды из этого руководства. Если же вы пользуетесь в Windows Unix-подобным окружением, то команды менять не придётся. Если вы пользуетесь какими-то другими платформами, то вам понадобится самостоятельно подобрать подходящую реализацию GnuPG.

▍GnuPG версий 1 и 2

И GnuPG v.1, и GnuPG v.2 реализуют один и тот же стандарт, но они предоставляют несовместимые библиотеки и инструменты командной строки, в результате многие дистрибутивы поставляются и с устаревшей версией 1, и с более новой версией 2. Вам нужно удостовериться в том, что вы всегда пользуетесь GnuPG v.2.

Для начала, для того, чтобы узнать, какая версия GnuPG скрывается в вашей системе под именем gpg , выполните следующую команду:

$ gpg —version | head -n1

Если вы видите нечто вроде gpg (GnuPG) 1.4.x , это значит, что по команде gpg вызывается GnuPG v.1. Попробуйте в таком случае команду gpg2 :

$ gpg2 —version | head -n1

Если вы видите что-то вроде gpg (GnuPG) 2.x.x , значит, всё в порядке. Тут мы полагаем, что у вас есть версия GnuPG 2.2 или более поздняя. Если вы используете версию GnuPG 2.0, некоторые из команд, которые будут здесь приведены, работать не будут, поэтому вам стоит рассмотреть возможность установки самой свежей версии 2.2 GnuPG.

▍Псевдоним для GnuPG v.2

Если в вашей системе есть и команда gpg , и команда gpg2 , хорошо бы настроить всё так, чтобы по команде gpg вызывалась GnuPG v.2, а не старая версия ПО. Сделать это можно, создав псевдоним:

$ alias gpg=gpg2

Эту команду можно поместить в .bashrc для того, чтобы на команду gpg откликалась программа GnuPG v.2.

Итоги

Здесь мы поговорили об основах PGP, которыми необходимо владеть для успешного применения PGP в деле защиты кода. В следующий раз мы расскажем о создании и защите PGP-ключей.

Уважаемые читатели! Используете ли вы PGP для защиты кода ваших программных проектов?

  • Блог компании RUVDS.com
  • Информационная безопасность
  • Разработка веб-сайтов

Источник: habr.com

Шифрование PGP

PGP (Pretty Good Privacy) — криптографическое приложение для обеспечения защиты и аутентификации данных. Используя его можно быть уверенным, что никто не сможет прочитать или изменить Вашу информацию. Подробнее о программе и истории ее создания можно прочитать на сервере www.pgpi.org. Защита гарантирует, что только получатель информации сможет воспользоваться ей. Оказавшись в чужих руках, она будет совершенно бесполезной, поскольку ее невозможно декодировать.

Внимание — в настоящее время статья устарела. Актуальная замена PGP — это GnuPG (GNU Privacy Guard, https://www.gnupg.org). Пример работы с GnuPG в Windows смотрите в статье «Шифрование GPG (GnuPG, ex PGP)».

Аутентификация гарантирует, что если некоторая информация была создана Вами и выложена для публичного доступа, то она действительно поступила от Вас и не была никем фальсифицирована или изменена в пути.

В 1999 году силами Фонда свободного программного обеспечения была создана свободная реализация OpenPGP под названием GNU Privacy Guard (GnuPG), а сам PGP был куплен McAfee, а поздгнее — Symantec. Проект GnuPG жив и здоров, о нем читайте в отдельной статье.

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

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

  • Как это работает
  • Версии PGP
  • Генерация ключей
  • Использование PGP

Как это работает

Возьмем для примера двух друзей — Сергея и Максима. У Сергея есть открытый ключ Максима. Он шифрует письмо с помощью этого ключа и отправляет. Теперь только Максим сможет прочитать это письмо, потому что закрытый ключ находится только у него. Даже Сергей уже не может прочитать свое собственное, но уже зашифрованное письмо.

Аутентификация

Вы посылаете письмо в список рассылки для своих клиентов. При этом подписчики списка хотят быть уверены что это именно Вы послали сообщение и что оно не было изменено каким-либо посторонним лицом. Подписываем сообщение с помощью своего закрытого ключа и вставляем подпись в письмо. Теперь все клиенты, у которых есть открытый ключ, могут с помощью него проверить, действительно ли Вы послали это письмо и не изменено ли оно кем-либо.

На наших машинах установлены две версии PGP:

PGP 2.6.3ia — /usr/local/bin/pgp
PGP 6.5.1i — /usr/local/bin/pgp6

В PGP версии 2.6.3ia для криптования используется алгоритм RSA, а в версии 6.5.1i добавлен алгоритм DSS/DH.

Генерация ключей

Сначала необходимо зайти в unix shell и в своей домашней директории создать подкаталог .pgp командой:

После этого командой «/usr/local/bin/pgp -kg» создаем ключи и защищаем свой закрытый ключ паролем. Обязательно запишите этот пароль. При утере восстановить его будет невозможно и придется создавать новые ключи. В каталоге .pgp созданы два файла:

Читайте также:
Программы на Ява скрипт примеры

pubring.pgp — набор открытых ключей
secring.pgp — набор закрытых ключей

Теперь можете приступать к использованию PGP

Использование PGP

  • Генерация ключей(подробно)
  • Добавление ключа в файл
  • Удаление ключа из файла
  • Выделение ключа
  • Содержание файла с ключами
  • Шифрование сообщения
  • Шифрование сообщения для нескольких получателей
  • Подписываем сообщение
  • Расшифровка

Создание пары ключей

Чтобы начать использовать PGP, нужно создать собственную пару ключей (открытый/закрытый). Чтобы это сделать, выполните команду:

Вас попросят выбрать максимальный размер ключа (512, 768 или 1024 байт). Чем больше ключ, тем более надежным он будет, правда ценой небольшого снижения быстродействия при шифровании.

После выбора размера нужно задать идентификатор открытого ключа. Обычно здесь указывают свои имена и/или e-mail адрес. Например:

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

Через несколько секунд PGP создаст ключи и известит об этом соответствующим сообщением. После того, как ключи были сгенерированы должным образом, они сохраняются в каталоге ~/.pgp в виде файлов: pubring.pgp и secring.pgp. Первый, pubring.pgp, является файлом с открытыми ключами, secring.pgp — файл с закрытыми ключами На данный момент эти файлы содержат только открытый и закрытый ключи их создателя. Необходимо помнить, что безопасность методов открытого ключа опирается на безопасности закрытого ключа, поэтому обязательно хранить его в надежном месте и следить за тем, чтобы никто не смог его получить. Установите такие права доступа к файлу secring.pgp, чтобы только Вы могли читать и записывать в него. Редактировать и изменять, и идентификаторы ключей и пароли закрытых ключей можно с помощью команды:

pgp -ke идентификатор [файл с ключами]

Добавление ключей в файл

Теперь Вам, вероятно, захочется добавить открытые ключи людей, с которыми есть желание обмениваться шифрованными сообщениями. Для этого потребуется получить открытые ключи Ваших корреспондентов: с сервера ключей, непосредственно от конкретных людей, по e-mail, и т.д. Вспомним, что открытые ключи распространяются свободно и нет необходимости передавать их по безопасному каналу. Если в файле somekey.pgp содержится ключ и есть желание добавить его в файл ключей, процедура такова:

pgp -ka somekey [файл с ключами]

По умолчанию расширение .pgp указывает на файл с ключем и имена pubring.pgp и secring.pgp даются файлам, содержащим наборы открытых и закрытых ключей, соответственно. После добавления ключа PGP может сообщить, что добавленный ключ не полностью сертифицирован, это означает, что данный ключ не обязательно может принадлежать заявленному владельцу. Если есть уверенность, что ключ действительно принадлежит этому человеку, то сами можете подтвердить его приемлемость для использования.

Удаление ключа из файла

Удалить ненужный ключ из файла можно командой

pgp -kr идентификатор [файл с ключами]

Например: «pgp -kr alex» удалит любой ключ, у которого в идентификаторе содержится «alex». По умолчанию исследуется файл открытых ключей.

Выделение ключа

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

pgp -kx идентификатор файл [файл с ключами]

Например: «pgp -kx alex mykey» выделяет открытый ключ, идентифицированный подстрокой «alex» в файле mykey.

Созданный файл mykey.pgp будет не в формате ASCII. Однако, если потребуется создать файл ключа в формате ASCII чтобы послать, к примеру, по e-mail или добавить дополнительную информацию к базе данных, потребуется использовать команду:

pgp -kxa идентификатор файл [файл с ключами]

Например: «pgp -kxa alex mykey» выделяет открытый ключ, идентифицированный подстрокой «alex», в файл «mykey.asc».

Вместе с ключом также выделяются все сертификаты, которые его подтверждают.

Содержание файлов с ключами

Чтобы просмотреть ключи, содержащиеся в файле, наберите команду:

pgp -kv [идентификатор] [файл с ключами]

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

pgp -kvv [идентификатор] [кольцо]

Шифрование сообщений

Теперь попробуем зашифровать файл. Сделать это можно командой:

pgp -e файл идентификатор

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

Помните, что созданный файл, не является ASCII файлом, поэтому для отправки его по E-Mail может потребоваться добавить еще одну опцию -a для того, чтобы выходной закодированный файл был в формате ASCII, например так:

pgp -ea файл идентификатор

Кодирование сообщения для нескольких получателей

Допустим, необходимо зашифровать и отправить письмо для нескольких получателей. В этом случае поступим так:

pgp -ea файл идентификатор1 идентификатор2 идентификатор3

Как подписывается сообщение

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

pgp -s файл идентификатор

Если у нас есть несколько закрытых ключей в нашем secring.pgp, мы можем выбрать один из них при помощи идентификатора. Эта команда создает файл, который не является ASCII-текстом, потому что PGP пытается сжать файл. Если, с другой стороны, Вы хотите подписать файл, оставив текст читабельным и с подписью в конце, то процедура будет выглядеть так :

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

Кроме того, можно подписать документ и затем закодировать его при помощи следующей команды:

pgp -es файл идентификатор_получателя мой_идентификатор

Для кодирования файла используется открытый ключ, идентифицируемый подстрокой «идентификатор_получателя», поэтому только этим ключом можно декодировать этот файл. Затем идентифицируем закрытый ключ строкой «мой_идентификатор», так как в нашем наборе есть несколько ключей. Даже в этом случае можно создать файл в формате ASCII, используя опцию -a.

Расшифровка

Для расшифровки файла и/или проверки его подписи используется команда:

pgp входной_файл [-o выходной_файл]

По умолчанию предполагается, что входной файл имеет расширение .pgp. Имя файла, который получится в результате декодирования, является необязательным параметром. Если выходной файл не указан, расшифрованный файл будет сохранен в файле входной_файл без расширения .pgp.

Также можно просто просмотреть расшифрованный файл без сохранения:

Источник: bozza.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru