mirror of
git://git.gnupg.org/gnupg.git
synced 2025-01-06 12:33:23 +01:00
1404 lines
94 KiB
Plaintext
1404 lines
94 KiB
Plaintext
[$htmltitle=GnuPG FAQ]
|
||
[$htmlcharset=<meta http-equiv="content-type" content="text/html; charset=utf-8">]
|
||
[$sfaqheader=The GnuPG FAQ says:]
|
||
[$sfaqfooter=
|
||
The most recent version of the FAQ is available from
|
||
<http://www.gnupg.org/>
|
||
]
|
||
[$usenetheader=
|
||
]
|
||
[$maintainer=David D. Scribner, <faq 'at' gnupg.org>]
|
||
[$hGPGHTTP=http://www.gnupg.org]
|
||
[$hGPGFTP=ftp://ftp.gnupg.org]
|
||
[$hVERSION=1.2.2]
|
||
|
||
[H body bgcolor=#ffffff text=#000000 link=#1f00ff alink=#ff0000 vlink=#9900dd]
|
||
[H h1]GnuPG Frequently Asked Questions[H /h1]
|
||
|
||
|
||
[H p]
|
||
Версия: 1.6.3[H br]
|
||
Редакция от: 30 Июля 2003[H br]
|
||
Руководитель проекта: [$maintainer]
|
||
[H br]Перевод на русский: Maxim Britov <maxbritov@tut.by>, GnuPG KeyID 0x6F3DB1FB
|
||
[H br]CODEPAGE: UTF-8
|
||
[H /p]
|
||
|
||
|
||
В данном документе (далее - "FAQ") Вы найдете ответы на наиболее часто
|
||
задаваемые вопросы по GnuPG. Последняя версия FAQ (английская) в формате HTML
|
||
доступна [H a href=[$hGPGHTTP]/documentation/faqs.html]здесь[H /a].
|
||
|
||
Содержание создано автоматически, поэтому может содержать ошибки и может
|
||
случиться, что некоторые из отвеченных ниже вопросов могут в него не попасть.
|
||
Принимаются любые предложения по усовершенствованию структуры настоящего документа.
|
||
|
||
Все дополнения и исправления отправляйте на англ. языке руководителю проекта.
|
||
Будет правильнее, если Вы предложите и ответ на Ваш новый вопрос или укажете
|
||
и вопрос, и ответ по которым Вы имеете свои предложения. Ваша помощь будет
|
||
оценена по достоинству.
|
||
|
||
Не следует присылать сообщения типа "Это следует поместить в FAQ - Каков ответ?".
|
||
Если вопрос не задавался ранее, видимо он не относится к часто задаваемым.
|
||
В этом случае Вам следует поискать ответ в архиве соответствующей почтовой
|
||
рассылки.
|
||
|
||
[H hr]
|
||
<C>
|
||
[H hr]
|
||
|
||
|
||
<S> ОБЩЕЕ
|
||
|
||
<Q> Что такое GnuPG?
|
||
|
||
[H a href=[$hGPGHTTP]]GnuPG[H /a] расшифровывается как GNU Privacy Guard и
|
||
является GNU инструментом для секретных коммуникаций и хранения данных.
|
||
GnuPG может использоваться для шифрования данных и создания цифровых подписей.
|
||
GnuPG представляет собой легкое, но мощное средство управления ключами
|
||
и совместимо с предложенным OpenPGP Internet стандартом, как описано
|
||
в [H a href=http://www.rfc-editor.org/]RFC 2440[H/a].
|
||
Также, по возможности, обеспечивается совместимость с PGP от NAI, Inc.
|
||
|
||
<Q> GnuPG совместимо с PGP?
|
||
|
||
В основном, да. GnuPG и новейшие версии PGP следуют стандарту OpenPGP.
|
||
Но существуют некоторые проблемы при взаимодействии.
|
||
Подробности см. в вопросе <Rcompat>.
|
||
|
||
<Q> Свободен ли GnuPG для персонального или коммерческого использования?
|
||
|
||
Да! GnuPG является частью инструментов и приложений GNU созданных
|
||
и распространяемых в соответствии с Free Software Foundation (FSF)
|
||
General Public License (GPL). Поэтому GnuPG свободно для копирования,
|
||
использования, изменения и распространения в соответствии с данной
|
||
лицензией. Прочитайте, пожалуйста, файл озаглавленный COPYING, который
|
||
прилагается к данной программе для получения более полной информации.
|
||
|
||
<Q> Какие соглашения используются в данном FAQ?
|
||
|
||
Поскольку GnuPG разрабатывается для нескольких оперционных систем
|
||
(часто параллельно), то соглашения используемые в данном FAQ отражают
|
||
окружение оболочки UNIX. Для пользователей Win32, ссылки на подсказку
|
||
командной строки ("$") следует рассматривать, как приглашение (">"),
|
||
имена каталогов разделенные прямым слешем ("/") следует разделять
|
||
обратным слешем ("\"), и тильду ("~") рассматривать, как путь к
|
||
домашнему каталогу пользователя (см. ответ на <Rhomedir> для примера).
|
||
|
||
Некоторые командные строки в настоящем FAQ слишком длинны для правильного
|
||
отображения некоторыми браузерами в Web версии данного документа
|
||
и поэтому некоторые строки могут быть разбиты на две и более. Такие
|
||
команды следует ввести целиком - одной строкой, иначе команда будет
|
||
ошибочна и как минимум, не даст требуемого результата.
|
||
|
||
Помните, что данный FAQ содержит информацию, которая может оказаться
|
||
не актуальной для Вашей текущей версии программы, т.к. постоянно
|
||
производятся усовершенствование программы и исправления найденных ошибок
|
||
(см. файл NEWS поставляемый вместе с исходными текстами). Один из
|
||
пунктов которого сообщает, что в GnuPG начиная с версии 1.1.92 файл
|
||
персональных параметров программы переименован из "options" в "gpg.conf".
|
||
Информация в FAQ, ссылающаяся на файл параметров "options" полностью
|
||
применима к новому файлу "gpg.conf" в большинстве случаев.
|
||
Подробнее см. в вопросе <Roptions>.
|
||
|
||
|
||
<S> ИСТОЧНИКИ ИНФОРМАЦИИ
|
||
|
||
<Q> Где я могу получить больше информации о GnuPG?
|
||
|
||
Онлайновые источники:
|
||
|
||
[H ul]
|
||
[H li]Страница документации на [H a href=[$hGPGHTTP]/documentation/]<[$hGPGHTTP]/documentation/>[H/a].
|
||
Также смотрите HOWTO и GNU Privacy Handbook (GPH, доступную на Английском, Испанском и Русском (Спасибо Павлу Шайдо за русский перевод)). Последнее является
|
||
подробным руководством пользователя GnuPG. Вы также найдете документ о том,
|
||
как перейти с PGP 2.x на GnuPG.
|
||
|
||
[H li]На [H a href=[$hGPGHTTP]/documentation/mailing-lists.html]<[$hGPGHTTP]/documentation/mailing-lists.html>[H/a]
|
||
Вы найдете онлайновый архив дискуссионных списков рассылки (в т.ч. gnupg-ru).
|
||
Более интереным должен быть gnupg-users - где обсуждаются проблемы
|
||
пользовательского уровня, для русскоязычных пользователей существует
|
||
также рассылка gnupg-ru; gnupg-devel - для контактов с разработчиками.
|
||
|
||
Дополнительно можно поискать на MARC, например: [H br]
|
||
gnupg-users: [H a href=http://marc.theaimsgroup.com/?l=gnupg-users&r=1&w=2]<http://marc.theaimsgroup.com/?l=gnupg-users&r=1&w=2>[H/a][H br]
|
||
gnupg-devel: [H a href=http://marc.theaimsgroup.com/?l=gnupg-devel&r=1&w=2]<http://marc.theaimsgroup.com/?l=gnupg-devel&r=1&w=2>[H/a][H br]
|
||
|
||
[H b]ПОЖАЛУЙСТА:[H /b]
|
||
Перед отправкой вопроса с список рассылки, прочтите данный FAQ и доступную
|
||
докуменцию. Следует просмотреть также архив рассылки, т.к. вплне возможно,
|
||
что Ваш вопрос уже обсуждался ранее. Это поможет людям сконцентрировать
|
||
внимание на решении новых, еще не решенных вопросов.
|
||
|
||
[H li]Пакет с исходным кодом GnuPG содержит подкаталог:
|
||
|
||
[H samp]
|
||
./doc
|
||
[H /samp]
|
||
|
||
в котором Вы можете найти некоторую дополнительную информацию (интересную в
|
||
основном Хакерам, а не обычным пользователям).
|
||
[H /ul]
|
||
|
||
<Q> Где я могу взять GnuPG?
|
||
|
||
Вы можете скачать GNU Privacy Guard с главного FTP сервера проекта
|
||
[H a href=[$hGPGFTP]/gcrypt/]<[$hGPGFTP]/gcrypt/>[H /a] или с одного из зеркал:
|
||
|
||
[H a href=[$hGPGHTTP]/download/mirrors.html]
|
||
<[$hGPGHTTP]/download/mirrors.html>
|
||
[H /a]
|
||
|
||
Текущая стабильная версия GnuPG [$hVERSION]. Обновите Вашу программу до
|
||
указанной версии, т.к. она включает дополнительные функции и исправления
|
||
найденных ошибок, которые могли быть найдены в предыдущих версиях.
|
||
|
||
|
||
<S> УСТАНОВКА
|
||
|
||
<Q> На каких операционных системах может работает GnuPG?
|
||
|
||
GnuPg должен работать на большинстве Unix, а также Windows (включая
|
||
Windows NT/2000/XP) и Macintosh OS/X. Текущий список поддерживаемых
|
||
систем можно посмотреть здесь:
|
||
|
||
[H a href=[$hGPGHTTP]/download/supported_systems.html]
|
||
<[$hGPGHTTP]/download/supported_systems.html>
|
||
[H /a]
|
||
|
||
<Q> Какие поставщики случайных чисел мне следует использовать?
|
||
|
||
"Хорошие" случайные числа имеют решающее значение для секретного шифрования.
|
||
Различные операционные системы предоставляют различные механизмы поставки
|
||
более или менее качественных случайных числа. Linux и *BSD поставляют
|
||
случайные числа созданные ядром посредством /dev/random - этот вариант
|
||
предпочтителен для данных систем.
|
||
Solaris с установленным SUNWski пакетом также предоставляет /dev/random.
|
||
В данном случае следует использовать параметр конфигурирования:
|
||
|
||
[H samp]
|
||
--enable-static-rnd=linux
|
||
[H /samp]
|
||
|
||
Также существует устройство ядра для поставки случайных чисел разработанное
|
||
Andi Maier [H a href= http://www.cosy.sbg.ac.at/~andi/SUNrand/]<http://www.cosy.sbg.ac.at/~andi/SUNrand/>[H /a], но это всё еще бета версия.
|
||
Используйте ее на свой страх и риск!
|
||
|
||
На других системах, хорошим выбором будет Entropy Gathering Daemon (EGD).
|
||
Это perl-демон, который наблюдает за системной активностью и хеширует ее в
|
||
случайные числа. См. страницу загрузки [H a href=[$hGPGHTTP]/download/]<[$hGPGHTTP]/download/>[H /a]
|
||
для получения EGD. Используйте параметр конфигурирования:
|
||
|
||
[H samp]
|
||
--enable-static-rnd=egd
|
||
[H /samp]
|
||
|
||
Если указанные выше параметры не работают, можете использовать генератор
|
||
случайных чисел "unix". Но он [H B]очень[H /B] медленен и его следует
|
||
избегать. Качество поставляемых случайных чисел не очень хорошее, поэтому
|
||
им не следует пользоваться для важных данных.
|
||
|
||
<Didea>
|
||
<Q> Как добавить поддержку RSA и IDEA?
|
||
|
||
RSA включен в поставку GnuPG начиная с версии 1.0.3.
|
||
|
||
Официальная поставка GnuPG не включает поддержку IDEA по причине
|
||
патентных ограничений. Патент на IDEA истечет в 2007, поэтому не ждите
|
||
официальной поддержки до этого момента.
|
||
|
||
Однако существует неофициальный модуль поддержки IDEA для GnuPG.
|
||
Он доступен на
|
||
[H a href=ftp://ftp.gnupg.dk/pub/contrib-dk/]<ftp://ftp.gnupg.dk/pub/contrib-dk/>[H /a]. Ищите:
|
||
|
||
[H pre]
|
||
idea.c.gz (модуль на C )
|
||
idea.c.gz.sig (файл подписи)
|
||
[H /pre]
|
||
|
||
[H pre]
|
||
ideadll.zip (модуль на C и win32 dll)
|
||
ideadll.zip.sig (файл подписи)
|
||
[H /pre]
|
||
|
||
Директивы компиляции в заголовках файлов. Вам будет необходимо добавить
|
||
следующую строку в Ваш файл персональных настроек ~/.gnupg/gpg.conf:
|
||
|
||
[H samp]
|
||
load-extension idea
|
||
[H /samp]
|
||
|
||
|
||
<S> ПРИМЕНЕНИЕ
|
||
|
||
<Q> Каков рекомендуемый размер ключа?
|
||
|
||
1024 бита для DSA подписей; даже и для простых ElGamal подписей.
|
||
Этого достаточно, т.к. при большем рамере ключа слабейшим звеном
|
||
оказывается уже размер хеша.
|
||
Вы можете добавить ключи шифрования большего размера, но Вам следует
|
||
просмотреть отпечаток этого ключа командой:
|
||
|
||
[H samp]
|
||
$ gpg --fingerprint <User ID>
|
||
[H /samp]
|
||
|
||
Вам следует придерживаться стандартных алгоритмов (т.е. DSA для подписей
|
||
и ElGamal для шифрования). Ключ ElGamal для подписи невыгоден по следующим
|
||
причинам: большой размер подписей; сложно создать пригодный для подписи ключ,
|
||
который сможет противостоять настоящим атакам, Вы не получите чего-то особенно
|
||
секретного или надежного в сравнении с DSA, плюс существуют также проблемы
|
||
совместимости с некоторыми версиями PGP.
|
||
Он был предложен потому, что в то в свое время имелись проблемы
|
||
с патентами на DSA.
|
||
|
||
<Q> Почему процесс создания ключей занимает иногда так много времени?
|
||
|
||
Основная проблема в том, что необходимо собрать много случайных чисел
|
||
и для этого мы (в Linux - с устройства /dev/random) должны собирать
|
||
случайные числа. На самом деле трудно заполнить внутренний буфер Linux
|
||
энтропией; я говорил с Ted Ts'o и он сказал, что лучший способ заполнить
|
||
буфер это понажимать клавиши на Вашей клавиатуре. Хорошая секретность
|
||
имеет свою цену. Я нажимаю на клавиши Shift, Ctrl, Alt and CapsLock
|
||
потому, что эти клавиши не выводят что-либо на экран. И таким путем
|
||
Вы получаете ключи быстрее (это то, что делает PGP2).
|
||
|
||
Также проблема может быть в том, что другая программа забирает данные
|
||
из Вашего генератора случайных чисел (например из /dev/random).
|
||
|
||
<Q> И это действительно долго, когда я работаю на удаленной системе. Почему?
|
||
|
||
Никогда не делайте этого! Вы никогда не должны создавать ключи и
|
||
даже пользоваться GnuPG на удаленной системе потому, что Вы обычно
|
||
не имеете физического контроля за Вашей таблицей секретных ключей
|
||
(которая зачастую может быть неустойчива к атакам на подбор стандартных
|
||
паролей по словарю). Я настойчиво рекомендую всем создавать ключи только
|
||
на локальном компьютере (неподключенный лаптоп возможно наилучший выбор).
|
||
А если Вы вынуждены делать это на Вашем подключенном к сети компьютере
|
||
(я знаю, все мы так делаем) будьте уверены, что используете сильный пароль
|
||
для всех Ваших аккаунтов и для секретного ключа, и что Вы можете доверять
|
||
Вашему системному администратору.
|
||
|
||
Когда я проверял GnuPG на удаленной машине через ssh (это была не альфа);-)
|
||
я имел некоторые проблемы. Создание ключа занимамо *очень* долгое время,
|
||
так что я использовал специальный параметр --quick-random для создания
|
||
несекретных ключей, которые пригодны разве что для некоторых экспериментов.
|
||
|
||
<Q> Каковы различия между командами и параметрами?
|
||
|
||
Если Вы выполните 'gpg --help', то Вы получите два разных списка.
|
||
Первый - список команд, а второй - параметров. Всякий раз когда Вы
|
||
запускаете GPG, Вы [H b]должны[H /b] использовать хотя бы одну команду
|
||
(с одним исключением, см. ниже). Вы [H b]можете[H /b] использовать один
|
||
или более параметров. Команде следует, в точности по описанию, находиться
|
||
в конце списка аргуметов, после всех параметров. Если команда задает имя
|
||
файла (в основном все они это делают), имя файла должно быть в самом конце.
|
||
Базовый формат вызова gpg:
|
||
|
||
[H samp]
|
||
$ gpg [--option что-либо] [--option2] [--option3 что-либо] --command файл
|
||
[H /samp]
|
||
|
||
Некоторым параметрам требуются аргументы. Например параметр --output
|
||
(который можно сократить до -o) это параметр которому требуется имя файла.
|
||
Аргументы параметра должны следовать непосредственно после требующего их
|
||
параметра, иначе gpg не сможет узнать какой аргумент, какому параметру
|
||
принадлежит. Как параметр --output так и имя файла должны предшествовать
|
||
команде. Параметр --recipient (-r) задает имя или KeyID того, кому
|
||
шифруется сообщение и которые должны находиться справа от параметра -r.
|
||
Команда --encrypt (-e) должна находится после всех параметров и следовать
|
||
за файлом, который Вы хотите шифровать. Поэтому в данном примере командная
|
||
строка должна иметь следующий вид:
|
||
|
||
[H samp]
|
||
$ gpg -r Алиса -o секрет.txt -e тест.txt
|
||
[H /samp]
|
||
|
||
Если Вы используете полные названия параметров, читать станет легче:
|
||
|
||
[H samp]
|
||
$ gpg --recipient Алиса --output секрет.txt --encrypt тест.txt
|
||
[H /samp]
|
||
|
||
Если Вы шифруете файл с расширением ".txt" и Вы можете захотите
|
||
получить результат в текстовом виде ASCII-формата (не двоичном),
|
||
Вам следует воспользоваться параметром --armor (-a), который
|
||
не имеет аргументов:
|
||
|
||
[H samp]
|
||
$ gpg --armor --recipient Алиса --output секрет.txt --encrypt тест.txt
|
||
[H /samp]
|
||
|
||
Если предположить квадратные скобки вокруг параметров, это будет
|
||
выглядеть так:
|
||
|
||
[H samp]
|
||
$ gpg [--armor] [--recipient Алиса] [--output секрет.txt] --encrypt тест.txt
|
||
[H /samp]
|
||
|
||
Параметры могут следовать в произвольном порядке:
|
||
|
||
[H samp]
|
||
$ gpg --output секрет.txt --recipient Алиса --armor --encrypt тест.txt
|
||
[H /samp]
|
||
|
||
Если имя Вашего файла начинается с дефиса (например файл "-a.txt"),
|
||
GnuPG примет это за параметр и может сообщить об ошибке. В таких случаях
|
||
следует использовать "./-a.txt" или остановть обработку команд и параметров
|
||
двойным дефисом: "-- -a.txt".
|
||
|
||
[H B]Исключение составляет только одна команда:[H /B] одновременное
|
||
подписывание и шифрование. Для этого Вы следует скомбинировать обе команды,
|
||
как показано ниже:
|
||
|
||
[H samp]
|
||
$ gpg [--параметры] --sign --encrypt тест.txt
|
||
[H /samp]
|
||
|
||
<Q> Не могу удалить User ID из связки секретных ключей потому,
|
||
что он отсутствует в связке открытых ключей. Что делать?
|
||
|
||
Поскольку Вы можете выбрать User ID только из списка открытых ключей,
|
||
то прямого способа сделать это нет. Однако сделать это на самом деле
|
||
совсем не трудно. Создайте новый User ID с полностью идентичным именем
|
||
и увидите, что получилось два идентичных User ID в связке секретных
|
||
ключей. Теперь выберите данный User ID и удалите его. Оба User ID будут
|
||
удалены из связки секретных ключей.
|
||
|
||
<Q> Не могу удалить секретный ключ потому, что пропал открытый ключ.
|
||
Что делать?
|
||
|
||
Поиск ключа, для выполнения операций с ним, всегда производится по связке
|
||
открытых ключей, поэтому невозможно удалить секретный ключ не имея
|
||
открытого ключа. Обычно не должно возникать ситуаций, когда открытый ключ
|
||
потерян, а секретный ключ всё еще присутствует. Но такое случается,
|
||
поэтому в GnuPG имеется способ сделать это: просто используйте длинный
|
||
KeyID для указания удаляемого ключа, который можно получить применением
|
||
параметра --with-colons (см. 5 поле в строке начинающейся с "sec").
|
||
|
||
Если потерян открытый ключ и нужно взамен его создать новый для
|
||
продолжения использования секретного ключа, можно воспользоваться
|
||
утилитой gpgsplit так, как описано в вопросе <Rgpgsplit>.
|
||
|
||
<Q> Что означают понятия доверие, достоверность и доверие владельцу?
|
||
|
||
Ответ приведу с английским текстом, т.к. вопрос очень важен.
|
||
|
||
В GnuPG термин "доверие владельцу" используется вместо "доверие",
|
||
чтобы показать, что это есть величина, которая относится к ключу
|
||
и выражает степень Вашего доверия к владелецу данного ключа и к тому,
|
||
как он относится к подписыванию других ключей. "Достоверность"
|
||
(вычисленое доверие) есть величина, показывающая насколько высоким
|
||
GnuPG считает доверие к ключу (т.е. насколько можно быть уверенным в том,
|
||
что ключ действительно принадлежит тому, кто указан, как владелец данного
|
||
ключа). Для большей информации о степенях доверия см. главу "Сеть доверия"
|
||
в The GNU Privacy Handbook (существует в русском переводе).
|
||
|
||
With GnuPG, the term "ownertrust" is used instead of "trust" to
|
||
help clarify that this is the value you have assigned to a key
|
||
to express how much you trust the owner of this key to correctly
|
||
sign (and thereby introduce) other keys. The "validity", or
|
||
calculated trust, is a value which indicates how much GnuPG
|
||
considers a key as being valid (that it really belongs to the
|
||
one who claims to be the owner of the key). For more information
|
||
on trust values see the chapter "The Web of Trust" in The GNU
|
||
Privacy Handbook.
|
||
|
||
<Q> Как подписать файл патча?
|
||
|
||
Воспользуйтесь "gpg --clearsign --not-dash-escaped ...". Есть проблема с
|
||
--clearsign в том, что все строки начинающиеся с дефиса выделяются
|
||
как "- "; но поскольку diff создает множество строк начинающихся с дефиса,
|
||
то если они будут выделены таким образом, будет не очень хорошо для Вашего
|
||
патча ;-).
|
||
Для применения патча без удаления прозрачной подписи, можно использовать
|
||
специальный параметр --not-dash-escaped для отключения выделния таких
|
||
последовательностей. Не следует отсылать такие патчи по email потому,
|
||
что пробелы и завершители строк также являются частью подписи, а почтовик
|
||
может не сохранить их. Если Вы хотите послать файл почтой, то можно
|
||
подписать его используя Ваш MUA (Mail User Agent, т.е Почтовый агент).
|
||
|
||
<Q> Где параметр "encrypt-to-self"?
|
||
|
||
Используйте "--encrypt-to Ваш_KeyID". Можно использовать больше, чем одну
|
||
копию данного параметра. Временно отменить действие данного параметра
|
||
можно использованием параметра "--no-encrypt-to".
|
||
|
||
<Q> Как избавиться от строки Version и добавить комментарий в заголовках
|
||
сообщений кодированных в ASC-формате?
|
||
|
||
Используйте " --no-version --comment '' ". Учтите, что стандарт требует
|
||
обязательного наличия пустой строки.
|
||
|
||
<Q> Что означает "Используется таблица символов xxxx."?
|
||
|
||
Вы увидите данное сообщение, когда необходимо преобразование введенных
|
||
данных в UTF-8. Набор символов Вашей системы отличен от UTF-8 и GnuPG
|
||
вынуждено преобразовать введенную информацию из используемого Вами набора
|
||
символов в соответствующий набор символов UTF-8.
|
||
По умолчанию используется стандартный набор символов "iso-8859-1".
|
||
Вы можете указать используемый системой набор символов используя параметр
|
||
" --charset ". Важно, чтобы заданная таблица символов соответствовала
|
||
используемой в Вашей системе. В противном случае Вы должны пользоваться
|
||
только символами имеющими 7-битное представление, т.к. все 8-битные
|
||
символы будут преобразованы в UTF-8 и Вы можете столкнуться с серьезными
|
||
проблемами, если неверно указали используемую таблицу символов.
|
||
|
||
Для русскоязычной аудитории: не рекомендуется использовать русский язык
|
||
в User ID и коментариях. На момент перевода GnuPG поддерживает только
|
||
UTF-8 и KOI8-R, которые могут использоваться на Unix системах, но не
|
||
используются в Windows. В Windows категорически запрещается использовать
|
||
русский язык в именах и комментариях User ID! Хотя некоторые
|
||
программы-оболочки могут понимать (а может и нет) большее число кодировок.
|
||
|
||
<Q> Как просмотреть список KeyID для которых зашифровано сообщение?
|
||
|
||
[H samp]
|
||
$ gpg --batch --decrypt --list-only --status-fd 1 2>/dev/null |
|
||
awk '/^\[GNUPG:\] ENC_TO / { print $3 }'
|
||
[H /samp]
|
||
|
||
<Q> Почему я не могу расшифровать файлы зашифрованные симметричным
|
||
шифром (-c) используя GnuPG версий ниже 1.0.1.
|
||
|
||
Версии GnuPG ниже 1.0.1 содержали ошибку, которая проявлялась только
|
||
при использовании шифров 3DES и Twofish для симметричного шифрования
|
||
(они никогда не использовались, как шифры по умолчанию).
|
||
Ошибка исправлена, но для расшифровки таких файлов необходимо запустить
|
||
gpg с параметром " --emulate-3des-s2k-bug "; расшифровать файл и
|
||
зашифровать снова без данного параметра.
|
||
|
||
Замечение: Данный параметр удален в GnuPG версии 1.1.0 и более новых,
|
||
поэтому Вам придется воспользоваться версией между 1.0.1 и 1.0.7 для
|
||
расшифровки таких файлов.
|
||
|
||
<Q> Как можно автоматизировать работу с GnuPG?
|
||
|
||
Следует воспользоваться параметром --batch и не использовать паролей,
|
||
т.к. обычно нет возможности хранить их безопаснее, чем в связке секретных
|
||
ключей. Рекомендуем следующий способ создания ключей для автоматизации
|
||
работы:
|
||
|
||
На безопасном компьютере:
|
||
[H ol]
|
||
[H li] Если Вам требуется автоматическое подписывание, создайте для
|
||
Вашего ключа - подключ имеющий возможность подписи (используйте
|
||
интерактивное меню редактирования предоставляемое командой
|
||
" gpg --edit-key KeyID ", введите "addkey" и выберите типа ключа DSA).
|
||
[H li] Необходим пароль.
|
||
[H li] gpg --export-secret-subkeys --no-comment ВашПодключ >secring.auto
|
||
[H li] Скопируйте secring.auto и файл таблицы открытых ключей во временный
|
||
каталог.
|
||
[H li] Перейдите в этот каталог.
|
||
[H li] " gpg --homedir . --edit ВашПодключ " и используйте "passwd" для
|
||
удаления пароля из подключа. Можете заодно удалить и все неиспользуемые
|
||
подключи.
|
||
[H li] Скопируйте secring.auto на дискету и вставьте ее в нужный компьютер.
|
||
[H /ol]
|
||
|
||
На нужном компьютере:
|
||
[H ol]
|
||
[H li] Установите secring.auto, как связку секретных ключей.
|
||
[H li] Теперь можно запустить Ваш новый сервис. Хорошо бы также установить
|
||
систему обнаружения вторжений, для предупреждения об удачном
|
||
вторжении, после чего Вы сможете отозвать все подключи
|
||
установленные на данном компьютере и создать новые.
|
||
[H /ol]
|
||
|
||
<Q> Какие почтовые клиенты можно использовать совместно с GnuPG?
|
||
|
||
Использование GnuPG для шифрования почтовой корреспонденции это
|
||
одно из наиболее популярных его применений. Некоторые почтовые программы
|
||
или почтовые агенты (MUA) умеют работать с GnuPG. На данный момент
|
||
существует два способа шифрования с применением GnuPG: "старый метод"
|
||
с применением ASCII-кодирования (т.е. прозрачные подписи и шифрование)
|
||
и в соответствиии с RFC 2015 (ранее именуемое PGP/MIME, сейчас OpenPGP).
|
||
Последнее полностью поддерживает MIME. Некоторые MUA поддерживают только
|
||
один из этих методов. Поддержка может быть как встроена в MUA, так и
|
||
реализоваться в виде подключаемых подулей "плагинов", а также может
|
||
выполняться внешним, дополнительным программным обеспечением.
|
||
|
||
Нижепреведённый список неполон:
|
||
|
||
[H pre]
|
||
MUA OpenPGP ASCII Как? (N,P,T)
|
||
-------------------------------------------------------------
|
||
Calypso В Д П (Unixmail)
|
||
Elm В Д Д (mailpgp,morepgp)
|
||
Elm ME+ В Д С
|
||
Emacs/Gnus Д Д Д (Mailcrypt,gpg.el)
|
||
Emacs/Mew Д Д С
|
||
Emacs/VM В Д Д (Mailcrypt)
|
||
Evolution Д Д С
|
||
Exmh Д Д С
|
||
GNUMail.app Д Д П (PGPBundle)
|
||
GPGMail Д Д В
|
||
KMail (<=1.4.x) В Д В
|
||
KMail (1.5.x) Д(П) Д(В) П/В
|
||
Mozilla Д Д П (Enigmail)
|
||
Mulberry Д Д П
|
||
Mutt Д Д С
|
||
Sylpheed Д Д С
|
||
Sylpheed-claws Д Д С
|
||
TkRat Д Д С
|
||
XEmacs/Gnus Д Д Д (Mailcrypt)
|
||
XEmacs/Mew Д Д С
|
||
XEmacs/VM В Д Д (Mailcrypt)
|
||
XFmail Д Д С
|
||
|
||
С-Сам, встроена поддержка , П-плагин , Д-Дополнительной программой
|
||
[H /pre]
|
||
|
||
Ниже дан список несвободных MUA. Проект GNU не рекомендует применение
|
||
этих программ, но они представлены для полноты информации.
|
||
|
||
[H pre]
|
||
MUA OpenPGP ASCII How? (N,P,T)
|
||
-------------------------------------------------------------
|
||
Apple Mail Д Д П (GPGMail)
|
||
Becky2 Д Д П (BkGnuPG)
|
||
Eudora Д Д П (EuroraGPG)
|
||
Eudora Pro Д Д П (EudoraGPG)
|
||
Lotus Notes Н Д П
|
||
Netscape 4.x Н Д П
|
||
Netscape 7.x Д Д П (Enigmail)
|
||
Novell Groupwise Н Д П
|
||
Outlook Н Д П (G-Data)
|
||
Outlook Express Н Д П (GPGOE)
|
||
Pegasus Н Д П (QDPGP,PM-PGP)
|
||
Pine Н Д Д (pgpenvelope,(gpg|pgp)4pine)
|
||
Postme Н Д П (GPGPPL)
|
||
The Bat! Д(>=1.62) Д С (Ritlabs)
|
||
[H /pre]
|
||
|
||
Хороший обзор поддержки OpenPGP можно найти на:[H br]
|
||
[H a href=http://www.openpgp.fr.st/courrier_en.html]<http://www.openpgp.fr.st/courrier_en.html>[H /a] и[H br]
|
||
[H a href=http://www.bretschneidernet.de/tips/secmua.html]<http://www.bretschneidernet.de/tips/secmua.html>[H /a].
|
||
|
||
Пользователи программ MUA для Win32 для использования OpenPGP могут рассмотреть
|
||
применение GPGrelay [H a href=http://gpgrelay.sourceforge.net]<http://gpgrelay.sourceforge.net>[H /a], это небольшой
|
||
email-ориентированный сервер, который использует GnuPG для предоставления
|
||
возможности почтовым клиентам отправлять и принимать сообщения
|
||
соответствующие PGP-MIME (RFC 2015).
|
||
|
||
<Q> Не могу найти библиотеки gpg?
|
||
|
||
Про них часто спрашивают. Однако текущая точка зрения разработчиков GnuPG,
|
||
то что это создаст некоторые проблемы безопасности и следовательно
|
||
не стоит ожидать подобного в ближайшем будущем. Однако в некоторых
|
||
областях возможно применение gpgme. Вы найдете его на [H a href=[$hGPGFTP]/gcrypt/alpha/gpgme]<[$hGPGFTP]/gcrypt/alpha/gpgme>[H /a].
|
||
|
||
<Q> Я благополучно создал сертификат отзыва, но я не понимаю, как отослать его
|
||
на сервер ключей.
|
||
|
||
Большинство серверов ключей не принимают 'голый' сертификат отзыва.
|
||
Вам придется сначала импортировать сертификат в GnuPG:
|
||
|
||
[H samp]
|
||
$ gpg --import МойСертификатОтзыва.asc
|
||
[H /samp]
|
||
|
||
затем отошлите отозванный ключ на сервер ключей:
|
||
|
||
[H samp]
|
||
$ gpg --keyserver keyserver.kjsl.com --send-keys Мой_KeyID
|
||
[H /samp]
|
||
|
||
(или воспользуйтесь для этого Web интерфейсом сервера ключей).
|
||
|
||
<Dhomedir>
|
||
<Q> Как перенести файл таблицы связок ключей в другой каталог?
|
||
|
||
GnuPG хранит несколько файлов в специальном домашнем каталоге.
|
||
Это файл персональных настроек, pubring.gpg, secring.gpg, trustdb.gpg,
|
||
и другие. GnuPG всегда будет создавать и использовать эти файлы.
|
||
Для Unix систем домашним обычно будет каталог " ~/.gnupg ";
|
||
для Windows " C:\gnupg\ ".
|
||
|
||
Если Вы хотите переместить эти файлы в другое место,
|
||
воспользуйтесь параметром:
|
||
|
||
[H samp]
|
||
--homedir /Мой/путь/
|
||
[H /samp]
|
||
|
||
и тогда GnuPG создаст эти файлы в указанном каталоге. Файл таблицы открытых
|
||
ключей будет в " /Мой/путь/pubring.gpg ". Таким образом можно хранить
|
||
свои секреты на дискете. Не используйте для этого параметр " --keyring ",
|
||
т.к. он задает дополнительные файлы связок ключей.
|
||
|
||
<Q> Как проверить подписанный пакет?
|
||
|
||
Перед проверкой подписи, сопровождающей пакет, необходимо сперва
|
||
импортировать ключ поставщика подписи, организации или человека
|
||
создавщего подпись в используемую таблицу связок ключей. Для
|
||
продотвращения предупреждений от GnuPG ключу следует иметь степень
|
||
достоверности (или подписать его локально).
|
||
|
||
Скачайте файл с отделенной подписью вместе с пакетом. Обычно эти файлы
|
||
имеют тоже имя, что и подписанный пакет со следующими расширениями (.sig)
|
||
для бинарных или (.asc) для ASCII-кодированных подписей.
|
||
|
||
После того, как ключ импортирован и пакет с сопровождающей его подписью
|
||
получен, используйте:
|
||
|
||
[H samp]
|
||
$ gpg --verify ФайлПодпись ПодписанныйФайл
|
||
[H /samp]
|
||
|
||
Если файл подписи имеет то же имя, что и файл пакета, то для проверки
|
||
пакета достаточно указать только файл подписи, тогда GnuPG получит
|
||
имя проверяемого файла путем удаления из имени расширения .sig или .asc.
|
||
Например, для проверки пакета названного Пакет.tar.gz используйте:
|
||
|
||
[H samp]
|
||
$ gpg --verify Пакет.tar.gz.sig
|
||
[H /samp]
|
||
|
||
<Q> Как экспортировать связку ключей только с избранными ключами?
|
||
|
||
Если Вы желаете создать таблицу связок ключей имеющую только небольшое
|
||
подмножество ключей из Вашей основной таблицы связок, то просто укажите
|
||
ключи, которые Вы хотите экспортировать:
|
||
|
||
[H samp]
|
||
$ gpg --armor --export Ключ1 Ключ2 Ключ3 Ключ4 > Ключи1-4.asc
|
||
[H /samp]
|
||
|
||
<Dgpgsplit>
|
||
<Q> Имеется секретный ключ, но я потерян открытый ключ. Что можно сделать?
|
||
|
||
Все OpenPGP секретные ключи имеют внутри себя копию открытого ключа
|
||
и имеется возможность создать новый открытый ключ используя секретный.
|
||
|
||
Утилита для преобразования секретного ключа в открытый ключ (сейчас
|
||
это параметр запуска утилиты gpgsplit) включена в дистрибутив GnuPG
|
||
версии 1.2.1 и новейшие (а также может быть найдена в CVS).
|
||
Пример использования:
|
||
|
||
[H samp]
|
||
$ gpgsplit --no-split --secret-to-public secret.gpg >publickey.gpg
|
||
[H /samp]
|
||
|
||
Сперва следует экспортировать секретный ключ и преобразовывать
|
||
только его. Хотя использование всей таблицы также будет работать.
|
||
После завершения, файл publickey.gpg можно импортировать в GnuPG
|
||
обычным способом.
|
||
|
||
<Q> Письмо с подписью имеет неверную подпись. Почему?
|
||
|
||
Если Вы используете web-mail:
|
||
Убедитесь, что в настройках web-mail адреса отключено использование
|
||
HTML форматирования для отправляемых сообщений имеющих прозрачную подпись.
|
||
Такое форматирование может дополнить сообщение пробелами, символами
|
||
табуляции и в итоге дать неверную подпись. Отправленное чистотекстовым
|
||
сообщение получатель сможет скопировать текстовый файл для проверки или
|
||
возможно web-mail сервис может позволить приложить подписанное сообщение,
|
||
как файл, если нет возможности отправки его чистотекстовым.
|
||
|
||
Для русскоязычной аудитории: существует также проблема таблиц символов.
|
||
Сообщение на русском языке может подвергнуться перекодировке по пути
|
||
следования (и не один раз). Например отправленное в cp1251 сообщение
|
||
может прийти к получателю в koi8-r. Так же многие почтовые программы
|
||
по разному совмещают проверку/подписывание сообщений с их
|
||
перекодировыванием в другие кодировки. Например почтовая программа
|
||
в Windows показывает сообщение в windows кодировке cp1251, а
|
||
рекомендуемая кодировка для email koi8-r и если в настройках программы
|
||
выбрана эта кодировка для отправки сообщений, то почтовый агент может
|
||
подписать тескт в cp1251, а затем сконвертировать его в koi8-r, что
|
||
приведет к неверной подписи, если программа у получателя не имеет
|
||
такой же ошибки (или не знает о ней). Аналогично может происходить
|
||
и при проверке сообщения созданного в koi8-r, но отображаемого
|
||
в cp1251.
|
||
|
||
|
||
<S> ПРОБЛЕМЫ СОВМЕСТИМОСТИ
|
||
|
||
<Dcompat>
|
||
<Q> Как зашифровать сообщение в GnuPG так, чтобы его можно было бы
|
||
расшифровать в PGP?
|
||
|
||
Это зависит от версии PGP.
|
||
|
||
[H ul]
|
||
[H li]PGP 2.x[H br]
|
||
Обычно нельзя этого сделать потому, что PGP 2.x обычно использует шифр IDEA,
|
||
который не поддерживается GnuPG, т.к. данный алгоритм шифрования патентован
|
||
(см. <Ridea>), но если Вы имеете модифицированную версию PGP можете
|
||
попробовать:
|
||
|
||
[H samp]
|
||
$ gpg --rfc1991 --cipher-algo 3des ...
|
||
[H /samp]
|
||
|
||
Пожалуйста не пользуйтесь каналами для передачи данных в gpg,
|
||
а сделайте это используя файл; иначе PGP 2 не сможет понять это.
|
||
|
||
Вы не сможете зашифровать симметричным шифром файл для PGP 2.
|
||
|
||
|
||
[H li]PGP 5.x и новейшие[H br]
|
||
Необходимо использовать два параметра:
|
||
|
||
[H samp]
|
||
--compress-algo 1 --cipher-algo cast5
|
||
[H /samp]
|
||
|
||
Можно также воспользоваться "3des" вместо "cast5"; "blowfish" работает
|
||
не со всеми версиями PGP 5. Также можно добавить параметр:
|
||
|
||
[H samp]
|
||
compress-algo 1
|
||
[H /samp]
|
||
|
||
в файл персональных настроек " ~/.gnupg/gpg.conf ", что не помешает
|
||
нормальной работе GnuPG.
|
||
Это относится и к симметричному шифрованию.
|
||
[H /UL]
|
||
|
||
<Q> Как перейти с PGP 2.x на GnuPG?
|
||
|
||
PGP 2 использует RSA и IDEA алгоритмы шифрования. Срок патента на RSA
|
||
истек и RSA поддерживается GnuPG с версии 1.0.3, а IDEA алгоритм остается
|
||
патентованным до 2007. При определенных условиях можно пользоваться
|
||
IDEA даже сейчас. В этом случае следует прочитать вопрос <Ridea>
|
||
о том, как получить поддержку IDEA в GnuPG и прочитать
|
||
[H a href=[$hGPGHTTP]/gph/en/pgp2x.html]<[$hGPGHTTP]/gph/en/pgp2x.html>[H /a] для выполнения перехода.
|
||
|
||
<Q> (удален)
|
||
|
||
(пусто)
|
||
|
||
<Q> Почему PGP 5.x не сможет шифровать сообщения некоторыми ключами?
|
||
|
||
PGP, Inc. отказалость от использования ключей ElGamal типа 20 даже для
|
||
шифрования. Они поддерживают только тип 16 (котрый идентичен, по крайней
|
||
мере для расшифрования). Для больше совместимости, GnuPG (с версии 0.3.3),
|
||
также использует тип 16 для подключей ElGamal, которые создаются, если
|
||
выбран рекомендованный по умолчанию алгоритм ключа. Можно добавить
|
||
ключ ElGamal типа 16 в связку ключей.
|
||
|
||
<Q> Почему PGP 5.x не сможет проверить мои подписи?
|
||
|
||
PGP 5.x не понимает подписи v4, но OpenPGP требует v4 подписей, что
|
||
GnuPG и делает по умолчанию. Используйте параметр "--force-v3-sigs" для
|
||
создания v3 подписей.
|
||
|
||
<Q> Как перенести степени доверия владельцам ключей из PGP в GnuPG?
|
||
|
||
Существует скрипт в каталоге tools, что бы помочь Вам. После импорта
|
||
из PGP таблицы связок ключей можно выполнить следующию команду:
|
||
|
||
[H samp]
|
||
$ lspgpot pgpkeyring | gpg --import-ownertrust
|
||
[H /samp]
|
||
|
||
где pgpkeyring это оригинальная таблица связок ключей, а не GnuPG таблица,
|
||
которую Вы возможно создали на первом этапе.
|
||
|
||
<Q> PGP не нравится мой секретный ключ.
|
||
|
||
Старые версии PGP могут не работать с некоторыми пакетами создаваемыми
|
||
GnuPG. Эти пакеты создаются в полном соотвествии с OpenPGP; однако PGP
|
||
не настоящее OpenPGP. Обойти это можно экспортировав секретные ключи
|
||
следующей командой:
|
||
|
||
[H samp]
|
||
$ gpg --export-secret-keys --no-comment -a Ваш-KeyID
|
||
[H /samp]
|
||
|
||
Другая возможная причина: по умолчанию GnuPG шифрует секретный ключ
|
||
симметричным шифром Blowfish. Старые версии PGP поймут только симметричные
|
||
шифры 3DES, CAST5 или IDEA. Используйте следующий способ, чтобы
|
||
перешифровать секретный ключ gpg другим шифром:
|
||
|
||
[H samp]
|
||
$ gpg --s2k-cipher-algo=CAST5 --s2k-digest-algo=SHA1
|
||
--compress-algo=1 --edit-key <User ID>
|
||
[H /samp]
|
||
|
||
Затем командой passwd можно сменить пароль (можно сменить его на тотже
|
||
самый, но он зашифруется уже шифром CAST5).
|
||
|
||
Сейчас можно экспортировать ключ и PGP должно принять его.
|
||
|
||
Для PGP 6.x используются следующие параметры экспорта:
|
||
|
||
[H samp]
|
||
$ gpg --s2k-cipher-algo 3des --compress-algo 1 --rfc1991
|
||
--export-secret-keys <KeyID>
|
||
[H /samp]
|
||
|
||
<Doptions>
|
||
<Q> GnuPG больше не инсталлирует файл " ~/.gnupg/options " file. Он не нужен?
|
||
|
||
Нет. Файл " ~/.gnupg/options" переименован в " ~/.gnupg/gpg.conf" для
|
||
всех версий новее 1.1.92. Если файл " ~/.gnupg/options " существует, то
|
||
он будет найден при установке и всё еще будет использован, но данное
|
||
переинменование потребуется для совместимости по именам файлов с будущими
|
||
инструментами. Существующий файл настроек можно переименовать в gpg.conf
|
||
для обновляющихся пользователей и получающих сообщение, что "файл
|
||
настроек старого формата проигнорирован" (это происходит, когда программа
|
||
обнаруживает оба файла и gpg.conf, и options).
|
||
|
||
<Q> Как экспортировать ключи GnuPG для использования в PGP?
|
||
|
||
Данный вопрос задают настолько часто, что здесь получилось целое HOWTO:
|
||
|
||
PGP сможет (для большинства типов ключей) использовать созданные в GnuPG
|
||
секретные ключи. Проблемы возникают от того, что GnuPG поддерживает
|
||
немного больше положений стандарта OpenPGP, чем PGP. Если секретный ключ
|
||
использует одно из них, то PGP отвергнет их или позднее могут возникать
|
||
какие-либо проблемы. Учтите, что PGP совсем не признает ElGamal ключи
|
||
предназначенные для подписи, так что они неприменимы ни в одной версии.
|
||
|
||
Данные инструкции применимы для GnuPG 1.0.7 и последующих,
|
||
а также для PGP 7.0.3 и последующих.
|
||
|
||
Начнем с редактирования ключа. Большинство параметров не обязательны,
|
||
т.к. значения используемые по умолчанию правильны, но лучше воспризвести всё
|
||
в точности потому, что некоторые иные значения параметров могут быть заданы
|
||
в файле персональный настроек.
|
||
|
||
[H samp]
|
||
$ gpg --s2k-cipher-algo cast5 --s2k-digest-algo sha1 --s2k-mode 3
|
||
--simple-sk-checksum --edit KeyID
|
||
[H /samp]
|
||
|
||
Отключаем некоторые особенности GnuPG. Устанавливаем предпочтения
|
||
для шифров, хешей и сжатия в понимаемые PGP. (Да, Я понимаю, что
|
||
список шифров получился своеобразный, но это то, что использует PGP
|
||
без IDEA).
|
||
|
||
[H samp]
|
||
> setpref S9 S8 S7 S3 S2 S10 H2 H3 Z1 Z0
|
||
[H /samp]
|
||
|
||
Теперь сохраняем список в ключе.
|
||
|
||
[H samp]
|
||
> updpref
|
||
[H /samp]
|
||
|
||
И наконец, мы должны расшифровать секретный ключ и зашифровать заново
|
||
шифром, который понравится PGP. Он указан в строке параметров при
|
||
вызове команды --edit выше, поэтому сейчас необходимо только сменить
|
||
пароль. Можно использовать и старый пароль, а можно воспользоваться
|
||
возможностью сменить его наконец.
|
||
|
||
[H samp]
|
||
> passwd
|
||
[H /samp]
|
||
|
||
Сохраняем изменения.
|
||
|
||
[H samp]
|
||
> save
|
||
[H /samp]
|
||
|
||
Сейчас можно использовать обычный экспорт:
|
||
|
||
[H samp]
|
||
$ gpg --export KeyID > МойОткрытыйКлюч.pgp[H br]
|
||
$ gpg --export-secret-key KeyID > МойСекретныйКлюч.pgp
|
||
[H /samp]
|
||
|
||
За эту информацию спасибо David Shaw!
|
||
|
||
|
||
<S> ПРОБЛЕМЫ и СООБЩЕНИЯ ОБ ОШИБКАХ
|
||
|
||
<Q> Что означает сообщение "ВНИМАНИЕ: используется незащищенная память!"
|
||
|
||
GnuPG требует установки прав setuid(root) на многих системах.
|
||
Это необходимо для блокирования страниц памяти. Блокирование страниц
|
||
не позволяет операционной системе сохранять их на диск, что позволяет
|
||
хранить Ваши данные в секрете. Если Вы не получаете это сообщение,
|
||
то видимо операционая система позволяет блокировать страницы
|
||
непревелигированным пользователям. GnuPG отказывается от
|
||
привелигированного режима сразу после блокирования страниц.
|
||
|
||
Для установки прав setuid(root) исполняемому файлу gpg выполните:
|
||
|
||
[H samp]
|
||
$ chmod u+s /путь/к/gpg
|
||
[H /samp]
|
||
|
||
или
|
||
|
||
[H samp]
|
||
$ chmod 4755 /путь/к/gpg
|
||
[H /samp]
|
||
|
||
Некоторые люди предпочитают избегают применения setuid(root), если
|
||
нет каких-либо причин для создания особой секретности. Посоветуйтесь
|
||
с системным администратором, если нет возможности выполнить указанные
|
||
действия самостоятельно.
|
||
|
||
На UnixWare 2.x и 7.x следует установить GnuPG с привилегиями 'plock'
|
||
для получения аналогичного эффекта:
|
||
|
||
[H samp]
|
||
$ filepriv -f plock /путь/к/gpg
|
||
[H /samp]
|
||
|
||
Если нет возможности или Вы не хотите устанавливать для GnuPG права
|
||
setuid(root), можно воспользоваться параметром "--no-secmem-warning"
|
||
или добавить:
|
||
|
||
[H samp]
|
||
no-secmem-warning
|
||
[H /samp]
|
||
|
||
в файл персональных настроек ~/.gnupg/gpg.conf (это избавит
|
||
от предупреждений).
|
||
|
||
На некоторых системах (например Windows) GnuPG не блокирует страницы
|
||
памяти и старые версии GnuPG (<=1.0.4) предупреждали:
|
||
|
||
[H samp]
|
||
gpg: Please note that you don't have secure memory
|
||
gpg: Учтите, что Вы не имеете безопасной памяти
|
||
[H /samp]
|
||
|
||
Данное предупреждение нельзя было отключить вышеуказанным параметром потому,
|
||
что причина его возникновения очень серьезна. Однако это слишком смущало
|
||
пользователей, поэтому сообщение было убрано.
|
||
|
||
<Q> Поддержка больших файлов (LFS) не работает.
|
||
|
||
LFS корректно работает начиная с версии 1.0.4. Если configure не
|
||
видит этого - попробуйте другой компилятор. egcs 1.1.2 работает
|
||
прекрасно, другие gccs иногда нет. Некоторые проблемы компиляции
|
||
GnuPG 1.0.3 и 1.0.4 на HP-UX и Solaris были вызваны плохой
|
||
поддержкой LFS.
|
||
|
||
<Q> При редактировании ключа значения доверий отображаются некорректно после
|
||
подписывания User ID. Почему?
|
||
|
||
Это вызвано тем, что некоторая информация хранится непосредственно в
|
||
trustdb, но все вычисления степеней доверия могут быть выполнены только
|
||
после команды сохранения " save ". Это трудно поправимая ошибка архитектуры
|
||
программы, которая будет пересмотрена в какой-нибудь из будущих версий.
|
||
|
||
<Q> В чем смысл сообщения "skipping pubkey 1: already loaded"?
|
||
|
||
Шифр RSA входит в пакет GnuPG начиная с версии 1.0.3. Если Вы всё еще
|
||
используете параметр "load-extension rsa" в файле персональных
|
||
параметров Вы увидите данное сообщение.
|
||
Просто удалите данную команду загрузки модуля из файла персональных
|
||
параметров.
|
||
|
||
<Q> GnuPG 1.0.4 не создает ~/.gnupg.
|
||
|
||
Это известная ошибка, уже исправленная в последовавшей версии GnuPG.
|
||
|
||
<Q> Подписи ElGamal не проверяются всеми версиями начиная с 1.0.2
|
||
|
||
Используйте параметр --emulate-md-encode-bug.
|
||
|
||
<Q> Старые версии GnuPG не могут проверить ElGamal подписи
|
||
|
||
Обновите GnuPG до версии 1.0.2 или новее.
|
||
|
||
<Q> При использовании --clearsign, в тексте появляются дополнительные минусы.
|
||
Почему?
|
||
|
||
Это называется отделенный черточками текст, что является требованием
|
||
OpenPGP. Это происходит всегда, когда строка начинается с черточки ("-")
|
||
и необходмо для четкого отделения структур подписи (типа
|
||
"-----BEGIN PGP SIGNATURE-----") от других строк начинающихся с более
|
||
чем двух черточек.
|
||
|
||
Если Вы используете GnuPG для обработки подобных сообщений, то все
|
||
дополнительные черточки удалятся. Хорошие почтовые клиенты (MUA)
|
||
удаляют эти черточки при отображении сообщения.
|
||
|
||
<Q> Что означает сообщение "не могу обработать эти множественные подписи"
|
||
|
||
Из-за различий в форматах сообщений GnuPG не всегда может правильно
|
||
разделить файл с множественными подписями на части. Данное сообщение
|
||
указывает на проблемы с входными данными.
|
||
|
||
Единственный способ иметь множественные подписи в файле это использование
|
||
формата OpenPGP с пакетами One-Pass Signature (которые используются GnuPG
|
||
по умолчанию) или формат прозрачных подписей.
|
||
|
||
<Q> Отправил ключ на сервер ключей, но ничего не произошло
|
||
Вы счастливый обладатель версии GnuPG 1.0.2 или старше под Windows.
|
||
В этих версиях GnuPg данная функция еще не была реализована, но это
|
||
не было ошибкой, поэтому и предупреждений никаких не было. Новейшие
|
||
версии сообщают об этом.
|
||
Обновите GnuPG до версии 1.0.4 или более новой.
|
||
|
||
<Q> Что значит сообщение "gpg: waiting for lock ..."
|
||
|
||
Старые версии gpg любили ненормально завершаться и оставлять
|
||
блокировочные файлы. Зайдите в ~/.gnupg удалеите все " .*.lock " файлы.
|
||
|
||
<Q> Старые версии GnuPG (например 1.0) имеют проблемы с ключами созданными
|
||
новейшими версиями GnuPG
|
||
|
||
Начиная с версии 1.0.3, ключи в GnuPG создаются с предпочтением
|
||
шифра TWOFISH (и шифра AES начиная с версии 1.0.4), и что тоже важно,
|
||
они совместимы с новым методом шифрования MDC. В будущем это станет частью
|
||
OpenPGP и поддерживается также PGP 7. Новый метод предотвращает атаки
|
||
на системы шифрования почты.
|
||
|
||
Это означает, что версии GnuPG до 1.0.3 имеют проблемы с новыми ключами.
|
||
По причине исправления ошибок и прорех в безопасности, Вам настоятельно
|
||
рекомендуется использовать последнюю стабильную версию GnuPG. В качестве
|
||
временной меры, для решения проблемы, Вы можете принудить GnuPG использовать
|
||
старый шифр по умолчанию в качестве основного, добавив:
|
||
|
||
[H samp]
|
||
cipher-algo cast5
|
||
[H /samp]
|
||
|
||
в Ваш файл персональных параметров.
|
||
|
||
<Q> Начиная с 1.0.4, я вижу "не рекомендуем данный алгоритм шифрования ..."
|
||
|
||
Если предупреждение появляется сразу после создания нового ключа, то
|
||
Вы являетесь свидетелем ошибки версии 1.0.4. Она использует новый шифр AES
|
||
(Rijndael), который некорректно называет "нерекомендуемым".
|
||
Игнорируйте данной предупреждение. Все последовавшие затем версии
|
||
GnuPG не имеют данной проблемы.
|
||
|
||
<Q> Некоторые даты отображаются как ????-??-??. Почему?
|
||
|
||
Во многих реализациях libc, даты превышающие 2038-01-19 не могут быть
|
||
правильно отображены. 64-bit ОС не имеют данной проблемы. Чтобы не
|
||
выводить неверное значение даты GnuPG заменяет ее вопросиками.
|
||
Если хотите получить корректное значение - используйте параметры
|
||
--with-colons и --fixed-list-mode.
|
||
|
||
<Q> Проблема всё еще очтается. Как сообщить об ошибке?
|
||
|
||
А Вы уверены, что Ваша проблема еще не обсуждалась в почтовых рассылках?
|
||
Вы просмотрели список ошибок (ссылку Вы найдете в документации)?
|
||
Если не уверены в том, что это ошибка, отправьте письмо в gnupg-devel
|
||
рассылку. В противном случае воспользуйтесь системой отслеживания ошибок
|
||
GUUG [H a href=http://bugs.guug.de/Reporting.html]<http://bugs.guug.de/Reporting.html>[H /a].
|
||
|
||
<Q> Почему GnuPG не поддерживает X.509 сертификаты?
|
||
|
||
GnuPG во-первых, и это главное, внедряет OpenPGP стандарт (RFC 2440),
|
||
который использует инфраструктуру отличную от X.509.
|
||
|
||
Всё это криптосистемы с открытым ключом, но открытые ключи в них
|
||
на самом деле обрабатываются различным образом.
|
||
|
||
<Q> Почему национальные символы в моем User ID выглядят, мягко говоря, странно?
|
||
|
||
В соотвествии с OpenPGP GnuPG сохраняет User ID строки (и другие
|
||
вещи) используя UTF-8. В процессе перекодирования в формат Unicode,
|
||
многие национальные символы кодируются как дву- или трех-байтовые
|
||
последовательности. Например, å (0xE5 в ISO-8859-1)
|
||
станет Ã¥ (0xC3, 0xA5). Это также может быть причиной того,
|
||
почему серверы ключей не находях Ваш ключ.
|
||
|
||
<Q> Ошибка 'sed' при запуске ./configure на Mac OS X
|
||
|
||
Это будет исправлено после обновления GnuPG до autoconf-2.50.
|
||
До тех пор: найдите строку CDPATH в скрипте configure вставьте после него:
|
||
|
||
[H samp]
|
||
unset CDPATH
|
||
[H /samp]
|
||
|
||
<Q> Почему GnuPG 1.0.6 падает на связках ключей из версии 1.0.7?
|
||
|
||
Есть небольшая ошибка в версии 1.0.6, из-за которой которой некорректно
|
||
обрабатываются пакеты доверий. Возможно понадобится данный патч, если нет
|
||
возможности обновить GnuPG:
|
||
|
||
[H a href=http://www.gnupg.org/developer/gpg-woody-fix.txt]<http://www.gnupg.org/developer/gpg-woody-fix.txt>[H /a]
|
||
|
||
<Q> После обновления GmuPG до версии 1.0.7 файлы связок ключей очень медленно
|
||
обрабатываются. Что делать?
|
||
|
||
Был изменен способ хранения подписей для сохранения совместимости с v3
|
||
подписями. Можете воспользоваться новым параметром --rebuild-keydb-caches,
|
||
который был добавлен в данной версии и предназначен для миграции на новые
|
||
версии и также увеличивает скорость многих операций со связками ключей.
|
||
|
||
<Q> Разве полное доверие одному User ID-у на ключе не отменяет
|
||
предупреждающего сообщения, при шифровании сообщения для другого User ID?
|
||
|
||
Нет. В GnuPG версии 1.2.1 и более ранних имелась ошибка в способе
|
||
определения достоверности ключей. В процессе разработки GnuPG 1.2.2,
|
||
ошибка была обнаружена в коде вычисления достоверности. Ошибка приводила
|
||
к тому, что для ключей и имеющиех больше одного User ID достоверность
|
||
одного User ID распространялась на все присутствующие в ключе.
|
||
Ошибка исправлена в GnuPG версии 1.2.2 и рекомендуется обновить GnuPG.
|
||
Больше информации и патч для некоторых до-1.2.2 версий GnuPG см. здесь:
|
||
|
||
[H a href=http://lists.gnupg.org/pipermail/gnupg-announce/2003q2/000268.html]<http://lists.gnupg.org/pipermail/gnupg-announce/2003q2/000268.html>[H /a]
|
||
|
||
<Q> Только что скомпилированная из исходников GnuPG для GNU/Linux
|
||
основанную на RPM и GnuPG не работает. Почему?
|
||
|
||
Многие дистрибутивы GNU/Linux, основанные на RPM, устанавливают
|
||
GnuPG как часть стандартной инсталляции в каталог /usr/bin. Позднее,
|
||
когда Вы компилируете и устанавливаете GnuPG из исходников, а не из
|
||
RPM, файлы обычно (по умолчанию) сохраняются в " /usr/local/bin ", пока
|
||
не указан параметр " --prefix " с другим каталогом при запуске configure.
|
||
А каталог " /usr/bin " скорее всего предшествует каталогу " /usr/local/bin "
|
||
в переменной PATH.
|
||
|
||
Для решения данной проблемы удалите RPM версию командой " rpm -e gnupg "
|
||
перед установкой программы из исходных текстов. Если Вы получаете
|
||
ошибку связей при удалении старого пакета RPM (таких, как up2date
|
||
в RedHat, который использует GnuPG), удалите пакет RPM командой
|
||
" rpm -e gnupg --nodeps ". Все связи станут вновь актуальны после
|
||
установки скомпилированной версии. Если по умолчанию используется
|
||
каталог " /usr/local/bin ", некоторые пакеты (например SuSE's Yast Online
|
||
Update) необходимо настроить на новое местоположение GnuPG в каталоге
|
||
" /usr/local/bin " или создать символические ссылки в " /usr/bin ",
|
||
которые будут указывать на соответствующие файлы в " /usr/local/bin ".
|
||
|
||
<S> ДРУГИЕ ВОПРОСЫ
|
||
|
||
<Q> Как пользоваться GnuPG?
|
||
|
||
Для создания пары ключей секретный/открытый запустите:
|
||
|
||
[H samp]
|
||
$ gpg --gen-key
|
||
[H /samp]
|
||
|
||
и выберите значения по умолчанию.
|
||
|
||
Данные зашифрованные открытым ключом могут быть расшифрованы только
|
||
соответствующим ему секретным ключом. Секретный ключ защищается паролем,
|
||
а открытый ключ - нет.
|
||
|
||
Чтобы отправить шифрованное сообщение кому-либо необхоимо зашифровать
|
||
это сообщение открытым ключом получателя и тогда он сможет расшифровать
|
||
сообщение своим и только своим секретным ключом и вводом пароля секретного
|
||
ключа.
|
||
|
||
GnuPG также широко используется для создания подписей. Файлы зашифрованные
|
||
секретным ключом могут быть расшифрованы открытым ключом. Чтобы
|
||
подписать что-нибудь, вычисляется хеш подписываемых данных и затем
|
||
хеш шифруется каким-либо образом секретым ключом. Если кто-либо
|
||
имеет Ваш открытый ключ, он может проверить, что подпись создана именно
|
||
Вами и что оно не было изменено.
|
||
|
||
Таблица связок ключей это файл на диске, который хранит ключи.
|
||
Есть таблица связок открытых ключей, в которой хранятся Ваши открытые
|
||
ключи и открытые ключи Ваших друзей. Также имеется таблица связок
|
||
секретных ключей, в которой хранятся Ваши секретные ключи и
|
||
Вы должны беречь их от посторонних. Никогда не предоставляйте доступ
|
||
к данным файлам другим людям и используйте *сильные* пароли для
|
||
защиты Ваших данных.
|
||
|
||
Вы можете зашифровать что-либо стандартным способом используя параметр
|
||
" gpg -c ". Это позволит зашифровать данные паролем и не использовать
|
||
открытый и секретный ключи. Если получатель шифрованного сообщения знает
|
||
пароль - он сможет расшифровать его. Обычно это используется для
|
||
шифрования себе. Следует пользоваться этим только для переписки с теми,
|
||
кто знает или может легко обменяться с Вами паролями (например с Вашим
|
||
приятелем или женой). Преимущество данного подхода в том, что можно
|
||
время от времени менять пароль, чем снизить риск того, что многие старые
|
||
сообщения будут прочтены теми, кто узнает Ваш пароль.
|
||
|
||
Можно добавить/скопировать ключи в/из таблицы связок ключей командами
|
||
" gpg --import " и " gpg --export ". " gpg --export-secret-keys "
|
||
экспортирует секретные ключи. Это обычно не нужно делать, но можно создать
|
||
ключ на одном компьютере, а затем перенести на другой.
|
||
|
||
Ключи могут быть сертифицированы используя команду " gpg --edit-key ".
|
||
Когда Вы подписываете ключ, Вы подтверждаете, что ключ принадлежит
|
||
персоне, указанной в идентификаторе ключа. Вам следует полностью убедиться
|
||
в том, что ключ действительно принадлежит данной персоне: Поэтому Вам
|
||
следует проверить отпечатки ключа командой:
|
||
|
||
[H samp]
|
||
$ gpg --fingerprint KeyID
|
||
[H /samp]
|
||
|
||
по телефону (если Вы хорошо знаете голос другого человека), на
|
||
собрании по подписыванию ключей (обычно устраивается на компьютерных
|
||
конференциях) или встрече местной группы пользователей GNU/Linux.
|
||
|
||
Так, что еще. Можете воспользоваться параметром " -o ИмяФайла " для
|
||
переназначения вывода некоторой информации в файл (используйте
|
||
"-" для принудительного вывода в stdout). " -r " позволяет указать
|
||
получателя (чьим открытым ключом шифровать) в командной строке вместо
|
||
ввода в интерактивном режиме.
|
||
|
||
Да, еще одно важное дополнение. По умолчанию зашифрованные данные
|
||
имеют двоичный формат. Если неоходимо получить их как ASCII текст,
|
||
который выглядит читабельным, то добавьте параметр " -a ". Но
|
||
предпочтительно использовать MIME, который понимаемают почтовые клиенты
|
||
(Mutt, Pine и мн. другие).
|
||
|
||
Существует небольшая проблема безопасности в OpenPGP (и соответственно
|
||
в GnuPG); чтобы избежать ее Вам следует всегда подписывать и шифровать
|
||
сообщения вместо простого шифрования.
|
||
|
||
<Q> Почему некторые подписи ELG-E ключом достоверны?
|
||
|
||
Это ключи ElGamal, которые сгенерированы GnuPG в v3 (RFC 1991) пакетах.
|
||
Черновой OpenPGP позднее изменил идентификатор ElGamal ключей, которые
|
||
используются и для подписи и для шифрования, с 16 на 20.
|
||
GnuPG сейчас использует 20 при создании новых ElGamal ключей, но всё еще
|
||
признает 16 (которые согласно OpenPGP теперь "только для шифрования"),
|
||
если такой ключ в v3 пакете. GnuPG единственная программа, которая
|
||
использовала эти v3 ElGamal ключи - поэтому такое допущение вполне
|
||
безопасно.
|
||
|
||
<Q> Как работает механизм доверий?
|
||
|
||
Он работает более или менее похоже на то, как это сделано в PGP. Отличие
|
||
в том, что степень доверия высисляется в тот момент, когда она необходима.
|
||
Это одна из причин необходимости файла trustdb, который содержит
|
||
список подписей достоверных ключей. Если Вы не запустили программу в
|
||
пакетном режиме, то Вам предложат назначить значение параметра доверия
|
||
(доверия владельцу ключа) для ключа.
|
||
|
||
Вы можете просмотреть достоверность (вычисленное значение) используя
|
||
команду.
|
||
|
||
[H samp]
|
||
$ gpg --list-keys --with-colons
|
||
[H /samp]
|
||
|
||
Если первое поле "pub" или "uid", то второе поле показывает Ваше доверие:
|
||
|
||
[H pre]
|
||
o = Неизвестно (ключ нов для программы)
|
||
e = Срок действия ключа истек
|
||
q = Не определено (нет присвоенного значения)
|
||
n = Полностью нет доверия данному ключу
|
||
m = Ограниченное доверие ключу
|
||
f = Полное доверие
|
||
u = Абсолютное доверие ключу; обычно используется,
|
||
только для ключей, для которых Вы имеете также и секретный ключ.
|
||
r = Ключ был отозван
|
||
d = Ключ отключен
|
||
[H /pre]
|
||
|
||
Значение в "pub" записи предпочтительнее всех "uid" записей.
|
||
Вы можете получить список присвоенных степеней доверия (степень Вашего
|
||
доверия корректности подписывания ключей другими людьми) командой:
|
||
|
||
[H samp]
|
||
$ gpg --list-ownertrust
|
||
[H /samp]
|
||
|
||
Первое поле это отпечаток главного ключа, а второе поле - присвоенная
|
||
степень:
|
||
|
||
[H pre]
|
||
- = Нет степени доверия вледьцу, не присвоена еще или не вычислена.
|
||
n = Не доверять подписям данного человека на других ключах.
|
||
m = Ограниченное доверие подписям данного человека.
|
||
f = Считать, что человек действительно знает, как правильно
|
||
подписывать ключи.
|
||
u = Не нужно доверий потому, что у нас имеется секретный ключ.
|
||
[H /pre]
|
||
|
||
Храните данные значения в секрете потому, что они означают Ваше
|
||
отношение к другим людям. PGP хранит данную информацию в своей таблице
|
||
связок ключей, поэтому публиковать свою таблицу связок ключей, вместо
|
||
экспорта конкретных связок ключей - плохая идея. GnuPG хранит значения
|
||
доверий файле trustdb.gpg, поэтому можно свободно дать кому-либо
|
||
свой файл таблицы связок колючей (но можете использовать также и параметр
|
||
--export).
|
||
|
||
<Q> Что означают: "key C26EE891.298, uid 09FB: ...."?
|
||
|
||
Это внутреннее представление User ID в trustdb.
|
||
"C26EE891" это KeyID, "298" это локальный ID (LID) (номер записи trustdb)
|
||
и "09FB" это последние два байта хеша ripe-md-160 из User ID для данного
|
||
ключа.
|
||
|
||
<Q> Как мне понять некоторые информационные сообщения?
|
||
|
||
Во время проверки достоверности ключа GnuPG иногда печатает некоторую
|
||
информацию, которая предваряет информацию о проверяемых данных.
|
||
|
||
[H samp]
|
||
"key 12345678.3456"
|
||
[H /samp]
|
||
|
||
Это о том, что Key ID имеет 12345678 и его внутренний номер 3456,
|
||
который является номером записи в так называемой записи каталога trustdb.
|
||
|
||
[H samp]
|
||
"uid 12345678.3456/ACDE"
|
||
[H /samp]
|
||
|
||
Это о том, что это User ID для того же ключа. Для идентификации User ID
|
||
в связке - печатаются два последних байта (ACDE) его ripe-md-160 хеша.
|
||
|
||
[H samp]
|
||
"sig 12345678.3456/ACDE/9A8B7C6D"
|
||
[H /samp]
|
||
|
||
Это о том, что это подпись ключом с Key ID 9A8B7C6D указанных выше
|
||
ключа и User ID, если это подпись, подписывающая сам ключ, то
|
||
User ID часть будет пуста (..//..).
|
||
|
||
<Q> Строки заголовка прозрачной подписи являются частью подписанного?
|
||
|
||
Нет. Можно, например, добавить или удалить "Comment:" строки.
|
||
Они аналогичны строкам заголовка письма. Однако, срока "Hash:"
|
||
требуется для OpenPGP подписей для указания использованного
|
||
алгоритма цифровой подписи.
|
||
|
||
<Q> Что такое список предпочитаемых алгоритмов?
|
||
|
||
Список предпочитаемых алгоритмов это список шифров, хешей и
|
||
алгоритмов сжатия сохраняемый в самоподписи ключа во время создания
|
||
ключа. Когда Вы шифруете документ, GnuPG использует данный список
|
||
(который является частью открытого ключа) для того, чтобы определить
|
||
какие алогоритмы использовать. В основном это предназначеначено для
|
||
того, чтобы сообщить другим лючям, какие алгоритмы получатель сможет
|
||
принять и порядок предпочтения им данных алгоритмов.
|
||
|
||
<Q> Как сменить список предпочитаемых алгоритмов?
|
||
|
||
В версии 1.0.7 и новейших, Вы можете использовать редактирование
|
||
ключа и установить новый список предпочтений используя команду
|
||
"setpref"; формат данной команды аналогичен выводу команды "pref".
|
||
Предпочтения не изменятся немедленно, но они будут использованы при
|
||
создании нового User ID. Если Вы хотите обновить предпочтения
|
||
существующих User ID, выберите эти User ID (или ни одного для
|
||
обновления всех сразу) и дайте команду "updpref". Учтите, что
|
||
отметка времени на самоподписи увеличивается на одну секунду,
|
||
когда выполняется данная команда.
|
||
|
||
|
||
<S> БЛАГОДАРНОСТИ
|
||
|
||
Премного благодарны Nils Ellmenreich за ведение настоящего FAQ столь
|
||
длительный срок, Werner Koch за первоначальный FAQ, всем участникам
|
||
почтовых рассылок gnupg-users и gnupg-devel присылавших вопросы и ответы.
|
||
Они предоставили наибольшее количество ответов.
|
||
|
||
Также спасибо Casper Dik за скрипт для создания данного FAQ
|
||
(он использует его для великолепного FAQ по Solaris2).
|
||
|
||
От переводчика:
|
||
Огромное спасибо разработчикам GnuPG.
|
||
Премного благодарен Павлу Шайдо за его переводы GNU Privacy Handbook
|
||
и руководства (man), за ценные советы по переводу интерфейса, настоящего
|
||
FAQ и пр. документов по GnuPG.[H br]
|
||
Спасибо также Gyre, Андрею Кавко, всем участникам почтовых рассылок
|
||
gnupg-ru и pgp-n-gpg.
|
||
|
||
[H hr]
|
||
|
||
Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc.,
|
||
59 Temple Place - Suite 330, Boston, MA 02111, USA
|
||
|
||
Copyright (C) 2003 Translation from English into Russian by Maxim Britov
|
||
|
||
Verbatim copying and distribution of this entire article is permitted in
|
||
any medium, provided this notice is preserved.
|
||
|