Gnupg (русский)

Usar la confianza para validar las claves

El anillo de confianza permite usar un algoritmo mбs elaborado para validar
una clave.
Anteriormente, una clave sуlo se consideraba vбlida si la firmбbamos
nosotros personalmente.
Ahora es posible usar un algoritmo mбs flexible: una clave
K se considera vбlida si cumple dos condiciones:

  1. si viene firmada por las suficientes claves vбlidas, lo que quiere decir

    • que la hemos firmado nosotros personalmente,

    • o que ha sido firmada por una clave de plena confianza,

    • o que ha sido firmada por tres claves de confianza marginal;

  2. y si el camino de claves firmadas que nos lleva desde K
    hasta nuestra propia clave es de cinco pasos o menos.

muestra un anillo de confianza cuyo origen estб
en Javier.
El grбfico ilustra quiйn ha firmado las claves de quiйn.
La tabla muestra quй claves son consideradas vбlidas por Javier en base a su
confianza en otros miembros del anillo.

Este ejemplo asume que se necesitan dos claves de confianza marginal o una
de confianza plena para validar otra clave.
La longitud mбxima del camino es tres.

Al computar claves vбlidas en el ejemplo, las de Arancha e Ignacio siempre son
consideradas como totalmente vбlidas, ya que estбn directamente firmadas por
Javier.
La validez de las otras claves depende de la confianza.
En el primer caso la confianza en Ignacio es plena, lo que implica que las
claves de Jordi y Claudia se considerarбn vбlidas.
En el segundo ejemplo la confianza en Arancha e Ignacio es marginal.
Ya que son necesarias dos claves de confianza marginal para dar validez total
a una clave, la clave de Jordi serб considerada como totalmente vбlida, pero
la clave de Claudia serб considerada sуlo como marginalmente vбlida.
En el caso en el que Jordi e Ignacio tuvieran confianza marginal, la clave de
Jordi serнa marginalmente vбlida ya que la clave de Ignacio es totalmente
vбlida.
Sin embargo, la clave de Claudia serб considerada marginalmente vбlida ya que
sуlo se puede usar una clave completamente vбlida para validar otras claves,
y la clave de Ignacio es la ъnica clave vбlida que se ha usado para firmar la
clave de Claudia.
Al aсadir un nivel de confianza marginal a Arancha, la clave de Jordi se
convierte en totalmente vбlida y por tanto puede ser usada para validar
totalmente la clave de Claudia, y validar marginalmente la clave de Jimena.
Por ъltimo, una confianza plena en Arancha, Jordi y Jimena es todavнa
insuficiente para validar la clave de Gonzalo ya que el camino mбximo de
certificaciуn es tres, pero la longitud del camino desde Gonzalo hasta Javier es
cuatro.

El modelo del anillo de confianza es una aproximaciуn flexible al problema
del intercambio seguro de claves pъblicas.
Nos permite poner a punto GnuPG para que refleje el modo en que lo usamos.
Es posible llegar a insistir en mъltiples caminos cortos desde nuestra clave
hasta otra clave K para cambiar el nivel de confianza.
Por otra parte, puede ser que caminos mбs largos nos satisfagan e incluso
un sуlo camino desde nuestra clave hasta la otra clave
K.
El requerimiento de mъltiples caminos cortos es una fuerte garantнa de que
K pertenece a quien nosotros creemos.
El precio, por supuesto, es la dificultad aсadida para validar claves, ya que
debemos firmar personalmente mбs claves que si aceptбramos menos y mбs largos
caminos.

BUGS

On older systems this program should be installed as setuid(root). This
is necessary to lock memory pages. Locking memory pages prevents the
operating system from writing memory pages (which may contain
passphrases or other sensitive material) to disk. If you get no
warning message about insecure memory your operating system supports
locking without being root. The program drops root privileges as soon
as locked memory is allocated.

