| 1 |
<chapter id="management" xreflabel="3">
|
| 2 |
<docinfo>
|
| 3 |
<date>
|
| 4 |
$Id: c3.sgml,v 1.1 2000/02/09 10:29:00 wkoch Exp $
|
| 5 |
</date>
|
| 6 |
</docinfo>
|
| 7 |
<title>
|
| 8 |
Gestión de Claves
|
| 9 |
</title>
|
| 10 |
|
| 11 |
<para>
|
| 12 |
En criptografía de clave pública la manipulación de claves es un punto flaco
|
| 13 |
a tener en cuenta.
|
| 14 |
Un «escucha» podría manipular los ficheros con las claves, o
|
| 15 |
falsificar la clave pública y hacerla pública para que la usaran otros como
|
| 16 |
si fuera la auténtica.
|
| 17 |
Por ejemplo, supongamos que Jordi quisiera monitorizar los mensajes que
|
| 18 |
Javier envía a Arancha.
|
| 19 |
Jordi podría montar lo que se conoce como un
|
| 20 |
<firstterm>intermediario</firstterm> en el plan de ataque.
|
| 21 |
En este ataque Jordi crea una nuevo par de claves pública y privada,
|
| 22 |
reemplazando la clave pública de Arancha que posee Javier con la nueva clave
|
| 23 |
pública.
|
| 24 |
A partir de ahí intercepta los mensajes que Javier envía a Arancha.
|
| 25 |
Cada mensaje que intercepte lo descifrará usando la nueva clave privada, lo
|
| 26 |
volverá a cifrar con la clave auténtica de Arancha, y reenviará el mensaje
|
| 27 |
cifrado a Arancha.
|
| 28 |
Así, todos los mensajes que Javier envíe a Arancha pueden ser leídos por
|
| 29 |
Jordi.
|
| 30 |
</para>
|
| 31 |
|
| 32 |
<para>
|
| 33 |
Una buena gestión de claves es crucial para asegurarse, no sólo de la
|
| 34 |
integridad de nuestros ficheros de claves, sino también de la integridad de
|
| 35 |
los anillos de claves de otros.
|
| 36 |
El punto central en la gestión de claves en &gnupg; es la noción que hay
|
| 37 |
detrás de firmar las claves.
|
| 38 |
Firmar las claves tiene dos propósitos principales: nos permite detectar una
|
| 39 |
manipulación en nuestros anillos de claves, y nos permite certificar que una
|
| 40 |
clave realmente pertenece a la persona cuyo nombre aparece en el
|
| 41 |
identificador de usuario de la clave.
|
| 42 |
Las firmas de las claves también se usan en un esquema conocido como
|
| 43 |
<firstterm>anillo de confianza</firstterm> para hacer extensiva la
|
| 44 |
certificación de claves que no han sido firmadas directamente por el usuario,
|
| 45 |
sino que han sido firmadas por otros en los que él confía.
|
| 46 |
Un usuario responsable que lleve a cabo una buena gestión de claves puede
|
| 47 |
contrarrestar los efectos prácticos de la manipulación de claves con &gnupg;.
|
| 48 |
</para>
|
| 49 |
|
| 50 |
<sect1>
|
| 51 |
<title>
|
| 52 |
Gestionando nuestro par de claves
|
| 53 |
</title>
|
| 54 |
|
| 55 |
<para>
|
| 56 |
Un par de claves se compone de una clave pública y otra privada.
|
| 57 |
Una clave pública se compone de la parte pública de la clave de firmado
|
| 58 |
maestra, las partes públicas de las subclaves de firmado y cifrado,
|
| 59 |
y de un juego de identificadores de usuario que se usa para asociar la clave
|
| 60 |
pública con una persona real.
|
| 61 |
Cada una de estas partes contiene datos sobre sí misma.
|
| 62 |
Para una clave estos datos constan de su propio identificador, fecha de
|
| 63 |
creación, fecha de caducidad, etc...
|
| 64 |
Para un identificador de usuario, estos datos constan del nombre de la
|
| 65 |
persona a la que identifica, un comentario opcional, y una dirección de
|
| 66 |
correo electrónico.
|
| 67 |
La estructura de la claves privada es parecida, con la diferencia de que sólo
|
| 68 |
contiene las partes privadas de las claves, y que no tiene la información del
|
| 69 |
identificador de usuario.
|
| 70 |
</para>
|
| 71 |
|
| 72 |
<para>
|
| 73 |
La opción de la línea de órdenes
|
| 74 |
<link linkend="edit-key"><option>--edit-key</option></link>
|
| 75 |
se puede usar para ver un par de claves.
|
| 76 |
Por ejemplo,
|
| 77 |
|
| 78 |
<screen width="80">
|
| 79 |
<prompt>jordi%</prompt> <userinput>gpg --edit-key jordi@cat.es</userinput>
|
| 80 |
Secret key is available.
|
| 81 |
|
| 82 |
pub 1024D/1208DD4F created: 1999-09-24 expires: never trust: -/u
|
| 83 |
sub 1024g/B9688D9E created: 1999-09-24 expires: never
|
| 84 |
sub 2016G/4D88ACC4 created: 1999-09-26 expires: 2002-09-25
|
| 85 |
sub 960D/412EAF0C created: 1999-09-26 expires: 2002-09-25
|
| 86 |
(1) Jordi (Castell S.L.) <jordi@cat.es>
|
| 87 |
(2) Jordi (oficina) <jordi@castell.com>
|
| 88 |
|
| 89 |
<prompt>Command></prompt>
|
| 90 |
</screen>
|
| 91 |
|
| 92 |
La clave pública se muestra junto con una indicación sobre si la clave privada
|
| 93 |
se encuentra disponible o no.
|
| 94 |
La información sobre cada componente de la clave pública se da en una lista.
|
| 95 |
La primera columna indica el tipo de la clave.
|
| 96 |
La palabra clave <literal>pub</literal> identifica a la clave pública maestra
|
| 97 |
de firmado, y la palabra clave <literal>sub</literal> identifica a una clave
|
| 98 |
pública subordinada a la anterior.
|
| 99 |
La segunda columna informa sobre el tamaño en &dquo;bits&dquo; de la clave, el
|
| 100 |
tipo, y el identificador.
|
| 101 |
El tipo es <literal>D</literal> para una clave DSA, <literal>g</literal> para
|
| 102 |
una clave ElGamal que sólo se pueda usar para cifrar, y <literal>G</literal>
|
| 103 |
para una clave ElGamal que se pueda usar tanto para cifrar como para firmar.
|
| 104 |
La fecha de creación y la fecha de caducidad se muestran en las columnas tres
|
| 105 |
y cuatro.
|
| 106 |
Los identificadores de usuario aparecen en una lista a continuación de las
|
| 107 |
claves.
|
| 108 |
</para>
|
| 109 |
|
| 110 |
<para>
|
| 111 |
Se puede obtener más información sobre la clave mediante órdenes
|
| 112 |
interactivas.
|
| 113 |
La orden <link linkend="toggle"><command>toggle</command></link> sirve para
|
| 114 |
conmutar entre los componentes público y privado de un par de claves, siempre
|
| 115 |
y cuando ambos componentes estén presentes.
|
| 116 |
|
| 117 |
<screen width="80">
|
| 118 |
<prompt>Command></prompt> <userinput>toggle</userinput>
|
| 119 |
|
| 120 |
sec 1024D/1208DD4F created: 1999-09-24 expires: never
|
| 121 |
sbb 1024g/B9688D9E created: 1999-09-24 expires: never
|
| 122 |
sbb 960D/412EAF0C created: 1999-09-26 expires: 2002-09-25
|
| 123 |
sbb 2016G/4D88ACC4 created: 1999-09-26 expires: 2002-09-25
|
| 124 |
(1) Jordi (Castell S.L.) <jordi@cat.es>
|
| 125 |
(2) Jordi (oficina) <jordi@castell.com>
|
| 126 |
</screen>
|
| 127 |
|
| 128 |
Esta información es parecida a la del componente para la clave pública.
|
| 129 |
La palabra clave <literal>sec</literal> identifica a la clave privada maestra
|
| 130 |
de firmado, y la palabra clave <literal>sbb</literal> identifica las claves
|
| 131 |
subordinadas privadas.
|
| 132 |
Los identificadores de usuario de la clave pública también aparecen en este
|
| 133 |
caso.
|
| 134 |
</para>
|
| 135 |
|
| 136 |
<sect2>
|
| 137 |
<title id="integrity">
|
| 138 |
Integridad de claves
|
| 139 |
</title>
|
| 140 |
|
| 141 |
<para>
|
| 142 |
Al distribuir nuestra clave pública, estamos distribuyendo los componentes
|
| 143 |
públicos de nuestras claves maestra y subordinada, así como los
|
| 144 |
identificadores de usuario.
|
| 145 |
Sin embargo, por sí sola, la distribución de este material constituye un
|
| 146 |
riesgo para la seguridad ya que sería posible que un atacante manipulara la
|
| 147 |
clave.
|
| 148 |
Se puede modificar una clave pública añadiendo o substituyendo claves, o
|
| 149 |
añadiendo o cambiando los identificadores de usuario.
|
| 150 |
Al manipular un identificador de usuario, el atacante podría cambiar la
|
| 151 |
dirección de correo del identificador de usuario y redireccionar así el
|
| 152 |
correo a su propia dirección.
|
| 153 |
Al cambiar una de las claves de cifrado el atacante también podría descifrar
|
| 154 |
los mensajes que le llegaran redireccionados.
|
| 155 |
</para>
|
| 156 |
|
| 157 |
<para>
|
| 158 |
El uso de las firmas digitales es una solución a este problema.
|
| 159 |
Cuando unos datos son firmados por una clave privada, la clave pública
|
| 160 |
correspondiente queda ligada a los datos firmados.
|
| 161 |
En otras palabras, sólo la clave pública correspondiente puede verificar la
|
| 162 |
firma y asegurar que los datos no han sido modificados.
|
| 163 |
Una clave pública se puede proteger de la manipulación usando su
|
| 164 |
correspondiente clave privada maestra, y firmando con ésta los componentes de
|
| 165 |
la clave pública y los identificadores de usuario, ligando de este modo los
|
| 166 |
componentes a la clave pública maestra.
|
| 167 |
La acción de firmar los componentes de la clave pública con la
|
| 168 |
correspondiente clave privada maestra se conoce como
|
| 169 |
<firstterm>autofirmar</firstterm>, y una clave pública que contenga
|
| 170 |
identificadores de usuario autofirmados ligados a ella se llama
|
| 171 |
<firstterm>certificado</firstterm>.
|
| 172 |
</para>
|
| 173 |
|
| 174 |
<!--
|
| 175 |
%\begin{figure}
|
| 176 |
%Blank
|
| 177 |
%\caption{This should depict how self-signatures bind information to
|
| 178 |
%a public key.}\label{fig:selfsignedkey}
|
| 179 |
%\end{figure}
|
| 180 |
%
|
| 181 |
%As an example, Figure~\ref{fig:selfsignedkey} illustrates Chloe's public
|
| 182 |
%key, which has been self-signed to bind the user IDs and public subkeys
|
| 183 |
%to the public master key.
|
| 184 |
%The signatures on the user IDs can be checked with the \texttt{check}
|
| 185 |
%command from the key edit menu.
|
| 186 |
-->
|
| 187 |
|
| 188 |
<para>
|
| 189 |
Como ejemplo, si Jordi tuviera dos identificadores de usuario y tres
|
| 190 |
subclaves, las firmas en los identificadores de usuario se podrían comprobar
|
| 191 |
con la orden <link linkend="check"><command>check</command></link> desde el
|
| 192 |
menú de edición de la clave.
|
| 193 |
|
| 194 |
<screen width="80">
|
| 195 |
<prompt>jordi%</prompt> <userinput>gpg --edit-key jordi</userinput>
|
| 196 |
Secret key is available.
|
| 197 |
|
| 198 |
pub 1024D/1208DD4F created: 1999-09-24 expires: never trust: -/u
|
| 199 |
sub 1024g/B9688D9E created: 1999-09-24 expires: never
|
| 200 |
sub 960D/412EAF0C created: 1999-09-26 expires: 2002-09-25
|
| 201 |
sub 2016G/4D88ACC4 created: 1999-09-26 expires: 2002-09-25
|
| 202 |
(1) Jordi (Castell S.L.) <jordi@cat.es>
|
| 203 |
(2) Jordi (oficina) <jordi@castell.com>
|
| 204 |
|
| 205 |
<prompt>Command></prompt> <userinput>check</userinput>
|
| 206 |
uid Jordi (Castell S.L.) <jordi@cat.es>
|
| 207 |
sig! 1208DD4F 1999-09-24 [self-signature]
|
| 208 |
uid Jordi (oficina) <jordi@castell.com>
|
| 209 |
sig! 1208DD4F 1999-09-26 [self-signature]
|
| 210 |
</screen>
|
| 211 |
|
| 212 |
Como era de esperar, la clave firmante para cada firma es la clave de firmado
|
| 213 |
maestra con el identificador de clave <literal>0x26B6AAE1</literal>.
|
| 214 |
La autofirma en las subclaves se encuentra presente en la clave pública, pero
|
| 215 |
en la interfaz de &gnupg; no aparece.
|
| 216 |
</para>
|
| 217 |
</sect2>
|
| 218 |
|
| 219 |
<sect2>
|
| 220 |
<title>
|
| 221 |
Añadir y eliminar componentes a las claves
|
| 222 |
</title>
|
| 223 |
|
| 224 |
<para>
|
| 225 |
Tanto las nuevas subclaves como los nuevos identificadores de usuario,
|
| 226 |
pueden ser añadidos a nuestro par de claves una vez que éste ya haya sido
|
| 227 |
creado.
|
| 228 |
Un identificador de usuario se añade mediante la orden
|
| 229 |
<link linkend="adduid"><command>adduid</command></link>.
|
| 230 |
A continuación se nos pedirá que introduzcamos un nombre real, una dirección
|
| 231 |
de correo electrónico, y un comentario, del mismo modo que cuando generamos
|
| 232 |
el par de claves inicial.
|
| 233 |
Una subclave se añade usando la orden
|
| 234 |
<link linkend="addkey"><command>addkey</command></link>.
|
| 235 |
La interfaz es parecida a la usada cuando generamos un par de claves nuevo.
|
| 236 |
La subclave puede ser una clave para firmado DSA y una clave sólo para cifrado
|
| 237 |
ElGamal, o una clave para firmado y cifrado ElGamal.
|
| 238 |
Cuando se genera una subclave o un identificador de usuario, éstos son
|
| 239 |
autofirmados con nuestra clave de firmado maestra, por lo que se nos
|
| 240 |
requerirá que introduzcamos la contraseña.
|
| 241 |
</para>
|
| 242 |
|
| 243 |
<para>
|
| 244 |
Los identificadores de usuario adicionales son útiles si necesitamos
|
| 245 |
múltiples identidades.
|
| 246 |
Por ejemplo, puede darse el caso de que utilicemos una identidad para el
|
| 247 |
trabajo y otra para nuestras actividades políticas.
|
| 248 |
Los colegas de trabajo nos conocerán por nuestro identificador de usuario del
|
| 249 |
trabajo.
|
| 250 |
Los correligionarios políticos nos conocerán por nuestra identidad de usuario
|
| 251 |
política.
|
| 252 |
Como es posible que estos grupos de personas no coincidan, cada grupo no se
|
| 253 |
fiará del identificador que no corresponda.
|
| 254 |
Por lo tanto, ambos identificadores de usuario son necesarios.
|
| 255 |
</para>
|
| 256 |
|
| 257 |
<para>
|
| 258 |
Las subclaves adicionales son también muy útiles.
|
| 259 |
Los identificadores de usuario asociados con nuestra clave pública maestra
|
| 260 |
son validados por las personas con quien nos comunicamos y por tanto, cambiar
|
| 261 |
la clave maestra requiere «recertificación».
|
| 262 |
Pero esto puede resultar difícil y una pérdida de tiempo si nos comunicamos
|
| 263 |
con muchas personas.
|
| 264 |
Por otra parte, es bueno cambiar las subclaves de cifrado periódicamente.
|
| 265 |
Si una clave es descubierta, todos los datos cifrados con esa clave serán
|
| 266 |
vulnerables.
|
| 267 |
De todos modos, al cambiar las claves sólo los datos cifrados con la clave
|
| 268 |
descubierta serán revelados.
|
| 269 |
</para>
|
| 270 |
|
| 271 |
<para>
|
| 272 |
También es posible eliminar las subclaves y los identificadores de usuario.
|
| 273 |
Para eliminar una subclave o un identificador de usuario es preciso
|
| 274 |
seleccionarlo primero con las órdenes
|
| 275 |
<link linkend="key"><command>key</command></link> o
|
| 276 |
<link linkend="uid"><command>uid</command></link> respectivamente.
|
| 277 |
Estas órdenes actúan como conmutadores.
|
| 278 |
Por ejemplo, la orden <command>key <parameter>2</parameter></command>
|
| 279 |
selecciona la segunda subclave, e invocando
|
| 280 |
<command>key <parameter>2</parameter></command> de nuevo, desactiva la
|
| 281 |
selección.
|
| 282 |
Si no se da ningún otro argumento extra, todas las subclaves o
|
| 283 |
identificadores de usuario son deseleccionados.
|
| 284 |
Una vez que los identificadores de usuario que se van a eliminar son
|
| 285 |
seleccionados, la orden
|
| 286 |
<link linkend="deluid"><command>deluid</command></link>
|
| 287 |
elimina los identificadores de usuario de la clave.
|
| 288 |
De igual forma, la orden
|
| 289 |
<link linkend="delkey"><command>delkey</command></link>
|
| 290 |
elimina todas las subclaves previamente seleccionadas de nuestras claves
|
| 291 |
pública y privada.
|
| 292 |
</para>
|
| 293 |
|
| 294 |
<para>
|
| 295 |
En la gestión local de anillos de claves, el eliminar componentes
|
| 296 |
innecesarios de una clave es una buena práctica para aliviar los anillos de
|
| 297 |
claves públicas de otros.
|
| 298 |
Sin embargo, eliminar identificadores de usuarios y subclaves de nuestra
|
| 299 |
propia clave no es siempre conveniente, ya que puede complicar la
|
| 300 |
distribución de la clave.
|
| 301 |
Por definición, cuando un usuario importa nuestra clave pública actualizada
|
| 302 |
ésta se fusiona con la copia de la clave pública vieja en su anillo de
|
| 303 |
claves, siempre que la vieja esté allí «a priori».
|
| 304 |
Los componentes de ambas claves se combinan con la fusión, y el resultado de
|
| 305 |
ésta es que se añade cualquier nuevo componente, pero también que se
|
| 306 |
restaura cualquier componente eliminado.
|
| 307 |
Para actualizar de manera correcta la clave es necesario que el usuario
|
| 308 |
elimine primero la versión antigua de nuestra clave, y después que importe la
|
| 309 |
versión nueva.
|
| 310 |
Esto significa una carga extra para la gente con la que nos comunicamos.
|
| 311 |
Es más, si enviáramos nuestra clave a un servidor de claves la fusión
|
| 312 |
ocurriría a nuestro pesar, y cualquiera que se bajara nuestra clave del
|
| 313 |
servidor no vería nunca nuestra clave con los componentes eliminados.
|
| 314 |
En consecuencia, para actualizar nuestra propia clave es mejor revocar los
|
| 315 |
componentes de la clave que eliminarlos.
|
| 316 |
</para>
|
| 317 |
</sect2>
|
| 318 |
|
| 319 |
<sect2>
|
| 320 |
<title>
|
| 321 |
Revocar componentes de una clave
|
| 322 |
</title>
|
| 323 |
|
| 324 |
<para>
|
| 325 |
Para revocar una subclave antes tenemos que seleccionarla.
|
| 326 |
Una vez seleccionada, puede ser revocada con la orden
|
| 327 |
<link linkend="revkey"><command>revkey</command></link>.
|
| 328 |
La clave se revoca añadiéndole una autofirma de revocación.
|
| 329 |
Al contrario que la opción de la línea de órdenes
|
| 330 |
<option>--gen-revoke</option>, el efecto de revocación de una subclave es
|
| 331 |
inmediato.
|
| 332 |
</para>
|
| 333 |
|
| 334 |
<screen width="80">
|
| 335 |
|
| 336 |
<prompt>Command></prompt> <userinput>key</userinput> <parameter>4D88ACC4</parameter>
|
| 337 |
|
| 338 |
pub 1024D/1208DD4F created: 1999-09-24 expires: never trust: -/u
|
| 339 |
sub 1024g/B9688D9E created: 1999-09-24 expires: never
|
| 340 |
sub* 2016G/4D88ACC4 created: 1999-09-26 expires: 2002-09-25
|
| 341 |
sub 960D/412EAF0C created: 1999-09-26 expires: 2002-09-25
|
| 342 |
(1) Jordi (Castell S.L.) <jordi@cat.es>
|
| 343 |
(2) Jordi (oficina) <jordi@castell.com>
|
| 344 |
|
| 345 |
<prompt>Command></prompt> <userinput>revkey</userinput>
|
| 346 |
Do you really want to revoke this key? y
|
| 347 |
|
| 348 |
You need a passphrase to unlock the secret key for
|
| 349 |
user: "Jordi (Castell S.L.) <jordi@cat.es>"
|
| 350 |
1024-bit DSA key, ID 1208DD4F, created 1999-09-24
|
| 351 |
|
| 352 |
pub 1024D/1208DD4F created: 1999-09-24 expires: never trust: -/u
|
| 353 |
sub 1024g/B9688D9E created: 1999-09-24 expires: never
|
| 354 |
sub 2016G/4D88ACC4 created: 1999-09-26 expires: 2002-09-25
|
| 355 |
rev! subkey has been revoked: 1999-09-26
|
| 356 |
sub 960D/412EAF0C created: 1999-09-26 expires: 2002-09-25
|
| 357 |
(1) Jordi (Castell S.L.) <jordi@cat.es>
|
| 358 |
(2) Jordi (oficina) <jordi@castell.com>
|
| 359 |
</screen>
|
| 360 |
|
| 361 |
<para>
|
| 362 |
La revocación de un identificador de usuario funciona de modo diferente.
|
| 363 |
Generalmente, un identificador de usuario recolecta firmas que atestigüen que
|
| 364 |
el identificador de usuario describe a la persona que sea la auténtica
|
| 365 |
propietaria de la clave asociada.
|
| 366 |
En teoría un identificador de usuario describe a una persona para siempre,
|
| 367 |
ya que la identidad de esa persona no cambiará nunca.
|
| 368 |
En la práctica los elementos del identificador de usuario, como la dirección
|
| 369 |
de correo electrónico y el comentario, pueden cambiar con el tiempo,
|
| 370 |
invalidando así el identificador de usuario.
|
| 371 |
</para>
|
| 372 |
|
| 373 |
<para>
|
| 374 |
Las especificaciones de OpenPGP
|
| 375 |
<comment>Primera referencia a OpenPGP</comment>
|
| 376 |
no preveen la revocación del identificador de usuario, pero un identificador
|
| 377 |
de usuario puede ser revocado de modo efectivo, revocando la autofirma en el
|
| 378 |
identificador de usuario.
|
| 379 |
Por razones de seguridad descritas
|
| 380 |
<link linkend="integrity">anteriormente</link>, los corresponsales no
|
| 381 |
confiarán en un identificador de usuario con una autofirma no válida.
|
| 382 |
</para>
|
| 383 |
|
| 384 |
<para>
|
| 385 |
Una firma puede ser revocada mediante la orden
|
| 386 |
<link linkend="revsig"><command>revsig</command></link>.
|
| 387 |
Como es posible que hayamos firmado cualquier cantidad de identificadores de
|
| 388 |
usuario, la interfaz nos pedirá que decidamos si queremos o no revocar cada
|
| 389 |
una de las firmas.
|
| 390 |
</para>
|
| 391 |
|
| 392 |
<screen width="80">
|
| 393 |
<prompt>Command></prompt> <userinput>revsig</userinput>
|
| 394 |
Command> revsig
|
| 395 |
You have signed these user IDs:
|
| 396 |
Jordi (Castell S.L.) <jordi@cat.es>
|
| 397 |
signed by 1208DD4F at 1999-09-24
|
| 398 |
Jordi (oficina) <jordi@castell.com>
|
| 399 |
signed by 1208DD4F at 1999-09-26
|
| 400 |
user ID: "Jordi (Castell S.L.) <jordi@cat.es>"
|
| 401 |
signed with your key 1208DD4F at 1999-09-24
|
| 402 |
Create a revocation certificate for this signature? (y/N)n
|
| 403 |
user ID: "Jordi (oficina) <jordi@castell.com>"
|
| 404 |
signed with your key 1208DD4F at 1999-09-26
|
| 405 |
Create a revocation certificate for this signature? (y/N)y
|
| 406 |
You are about to revoke these signatures:
|
| 407 |
Jordi (oficina) <jordi@castell.com>
|
| 408 |
signed by 1208DD4F at 1999-09-26
|
| 409 |
Really create the revocation certificates? (y/N)y
|
| 410 |
|
| 411 |
You need a passphrase to unlock the secret key for
|
| 412 |
user: "Jordi (Castell S.L.) <jordi@cat.es>"
|
| 413 |
1024-bit DSA key, ID 1208DD4F, created 1999-09-24
|
| 414 |
|
| 415 |
Enter passphrase:
|
| 416 |
|
| 417 |
pub 1024D/1208DD4F created: 1999-09-24 expires: never trust: -/u
|
| 418 |
sub 1024g/B9688D9E created: 1999-09-24 expires: never
|
| 419 |
sub 2016G/4D88ACC4 created: 1999-09-26 expires: 2002-09-25
|
| 420 |
rev! subkey has been revoked: 1999-09-26
|
| 421 |
sub 960D/412EAF0C created: 1999-09-26 expires: 2002-09-25
|
| 422 |
(1) Jordi (Castell S.L.) <jordi@cat.es>
|
| 423 |
(2) Jordi (oficina) <jordi@castell.com>
|
| 424 |
</screen>
|
| 425 |
|
| 426 |
<para>
|
| 427 |
Un identificador de usuario revocado vendrá indicado por la firma de
|
| 428 |
revocación en el identificador, y se podrá ver en las firmas en la lista de
|
| 429 |
identificadores de usuario de las claves.
|
| 430 |
</para>
|
| 431 |
|
| 432 |
<screen width="80">
|
| 433 |
<prompt>Command<</prompt> <userinput>check</userinput>
|
| 434 |
uid Jordi (Castell S.L.) <jordi@cat.es>
|
| 435 |
sig! 1208DD4F 1999-09-24 [self-signature]
|
| 436 |
uid Jordi (oficina) <jordi@castell.com>
|
| 437 |
rev! 1208DD4F 1999-09-26 [revocation]
|
| 438 |
sig! 1208DD4F 1999-09-26 [self-signature]
|
| 439 |
sig! B87DBA93 1999-06-28 [self-signature]
|
| 440 |
</screen>
|
| 441 |
|
| 442 |
<para>
|
| 443 |
Al revocar tanto las subclaves como las autofirmas en los identificadores de
|
| 444 |
usuarios, añadimos autofirmas de revocación a la clave.
|
| 445 |
Ya que las firmas son añadidas a la clave y no eliminamos nada, una
|
| 446 |
revocación siempre estará visible para otros usuarios desde el momento en el
|
| 447 |
que la actualización de nuestra clave pública sea distribuida y fusionada con
|
| 448 |
las copias más viejas de ésta.
|
| 449 |
Por lo tanto, la revocación garantiza que todos los usuarios tengan una copia
|
| 450 |
consistente de nuestra clave pública.
|
| 451 |
</para>
|
| 452 |
</sect2>
|
| 453 |
|
| 454 |
<sect2>
|
| 455 |
<title>
|
| 456 |
Actualizar la fecha de caducidad de una clave
|
| 457 |
</title>
|
| 458 |
|
| 459 |
<para>
|
| 460 |
La fecha de caducidad de una clave puede ser actualizada con la orden
|
| 461 |
<link linkend="expire"><command>expire</command></link>
|
| 462 |
desde el menú de edición de la clave.
|
| 463 |
Si no se selecciona ninguna clave, se actualizará la fecha de caducidad de la
|
| 464 |
clave primaria.
|
| 465 |
De otro modo, se actualizará la fecha de caducidad de la clave subordinada
|
| 466 |
que hayamos seleccionado.
|
| 467 |
</para>
|
| 468 |
|
| 469 |
<para>
|
| 470 |
La fecha de caducidad de una clave está asociada con la autofirma de la
|
| 471 |
clave.
|
| 472 |
La fecha de caducidad se actualiza eliminando la autofirma antigua y
|
| 473 |
añadiendo una nueva autofirma.
|
| 474 |
Ya que los corresponsales no habrán eliminado la autofirma antigua, verán una
|
| 475 |
autofirma adicional en la clave cuando actualicen su copia de nuestra clave.
|
| 476 |
La última autofirma es la que tiene precedencia, así que todos los
|
| 477 |
corresponsales pueden saber sin ambigüedad las fechas de caducidad de
|
| 478 |
nuestras claves.
|
| 479 |
</para>
|
| 480 |
</sect2>
|
| 481 |
</sect1>
|
| 482 |
|
| 483 |
<sect1>
|
| 484 |
<title>
|
| 485 |
Validar otras claves en nuestro anillo de claves públicas
|
| 486 |
</title>
|
| 487 |
|
| 488 |
<para>
|
| 489 |
En el capítulo <xref linkend="intro"> se introdujo un procedimiento para
|
| 490 |
validar las claves públicas de otros usuarios: la clave de otro usuario se
|
| 491 |
valida comprobando personalmente la huella digital de su clave, y firmando su
|
| 492 |
clave pública con nuestra clave privada.
|
| 493 |
Comprobando personalmente la huella digital podemos estar seguros de que la
|
| 494 |
clave pertenece realmente al supuesto usuario y, dado que hemos firmado la
|
| 495 |
clave, podemos estar seguros de que detectaremos cualquier manipulación o
|
| 496 |
falsificación en un futuro.
|
| 497 |
Desafortunadamente este proceso se complicado cuando debemos validar un gran
|
| 498 |
número de claves o cuando debemos comunicarnos con personas a las que no
|
| 499 |
conocemos personalmente.
|
| 500 |
</para>
|
| 501 |
|
| 502 |
<para>
|
| 503 |
&Gnupg; trata este problema con un mecanismo conocido como
|
| 504 |
<firstterm>anillo de confianza</firstterm>.
|
| 505 |
En el modelo del anillo de confianza la responsabilidad de la validación de
|
| 506 |
las claves públicas recae en las personas en las que confiamos.
|
| 507 |
Por ejemplo, supongamos que
|
| 508 |
<itemizedlist spacing="compact">
|
| 509 |
<listitem>
|
| 510 |
<para>
|
| 511 |
Javier ha firmado la clave de Arancha y que,
|
| 512 |
</para>
|
| 513 |
</listitem>
|
| 514 |
<listitem>
|
| 515 |
<para>
|
| 516 |
Arancha ha firmado las claves de Jordi y de Ignacio.
|
| 517 |
</para>
|
| 518 |
</listitem>
|
| 519 |
</itemizedlist>
|
| 520 |
|
| 521 |
Si Javier confía en Arancha lo suficiente como para validar las claves que él
|
| 522 |
firma, entonces Javier puede deducir que las claves de Jordi y de Ignacio son
|
| 523 |
válidas sin llegar a comprobarlas personalmente.
|
| 524 |
Javier se limitará a usar su copia validada de la clave pública de Arancha para
|
| 525 |
comprobar que las firmas de Arancha sobre Jordi e Ignacio son auténticas.
|
| 526 |
Por lo general, y asumiendo que Javier confíe plenamente en todos como para
|
| 527 |
validar las claves que firmen, cualquier clave firmada por una clave válida
|
| 528 |
también es considerada válida.
|
| 529 |
El origen es la clave de Javier, que se asumirá axiomáticamente como válida.
|
| 530 |
</para>
|
| 531 |
|
| 532 |
<sect2>
|
| 533 |
<title>
|
| 534 |
Confianza en el propietario de una clave
|
| 535 |
</title>
|
| 536 |
|
| 537 |
<para>
|
| 538 |
En la práctica la confianza es algo subjetivo.
|
| 539 |
Por ejemplo, la clave de Arancha es válida para Javier ya que ha sido firmada
|
| 540 |
por ella, pero Javier puede desconfiar de otras claves que hayan sido
|
| 541 |
validadas por la firma de Arancha.
|
| 542 |
En este caso, Javier no aceptaría las claves de Jordi e Ignacio como válidas
|
| 543 |
sólo porque hayan sido firmadas por Arancha.
|
| 544 |
El modelo del anillo de confianza prevee este caso mediante un indicador que
|
| 545 |
asocia nuestro nivel de confianza en el propieario de la clave, a cada clave
|
| 546 |
pública en nuestro anillo de claves.
|
| 547 |
Existen cuatro niveles de confianza:
|
| 548 |
|
| 549 |
<variablelist>
|
| 550 |
<varlistentry>
|
| 551 |
<term>
|
| 552 |
unknown
|
| 553 |
</term>
|
| 554 |
<listitem>
|
| 555 |
<para>
|
| 556 |
Desconocido.
|
| 557 |
No se sabe nada sobre el dueño de la clave firmante.
|
| 558 |
Las claves en nuestro anillo de claves que no nos pertenezcan tendrán al
|
| 559 |
principio este nivel de confianza.
|
| 560 |
</para>
|
| 561 |
</listitem>
|
| 562 |
</varlistentry>
|
| 563 |
<varlistentry>
|
| 564 |
<term>
|
| 565 |
none
|
| 566 |
</term>
|
| 567 |
<listitem>
|
| 568 |
<para>
|
| 569 |
Ninguno.
|
| 570 |
Se sabe que el propietario firma otras claves de modo impropio.
|
| 571 |
</para>
|
| 572 |
</listitem>
|
| 573 |
</varlistentry>
|
| 574 |
<varlistentry>
|
| 575 |
<term>
|
| 576 |
marginal
|
| 577 |
</term>
|
| 578 |
<listitem>
|
| 579 |
<para>
|
| 580 |
Marginal.
|
| 581 |
El propietario comprende las implicaciones de firmar una clave y valida las
|
| 582 |
claves de forma correcta antes de firmarlas.
|
| 583 |
</para>
|
| 584 |
</listitem>
|
| 585 |
</varlistentry>
|
| 586 |
<varlistentry>
|
| 587 |
<term>
|
| 588 |
full
|
| 589 |
</term>
|
| 590 |
<listitem>
|
| 591 |
<para>
|
| 592 |
Absoluto.
|
| 593 |
El propietario comprende perfectamente las implicaciones de firmar una clave
|
| 594 |
y su firma sobre una clave es tan buena como la nuestra.
|
| 595 |
</para>
|
| 596 |
</listitem>
|
| 597 |
</varlistentry>
|
| 598 |
</variablelist>
|
| 599 |
|
| 600 |
El nivel de confianza en una clave es algo que sólo nosotros podemos asignar
|
| 601 |
a la clave, y se considera información privada.
|
| 602 |
El nivel de confianza no se exporta con la clave, de hecho no se almacena en
|
| 603 |
los anillos de claves sino en una base de datos aparte.
|
| 604 |
</para>
|
| 605 |
|
| 606 |
<para>
|
| 607 |
El editor de claves de &gnupg; puede ser usado para ajustar nuestra confianza
|
| 608 |
en el propietario de una clave.
|
| 609 |
La orden es <link linkend="trust"><command>trust</command></link>.
|
| 610 |
En el siguiente ejemplo Javier edita su confianza en Arancha y actualiza la base
|
| 611 |
de datos para recomputar qué claves son válidas, basándose en su nuevo nivel
|
| 612 |
de confianza en Arancha.
|
| 613 |
|
| 614 |
<screen width="80">
|
| 615 |
<prompt>javier:~$</prompt> <userinput>gpg --edit-key Aranzanzu</userinput>
|
| 616 |
|
| 617 |
pub 1024D/B63E132C created: 1999-09-24 expires: never trust: q/f
|
| 618 |
sub 1024g/581A915F created: 1999-09-24 expires: never
|
| 619 |
(1) Ar\xc3\xa1nzazu (A.G.deZ.) <arancha@nav.es>
|
| 620 |
|
| 621 |
<prompt>Command></prompt> <userinput>trust</userinput>
|
| 622 |
pub 1024D/B63E132C created: 1999-09-24 expires: never trust: q/f
|
| 623 |
sub 1024g/581A915F created: 1999-09-24 expires: never
|
| 624 |
(1) Ar\xc3\xa1nzazu (A.G.deZ.) <arancha@nav.es>
|
| 625 |
|
| 626 |
Please decide how far you trust this user to correctly
|
| 627 |
verify other users' keys (by looking at passports,
|
| 628 |
checking fingerprints from different sources...)?
|
| 629 |
|
| 630 |
1 = Don't know
|
| 631 |
2 = I do NOT trust
|
| 632 |
3 = I trust marginally
|
| 633 |
4 = I trust fully
|
| 634 |
s = please show me more information
|
| 635 |
m = back to the main menu
|
| 636 |
|
| 637 |
<prompt>Your decision?</prompt> <userinput>3</userinput>
|
| 638 |
|
| 639 |
pub 1024D/B63E132C created: 1999-09-24 expires: never trust: m/f
|
| 640 |
sub 1024g/581A915F created: 1999-09-24 expires: never
|
| 641 |
(1) Ar\xc3\xa1nzazu (A.G.deZ.) <arancha@nav.es>
|
| 642 |
|
| 643 |
<prompt>Command></prompt> <userinput>quit</userinput>
|
| 644 |
[...]
|
| 645 |
</screen>
|
| 646 |
|
| 647 |
La confianza en el propietario de la clave y la validez de la clave se
|
| 648 |
indican a la derecha al mostrar la clave.
|
| 649 |
La confianza en el propietario se muestra primero, y la validez
|
| 650 |
después<footnote><para>N. de T.: &Gnupg; hace un uso excesivo de la palabra
|
| 651 |
“trust”, utilizándola en el sentido de «confianza en el
|
| 652 |
propietario y confianza en la clave».
|
| 653 |
Esto puede llevar a confusión.
|
| 654 |
Algunas veces la confianza en un propietario viene referida como
|
| 655 |
<firstterm>owner-trust</firstterm>
|
| 656 |
para distinquirla de la confianza en una clave.
|
| 657 |
Sin embargo, a lo largo de este manual “trust” se usa en el
|
| 658 |
sentido de «confianza en el propietario de la clave», y
|
| 659 |
“validity” en el sentido de «confianza en que una clave
|
| 660 |
pertenece a la persona asociada con el identificador de clave».
|
| 661 |
</para></footnote>.
|
| 662 |
Los cuatro niveles de confianza/validez se encuentran abreviados: unknown
|
| 663 |
(<literal>q</literal>), none (<literal>n</literal>), marginal
|
| 664 |
(<literal>m</literal>), y full (<literal>f</literal>).
|
| 665 |
O sea, <firstterm>desconocido</firstterm>, <firstterm>ninguno</firstterm>,
|
| 666 |
<firstterm>marginal</firstterm> y <firstterm>absoluto</firstterm>.
|
| 667 |
En este caso, la clave de Arancha es totalmente válida ya que está firmada por
|
| 668 |
Javier. Al principio el nivel de confianza que Javier tiene en Arancha es
|
| 669 |
desconocido, por lo que no procede validar otras claves;
|
| 670 |
pero luego decide confiar en ella de modo marginal.
|
| 671 |
</para>
|
| 672 |
</sect2>
|
| 673 |
|
| 674 |
<sect2>
|
| 675 |
<title>
|
| 676 |
Usar la confianza para validar las claves
|
| 677 |
</title>
|
| 678 |
|
| 679 |
<para>
|
| 680 |
El anillo de confianza permite usar un algoritmo más elaborado para validar
|
| 681 |
una clave.
|
| 682 |
Anteriormente, una clave sólo se consideraba válida si la firmábamos
|
| 683 |
nosotros personalmente.
|
| 684 |
<!-- HERE, math -->
|
| 685 |
Ahora es posible usar un algoritmo más flexible: una clave
|
| 686 |
<emphasis>K</emphasis> se considera válida si cumple dos condiciones:
|
| 687 |
<orderedlist spacing="compact">
|
| 688 |
<listitem>
|
| 689 |
<para>
|
| 690 |
si viene firmada por las suficientes claves válidas, lo que quiere decir
|
| 691 |
<itemizedlist spacing="compact">
|
| 692 |
<listitem>
|
| 693 |
<para>
|
| 694 |
que la hemos firmado nosotros personalmente,
|
| 695 |
</para>
|
| 696 |
</listitem>
|
| 697 |
<listitem>
|
| 698 |
<para>
|
| 699 |
o que ha sido firmada por una clave de plena confianza,
|
| 700 |
</para>
|
| 701 |
</listitem>
|
| 702 |
<listitem>
|
| 703 |
<para>
|
| 704 |
o que ha sido firmada por tres claves de confianza marginal;
|
| 705 |
</para>
|
| 706 |
</listitem>
|
| 707 |
</itemizedlist>
|
| 708 |
</para>
|
| 709 |
</listitem>
|
| 710 |
<listitem>
|
| 711 |
<para>
|
| 712 |
<!-- HERE, math -->
|
| 713 |
y si el camino de claves firmadas que nos lleva desde <emphasis>K</emphasis>
|
| 714 |
hasta nuestra propia clave es de cinco pasos o menos.
|
| 715 |
</para>
|
| 716 |
</listitem>
|
| 717 |
</orderedlist>
|
| 718 |
|
| 719 |
La longitud del camino, en número de claves con confianza marginal
|
| 720 |
requeridas, y el número de claves con confianza plena requeridas se pueden
|
| 721 |
cambiar.
|
| 722 |
Los números dados arriba son los valores por definición usados por &gnupg;.
|
| 723 |
</para>
|
| 724 |
|
| 725 |
<para>
|
| 726 |
<xref linkend="wot-examples"> muestra un anillo de confianza cuyo origen está
|
| 727 |
en Javier.
|
| 728 |
El gráfico ilustra quién ha firmado las claves de quién.
|
| 729 |
La tabla muestra qué claves son consideradas válidas por Javier en base a su
|
| 730 |
confianza en otros miembros del anillo.
|
| 731 |
<comment>Un error potential: <option>--completes-needed</option> en la línea
|
| 732 |
de órdenes, parece que es ignorado al combinarlo con
|
| 733 |
<option>--update-trustdb</option>.
|
| 734 |
Sin embargo, el valor se toma correctamente si se pone en el fichero
|
| 735 |
&dquo;options&dquo;.</comment>
|
| 736 |
Este ejemplo asume que se necesitan dos claves de confianza marginal o una
|
| 737 |
de confianza plena para validar otra clave.
|
| 738 |
La longitud máxima del camino es tres.
|
| 739 |
</para>
|
| 740 |
|
| 741 |
<para>
|
| 742 |
Al computar claves válidas en el ejemplo, las de Arancha e Ignacio siempre son
|
| 743 |
consideradas como totalmente válidas, ya que están directamente firmadas por
|
| 744 |
Javier.
|
| 745 |
La validez de las otras claves depende de la confianza.
|
| 746 |
En el primer caso la confianza en Ignacio es plena, lo que implica que las
|
| 747 |
claves de Jordi y Claudia se considerarán válidas.
|
| 748 |
En el segundo ejemplo la confianza en Arancha e Ignacio es marginal.
|
| 749 |
Ya que son necesarias dos claves de confianza marginal para dar validez total
|
| 750 |
a una clave, la clave de Jordi será considerada como totalmente válida, pero
|
| 751 |
la clave de Claudia será considerada sólo como marginalmente válida.
|
| 752 |
En el caso en el que Jordi e Ignacio tuvieran confianza marginal, la clave de
|
| 753 |
Jordi sería marginalmente válida ya que la clave de Ignacio es totalmente
|
| 754 |
válida.
|
| 755 |
Sin embargo, la clave de Claudia será considerada marginalmente válida ya que
|
| 756 |
sólo se puede usar una clave completamente válida para validar otras claves,
|
| 757 |
y la clave de Ignacio es la única clave válida que se ha usado para firmar la
|
| 758 |
clave de Claudia.
|
| 759 |
Al añadir un nivel de confianza marginal a Arancha, la clave de Jordi se
|
| 760 |
convierte en totalmente válida y por tanto puede ser usada para validar
|
| 761 |
totalmente la clave de Claudia, y validar marginalmente la clave de Jimena.
|
| 762 |
Por último, una confianza plena en Arancha, Jordi y Jimena es todavía
|
| 763 |
insuficiente para validar la clave de Gonzalo ya que el camino máximo de
|
| 764 |
certificación es tres, pero la longitud del camino desde Gonzalo hasta Javier es
|
| 765 |
cuatro.
|
| 766 |
</para>
|
| 767 |
|
| 768 |
<para>
|
| 769 |
El modelo del anillo de confianza es una aproximación flexible al problema
|
| 770 |
del intercambio seguro de claves públicas.
|
| 771 |
Nos permite poner a punto &gnupg; para que refleje el modo en que lo usamos.
|
| 772 |
Es posible llegar a insistir en múltiples caminos cortos desde nuestra clave
|
| 773 |
hasta otra clave <emphasis>K</emphasis> para cambiar el nivel de confianza.
|
| 774 |
Por otra parte, puede ser que caminos más largos nos satisfagan e incluso
|
| 775 |
un sólo camino desde nuestra clave hasta la otra clave
|
| 776 |
<emphasis>K</emphasis>.
|
| 777 |
El requerimiento de múltiples caminos cortos es una fuerte garantía de que
|
| 778 |
<emphasis>K</emphasis> pertenece a quien nosotros creemos.
|
| 779 |
El precio, por supuesto, es la dificultad añadida para validar claves, ya que
|
| 780 |
debemos firmar personalmente más claves que si aceptáramos menos y más largos
|
| 781 |
caminos.
|
| 782 |
</para>
|
| 783 |
|
| 784 |
<figure id="wot-examples" float=1>
|
| 785 |
<title>
|
| 786 |
Un anillo de confianza hipotético
|
| 787 |
</title>
|
| 788 |
<!--
|
| 789 |
The graph indicates who has signed who's keys.
|
| 790 |
The table, in which names have been abbreviated, shows which keys are
|
| 791 |
valid depending on how Alice trusts other members in the web.
|
| 792 |
Alice considers different keys valid depending on how she trusts
|
| 793 |
the members of the web.
|
| 794 |
-->
|
| 795 |
|
| 796 |
<mediaobject>
|
| 797 |
<!-- using marked sections here is not the perfect solution but
|
| 798 |
until we have figured out how to modify the stylesheets to
|
| 799 |
prefer one format over another depending on the backend,
|
| 800 |
we can do it this way.
|
| 801 |
The current TeX stylesheet takes only the first imageobject
|
| 802 |
We do mark only the first imageobject so that the mediaobject
|
| 803 |
is valid without requiring to do an nsgmls -i foo.
|
| 804 |
-->
|
| 805 |
<![ %tex; [
|
| 806 |
<imageobject>
|
| 807 |
<imagedata fileref="signatures.eps" format="eps">
|
| 808 |
</imageobject>
|
| 809 |
]]>
|
| 810 |
<imageobject>
|
| 811 |
<imagedata fileref="signatures.jpg" format="jpg">
|
| 812 |
</imageobject>
|
| 813 |
<textobject>
|
| 814 |
<phrase>A graph indicating who has signed who's key</phrase>
|
| 815 |
</textobject>
|
| 816 |
<textobject>
|
| 817 |
<para>
|
| 818 |
Some longer blurb to verbal describe the excact content
|
| 819 |
of the image. This may be of use for a Braille display.
|
| 820 |
</para>
|
| 821 |
</textobject>
|
| 822 |
</mediaobject>
|
| 823 |
|
| 824 |
<informaltable frame="all">
|
| 825 |
<tgroup cols="4" rowsep="1" colsep="1">
|
| 826 |
<colspec colname="one" colnum="1">
|
| 827 |
<colspec colname="two" colnum="2">
|
| 828 |
<colspec colname="three" colnum="3">
|
| 829 |
<colspec colname="four" colnum="4">
|
| 830 |
<spanspec spanname="lefthalf" namest="one" nameend="two" align="center">
|
| 831 |
<spanspec spanname="righthalf" namest="three" nameend="four" align="center">
|
| 832 |
|
| 833 |
<thead>
|
| 834 |
<row>
|
| 835 |
<entry spanname="lefthalf">trust/confianza</entry>
|
| 836 |
<entry spanname="righthalf">validity/validez</entry>
|
| 837 |
</row>
|
| 838 |
<row>
|
| 839 |
<entry align="center">marginal</entry>
|
| 840 |
<entry align="center">full/plena</entry>
|
| 841 |
<entry align="center">marginal</entry>
|
| 842 |
<entry align="center">full/plena</entry>
|
| 843 |
</row>
|
| 844 |
</thead>
|
| 845 |
<tbody>
|
| 846 |
<row>
|
| 847 |
<entry></entry>
|
| 848 |
<entry>Ignacio</entry>
|
| 849 |
<entry></entry>
|
| 850 |
<entry>Arancha, Jordi, Ignacio, Claudia</entry>
|
| 851 |
</row>
|
| 852 |
|
| 853 |
<row>
|
| 854 |
<entry>Arancha, Ignacio</entry>
|
| 855 |
<entry></entry>
|
| 856 |
<entry>Claudia</entry>
|
| 857 |
<entry>Arancha, Jordi, Ignacio</entry>
|
| 858 |
</row>
|
| 859 |
|
| 860 |
<row>
|
| 861 |
<entry>Jordi, Ignacio</entry>
|
| 862 |
<entry></entry>
|
| 863 |
<entry>Jordi, Claudia</entry>
|
| 864 |
<entry>Arancha, Ignacio</entry>
|
| 865 |
</row>
|
| 866 |
|
| 867 |
<row>
|
| 868 |
<entry>Arancha, Jordi, Ignacio</entry>
|
| 869 |
<entry></entry>
|
| 870 |
<entry>Jimena</entry>
|
| 871 |
<entry>Arancha, Jordi, Ignacio, Claudia</entry>
|
| 872 |
</row>
|
| 873 |
|
| 874 |
<row>
|
| 875 |
<entry></entry>
|
| 876 |
<entry>Arancha, Jordi, Jimena</entry>
|
| 877 |
<entry></entry>
|
| 878 |
<entry>Arancha, Jordi, Jimena, Claudia</entry>
|
| 879 |
</row>
|
| 880 |
</tbody>
|
| 881 |
</tgroup>
|
| 882 |
</informaltable>
|
| 883 |
</figure>
|
| 884 |
</sect2>
|
| 885 |
</sect1>
|
| 886 |
|
| 887 |
<sect1>
|
| 888 |
<title>
|
| 889 |
Distribución de claves
|
| 890 |
</title>
|
| 891 |
|
| 892 |
<para>
|
| 893 |
Lo ideal sería que pudiéramos distribuir nuestra clave entregándosela en
|
| 894 |
persona a nuestros corresponsales.
|
| 895 |
Sin embargo, en la práctica las claves se distribuyen a menudo por correo
|
| 896 |
electrónico o algún otro medio de comunicación electrónica.
|
| 897 |
La distribución por correo electrónico es una buena práctica sólo cuando
|
| 898 |
tengamos unos pocos corresponsales, e incluso si tuviéramos muchos
|
| 899 |
corresponsales, podríamos usar un medio alternativo como puede ser publicar
|
| 900 |
nuestra clave pública en nuestra página en internet.
|
| 901 |
Pero esto es inútil si las personas que necesitan nuestra clave pública no
|
| 902 |
saben dónde encontrar nuestra página.
|
| 903 |
</para>
|
| 904 |
|
| 905 |
<para>
|
| 906 |
Para solventar este problema existen los servidores de claves públicas que
|
| 907 |
recolectan y distribuyen las claves públicas.
|
| 908 |
Cuando un servidor recibe una clave pública, bien la añade a la base de datos
|
| 909 |
o bien la fusiona con una copia de la clave.
|
| 910 |
Cuando alguien requiere al servidor una clave pública, éste la busca en la
|
| 911 |
base de datos y, si la encuentra, la envía a quien se la haya solicitado.
|
| 912 |
</para>
|
| 913 |
|
| 914 |
<para>
|
| 915 |
Los servidores de claves también son útiles cuando hay muchas personas que
|
| 916 |
firman las claves de otras con frecuencia.
|
| 917 |
Sin un servidor de claves, cuando Arancha firmara la clave de Javier, debería
|
| 918 |
enviar a éste una copia de la clave firmada por ella de manera que Javier
|
| 919 |
pudiera añadir la clave firmada a su anillo de claves, así como distribuirla a
|
| 920 |
todos sus corresponsales.
|
| 921 |
Mediante este proceso Javier y Arancha sirven a la totalidad de la comunidad
|
| 922 |
construyendo lazos en forma de anillos de confianza o lo que es lo mismo,
|
| 923 |
mejorando la seguridad de PGP.
|
| 924 |
De todos modos esto es una molestia si se firman las claves con frecuencia.
|
| 925 |
</para>
|
| 926 |
|
| 927 |
<para>
|
| 928 |
El uso de un servidor de claves facilita este proceso.
|
| 929 |
Después de firmar la clave de Javier, Arancha puede enviar la copia firmada por
|
| 930 |
ella al servidor de claves.
|
| 931 |
El servidor de claves añade la firma de Arancha a la copia que ya existente
|
| 932 |
de la clave pública de Javier.
|
| 933 |
Las personas que estén interesadas en actualizar su copia de la clave de
|
| 934 |
Javier consultan al servidor por propia iniciativa para obtener la clave
|
| 935 |
actualizada.
|
| 936 |
Javier no necesita distribuir la clave y puede obtener las firmas en su clave
|
| 937 |
requiriéndolas al servidor.
|
| 938 |
<comment>La opción <option>--keyserver</option> debe preceder a las opciones
|
| 939 |
<option>--send-key</option> o <option>--recv-key</option>.
|
| 940 |
Esto es un error.</comment>
|
| 941 |
</para>
|
| 942 |
|
| 943 |
<para>
|
| 944 |
Se puede enviar una o más claves usando la opción de la línea de órdenes
|
| 945 |
<link linkend="send-keys"><option>--send-keys</option></link>.
|
| 946 |
Esta opción toma uno o más especificadores de clave, y envía las claves
|
| 947 |
especificadas al servidor de claves.
|
| 948 |
El servidor al que se envían las claves es especificado con la opción de la
|
| 949 |
línea de orden <link linkend="keyserver"><option>--keyserver</option></link>.
|
| 950 |
Paralelamente, la opción
|
| 951 |
<link linkend="recv-keys"><option>--recv-keys</option></link> se usa para
|
| 952 |
obtener claves desde un servidor de claves, pero la opción
|
| 953 |
<option>--recv-keys</option> requiere el uso de un identificador de clave
|
| 954 |
para poder especificar la clave deseada.
|
| 955 |
En el siguiente ejemplo Javier actualiza su clave pública con nuevas firmas
|
| 956 |
desde el servidor de claves <parameter>certserver.pgp.com</parameter> y acto
|
| 957 |
seguido envía su copia de la clave pública de Arancha al mismo servidor de
|
| 958 |
claves para que se actualice con las claves que él mismo pueda haber
|
| 959 |
añadido.
|
| 960 |
|
| 961 |
<screen width="80">
|
| 962 |
<prompt>javier:~$</prompt> <userinput>gpg --keyserver certserver.pgp.com
|
| 963 |
--recv-key D58711B7</userinput>
|
| 964 |
gpg: requesting key D58711B7 from certserver.pgp.com ...
|
| 965 |
gpg: key D58711B7: 1 new signature
|
| 966 |
|
| 967 |
gpg: Total number processed: 1
|
| 968 |
gpg: new signatures: 1
|
| 969 |
<prompt>javier:~$</prompt> <userinput>gpg --keyserver certserver.pgp.com
|
| 970 |
--send-key arancha@nav.es</userinput>
|
| 971 |
gpg: success sending to 'certserver.pgp.com' (status=200)
|
| 972 |
</screen>
|
| 973 |
|
| 974 |
Existen varios servidores de claves en funcionamiento en todo el mundo.
|
| 975 |
Los servidores más importantes están sincronizados de modo que es posible
|
| 976 |
elegir un servidor de claves cercano a nosotros en Internet y usarlo de
|
| 977 |
forma regular para enviar y recibir claves.
|
| 978 |
</para>
|
| 979 |
</sect1>
|
| 980 |
|
| 981 |
</chapter>
|
| 982 |
|