Note also that some systems (especially laptops) have the ability to
“suspend to disk” (also known as “safe sleep” or “hibernate”).
This writes all memory to disk before going into a low power or even
powered off mode. Unless measures are taken in the operating system
to protect the saved memory, passphrases or other sensitive material
may be recoverable from it later.

Next: , Previous: , Up:   [][]

FILTER EXPRESSIONS

The options —import-filter and —export-filter use
expressions with this syntax (square brackets indicate an optional
part and curly braces a repetition, white space between the elements
are allowed):

   { PROPNAME op VALUE }

The name of a property (PROPNAME) may only consist of letters,
digits and underscores. The description for the filter type
describes which properties are defined. If an undefined property is
used it evaluates to the empty string. Unless otherwise noted, the
VALUE must always be given and may not be the empty string. No
quoting is defined for the value, thus the value may not contain the
strings or , which are used as logical connection
operators. The flag can be used to remove this restriction.

Numerical values are computed as long int; standard C notation
applies. lc is the logical connection operator; either
for a conjunction or for a disjunction. A
conjunction is assumed at the begin of an expression. Conjunctions
have higher precedence than disjunctions. If VALUE starts with
one of the characters used in any op a space after the
op is required.

The supported operators (op) are:

=~

Substring must match.

!~

Substring must not match.

=

The full string must match.

<>

The full string must not match.

==

The numerical value must match.

!=

The numerical value must not match.

<=

The numerical value of the field must be LE than the value.

<

The numerical value of the field must be LT than the value.

>

The numerical value of the field must be GT than the value.

>=

The numerical value of the field must be GE than the value.

-le

The string value of the field must be less or equal than the value.

-lt

The string value of the field must be less than the value.

-gt

The string value of the field must be greater than the value.

-ge

The string value of the field must be greater or equal than the value.

-n

True if value is not empty (no value allowed).

-z

True if value is empty (no value allowed).

-t

Alias for «PROPNAME != 0» (no value allowed).

-f

Alias for «PROPNAME == 0» (no value allowed).

Values for flag must be space separated. The supported flags
are:

VALUE spans to the end of the expression.

-c

The string match in this part is done case-sensitive.

The filter options concatenate several specifications for a filter of
the same type. For example the four options in this example:

 --import-filter keep-uid="uid =~ Alfa"
 --import-filter keep-uid="&& uid !~ Test"
 --import-filter keep-uid="|| uid =~ Alpha"
 --import-filter keep-uid="uid !~ Test"

which is equivalent to

 --import-filter \
  keep-uid="uid =~ Alfa" && uid !~ Test" || uid =~ Alpha" && "uid !~ Test"

imports only the user ids of a key containing the strings «Alfa»
or «Alpha» but not the string «test».

Встречи для подписи ключей

Чтобы дать возможность пользователям проверить ключи в хранилищах ключей и с собственных списках (то есть, убедиться, что владелец ключа на самом деле тот, за кого себя выдает), PGP/GnuPG использует так называемую «сеть доверия». Для поддержания и развития сети периодически организуются очные встречи, на которых люди, использующие систему PGP, обмениваются своими публичными ключами.

caff

Для упрощения процедуры подписи ключей и отправку этих подписей владельцам ключей вы можете воспользоваться утилитой caff. Установить ее можно из AUR с пакетом AUR. Там же доступен AUR — набор удобных инструментов, включающий также caff.
Так или иначе, потребуется установить много зависимостей из AUR. Как вариант, вы можете загрузить и установить эти зависимости из CPAN:

cpanm Any::Moose
cpanm GnuPG::Interface

Для отправки подписей владельцам вам нужен работающий агент MTA. Если у вас его еще нет, установите msmtp.

Полезная информация перед началом работы

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

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

Наоборот: если вы хотите ответить шифровкой, используйте открытый ключ адресата. А он применит свой секретный ключ, чтобы прочесть текст письма.

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

Всё это можно делать с помощью gpg4usb.

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

Шифровальные ключи и зашифрованные с помощью gpg4usb сообщения совместимы с другими программами, в частности, GPG и PGP.

Начало работы и создание ключей

Распаковываем архив zip в папку на диске и запускаем приложение start_windows.exe. Открывается главное окно программы.

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

Внимание: Мы описываем запуск «мастера создания ключей» в общем случае (через меню программы). В случае, если gpg4usb только что установлена на компьютер, мастер создания ключей запустится автоматически

Щелкаем по кнопке Менеджера ключей.

Выбираем в меню «Ключ» — «Генерировать ключ».

Появляется следующее окно.

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

  • Комментарий — можно пропустить.

  • Истекает — дата окончания действия ключа. По достижении этой даты открытый ключ уже нельзя будет использовать для шифрования. Обычно это ограничение служит дополнительной страховкой на случай, если ключевая пара окажется скомпрометирована (злоумышленник, завладевший ключами, по крайней мере, не сможет пользоваться ими вечно). Если вам это не нужно, ставим галочку в поле «без срока годности».

  • Длина ключа (бит) — чем длиннее ключ, тем надежнее защита и дольше длится шифрование/расшифровка. Значение по умолчанию (2048 бит) вполне достаточно.

  • Пароль — пароль для защиты секретного ключа. (Загляните в раздел «Как создавать и хранить надежные пароли»).

Щелкните по кнопке «ОК».

По окончании появится финальное окошко:

Можете убедиться, что ключ появился в списке.

Значок с двумя ключиками подразумевает, что это не открытый ключ, а пара ключей (открытый и секретный).

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

Security

OpenPGP & S/MIME

Gpg4win supports both:
OpenPGP and S/MIME (X.509)

The configuration of X.509 root certificates is made simple by
Gpg4win. Now, also inexperienced users can start using S/MIME out-of-the-box.
Security aware system administrators should read the step by step instructions
and define a systems-wide list of trusted X.509 root certificates.

High algorithmic strength of GnuPG

Gpg4win is the official GnuPG
distribution for Windows and provides the high cryptographic
standards of the GNU Privacy Guard. GnuPG follows the recommendations
regarding algorithms and key length of the German
Federal Office for Information Security (BSI).

To create OpenPGP and X.509 certificates Gpg4win uses a key length
of 2048bit by default. The default algorithm for signing and
encrypting is RSA.

How to set it up?

If you want to set up a Web Key Directory for your own server or your own server you only need access to a webserver for your domain. See: WKDHosting

For a larger organization it is recommended to set up a complete Web Key Service, which will help to automate Web Key Directory publishing.

Stopgap method — temporary central keyserver

Not recommended — but a temporary workaround — is to use «WKDaaS» and delegate delivery of your pubkey to a central service. Doing this you’ll expose all people that want to use crypto when communication with you towards another party of the central service or monitoring the central service. This third party can then see the communication pattern.

One service is keys.openpgp.org, where you can set the CNAME record of the «openpgpkey» subdomainto «wkd.keys.openpgp.org» the CNAME entry should look like this.

openpgpkey.example.org. 300     IN      CNAME   wkd.keys.openpgp.org.

In addition you need to register your pubkey with them.

Other drawbacks:

  • As any WKD service, they’ll be able to serve a different pubkey to some domains at some time, however opposed to your email provider you do not have a contractual relationship with them.
  • Elder GnuPGs like the some on Debian Stretch do not offer the necessary modern WKD implementation for a successful request, so you are reaching less communication partners with this compared to real WKD.
  • (For the overall ecosystem, we need more decentral services instead, it is at the core of OpenPGP security promise. So you are missing to set a good example. 😉 )

Prerequisites

  • GnuPG >= 2.2.14, including the gpg-wks-server command.
  • A mail server for your domain with the full authority on the user mail addresses for this domain.
  • A Unix system where you have an account to receive mails to a dedicated mail address and to send mails via the sendmail tool. An account on the mail server will be the best choice.
  • A web server for the same domain to deliver static pages over TLS. Re-direction to a different server is possible
  • A GNU/Linux like server system (for example Ubuntu Server, Debian, CentOS, OpenSuse, FreeBSD).

Install GnuPG 2.2 (optional)

If the GnuPG packages from your distribution are current and include the additional tools, you are fine. Otherwise you can install a GnuPG locally from the latest public source code.

First you should create a new account on the machine. Let’s use webkey. Nothing special is required; thus a simple

adduser --disabled-password webkey

as root will do. Add an .ssh/authorized_keys file to make it easy to access. Now download GnuPG source code from a trusted source, see https://gnupg.org/download/index.html.

cd ~webkey
wget ftp://ftp.gnupg.org/gcrypt/gnupg/gnupg-2.1.15.tar.bz2
wget ftp://ftp.gnupg.org/gcrypt/gnupg/gnupg-2.1.15.tar.bz2.sig
wget -O - https://gnupg.org/signature_key.html | gpg --import
gpg --verify gnupg-2.1.15.tar.bz2.sig gnupg-2.1.15.tar.bz2

The last line uses the standard gpg to check that the integrity of the tarball. Then please verify that the displayed fingerprints match the desired ones; see https://gnupg.org/download/integrity_check.html for more on this.

The easiest way to install the latest GnuPG version is to use Speedo, which downloads, verifies and builds all dependent packages. To do this first unpack the tarball:

tar xjf gnupg-2.1.15.tar.bz2

On non GNU system you may need to use this instead:

zcat gnupg-2.1.15.tar.bz2 | tar xf -

Then run:

make -f gnupg-2.1.15/build-aux/speedo.mk INSTALL_PREFIX=. \
  speedo_pkg_gnupg_configure='--enable-gpg2-is-gpg        \
  --disable-g13 --enable-wks-tools' native

If you run into errors you are probably missing some development tools; install them and try again. If all succeeds you will notice a bunch of new directories below webkey’s home directory:

PLAY bin include lib libexec sbin share swdb.lst swdb.lst.sig

Optionally you may delete what is not anymore required:

rm -rf PLAY include lib swdb.*

To make use of your new GnuPG installation you need to run this first (you should add it to webkey’s .profile or .bashrc):

PATH="$HOME/bin:$PATH"
LD_LIBRARY_PATH="$(pwd)/lib"
export LD_LIBRARY_PATH

Related Software

Over the years, GnuPG has widly gained in popularity to become the
standard de-facto as free software for private communication and
digital signature. As such, it is by no mean surprisingly to find
out that there are so many programms orbiting around GnuPG.

For your convenience, GnuPG-related software has been grouped here in
three big categories. If you are working for a new project and want to
be listed here, please, feel free to contact the webmaster .

Please note that, being part of the GNU Project, we can not link to
any project which can not be labeled as free software . If you found
a link on these pages to a project which does not fulfill this
requirement (a good checkpoint is the FSF/UNESCO Free Software
Directory) please let us know by contacting the webmaster .

Frontends
This category collects together all the software for
various platforms which relays on GnuPG command line
and provides some sort of easy-to-use user
interface.
Tools
Under this link you’ll find tools mostly used to manage
GnuPG keys.
Libraries
This page hosts projects which aim is to build an
abstraction layer for who wants to painlessly add
GnuPG capabilities to their software.
All
Direct access to all descriptions.

Это руководство больше не обновляется

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

Главная функция: шифрование текста (включая электронную почту) и файлов

Страница программы: http://www.gpg4usb.org/

Операционная система: все версии Windows

Лицензия: бесплатная, с открытым кодом

Используемая здесь версия программы: 0.3.3

Объем архива: 16 Мб

Последняя редакция этого материала: август 2014 г.

Что почитать сначала

  • Главу нашего руководства «Как скрыть Интернет-переписку от посторонних»
  • Руководство «Цифровая безопасность и приватность» (англ.)

Что вы получите в результате

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

Приготовления к работе

  • Щелкаем по значку gpg4usb ниже и открываем сайт http://www.gpg4usb.org.
  • Щелкаем по большой зеленой кнопке в правой части страницы и скачиваем к себе на компьютер архив zip.
  • Распаковываем архив.
  • После этого можно удалить архив.

Резервное копирование ключей

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

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

Как экспортировать свой секретный ключ

Ранее мы разобрались с тем, . Давайте экспортируем секретный.

Шелкаем правой кнопкой мыши по ключу и выбираем в контекстном меню «Показать свойства ключа».

Щелкаем по кнопке «Экспортировать секретный ключ». Появляется предупреждение.

Выбираем папку на диске, куда сохранить ключ, и — готово.

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

Где хранятся ключи

Бывают ситуации, когда нужно экспортировать не один ключ (и не несколько ключей выборочно), а все ключи, которые есть. Ключи хранятся на диске в так называемых «связках ключей»: для открытых ключей это файл с именем pubring.gpg, для секретных — secring.gpg. Оба файла можно найти в папке gpg4usb, подпапке keydb. Если нужно, вы можете создать резервную копию всех ключей, просто переписав эти файлы в надежное место.

Вопросы и тест

Вопрос: Верно ли, что gpg4usb работает только с USB-флешки?

Ответ: Нет, при желании программу можно скопировать на жесткий диск и запускать оттуда.

Вопрос: Сколько пар ключей я могу создать для себя?

Ответ: Сколько пожелаете.

Ответ: Нет, к сожалению, нельзя. Можно шифровать содержание (тело письма), файлы-вложения, но не заголовок и не название письма. Поэтому будьте осторожны: пусть название отправляемого вами зашифрованного письма не содержит никакой идентифицирующей информации.

Вопрос: Насколько gpg4usb совместима с другими шифровальными программами?

Ответ: Gpg4usb фактически представляет собой оболочку широко известной шифровальной программы GnuPG. Шифрованные файлы, созданные с помощью gpg4usb, могут быть прочитаны с помощью любой другой программы, использующей GnuPG. Они также совместимы с известным форматом PGP. Следует заметить, что существует множество гораздо менее популярных шифровальных средств, использующих свои собственные, ни с чем не совместимые протоколы.

Generating a revocation certificate

After your keypair is created you should immediately generate a revocation
certificate for the primary public key using the option
--gen-revoke.
If you forget your passphrase or if your private key is compromised
or lost, this revocation certificate may be published to notify others
that the public key should no longer be used.
A revoked public key can still be used to verify signatures made
by you in the past, but it cannot be used to encrypt future messages
to you.
It also does not affect your ability to decrypt messages sent to
you in the past if you still do have access to the private key.

alice% gpg --output revoke.asc --gen-revoke mykey

mykeykey
specifier
revoke.asc

Adding and deleting key components

Additional user IDs are useful when you need multiple identities.
For example, you may have an identity for your job and an identity
for your work as a political activist.
Coworkers will know you by your work user ID.
Coactivists will know you by your activist user ID.
Since those groups of people may not overlap, though, each group
may not trust the other user ID.
Both user IDs are therefore necessary.

Additional subkeys are also useful.
The user IDs associated with your public master key are validated by
the people with whom you
communicate, and changing the master key therefore requires recertification.
This may be difficult and time consuming if you communicate with
many people.
On the other hand, it is good to periodically change encryption subkeys.
If a key is broken, all the data encrypted with that key will be
vulnerable.
By changing keys, however, only the data encrypted with the one broken
key will be revealed.

Subkeys and user IDs may also be deleted.
To delete a subkey or user ID you must first select it using the
key or
uid commands respectively.
These commands are toggles.
For example, the command key 2
selects the second subkey,
and invoking key 2 again
deselects it.
If no extra argument is given, all subkeys or user IDs are deselected.
Once the user IDs to be deleted are selected, the command
deluid
actually deletes the user IDs from your key.
Similarly, the command delkey
deletes all selected subkeys from both your public and private keys.

Оцените статью
Рейтинг автора
5
Материал подготовил
Андрей Измаилов
Наш эксперт
Написано статей
116
Добавить комментарий