Utilizar claves públicas GPG de otros usuarios
- Cuando se recibe una clave pública de otro usuario tenemos que añadirla
a la base de datos de claves públicas (anillo de claves públicas).
Podemos hacerlo de varias maneras:
- si hemos recibido de ese usuario un archivo con su clave pública, haremos:
$ gpg --import <archivo> - si queremos bajarnos de un repositorio la clave pública de alguien, necesitamos su UID. Si
tenemos su fingerprint, los últimos 8 caracteres son el UID. Para comprobar si el servidor
dispone de la clave cuyo UID es aa8e6a57, haremos:
$ gpg --search-key aa8e6a57Para bajarnos la clave cuyo UID es aa8e6a57, haremos:
$ gpg --recv-keys aa8e6a57Para conectarnos a un servidor específico usaremos la opción --keyserver, por ejemplo:
$ gpg --keyserver pgpkeys.mit.edu --recv-keys aa8e6a57
- si hemos recibido de ese usuario un archivo con su clave pública, haremos:
- Para poder utilizarlas claves públicas de otros usuarios debemos
decirle a GPG que son válidas, cosa que podemos hacer de dos maneras:
- las claves públicas van acompañadas de un listado de
certificados X509,
el primero de los cuales es del propietario de la clave. Cada certificado está emitido
por un certificador, que es un usuario
que ha considerado válida esa clave pública. Yo tendré una base de datos
de certificadores y a cada uno le asignaré un nivel de confianza: Nula,
Total o No lo conozco. Cuando yo reciba una clave pública y a alguno de
sus certificadores yo lo tenga catalogado con un nivel de confianza Total,
automáticamente GPG considerará esa clave válida. De lo contrario, no
será válida y no podré usarla, ya que no será de fiar, a no ser que yo
mismo confirme su validez.
Cualquier usuario puede certificar una clave, pero existen instituciones que se dedican expresamente a la tarea de certificar claves públicas: son las llamadas Autoridades Certificadoras (CA, Certificate Authority), como VeriSign, OpenCA, EnTrust, etc.
- confirmo yo su validez. Si la clave pública recibida no viene firmada
por ningún certificador de confianza total, para usarla tendré que darle
yo validez. Previamente tendré que obtener el fingerprint por un medio alternativo
y seguro (por ejemplo, por teléfono) y comprobar si el fingerprint de dicha
clave pública corresponde realmente al remitente. Certificar una clave pública
sin verificarla adecuadamente implica asumir el riesgo de una posible suplantación.
De esa manera, mi nombre se añadirá al listado de certificadores que acompaña
a la clave. En ese caso, tengo la opción de reenviar la clave con mi firma
a su dueño para que disponga de ella.
Por ejemplo, si quiero enviar un documento cifrado a alguien y su clave pública no está certificada, la certificaré yo haciendo:
$ gpg --sign-key aa8e6a57o bien:
$ gpg --edit-key aa8e6a57Entraremos en modo interactivo, y ejecutaremos la orden:
Command> signNos pedirá la passphrase, confirmaremos que queremos certificar la clave y guardaremos los cambios:
Command> savePreviamente tengo que asegurarme de que esa clave es suya.
Si he certificado la clave, puedo enviarla al servidor de claves incluyendo ese certificado:
$ gpg --send-keys aa8e6a57Si no estoy seguro de que la clave sea suya pero de todos modos quiero utilizarla para cifrar un documento, lo que hare será certificar su clave (así podré usarla) pero de manera que mi certificado no se exporte a los servidores, haciendo:
$ gpg --edit-key aa8e6a57En vez de:
Command> signpondremos:
Command> lsignEsto significa que nuestro certificado es local y no se exportará. Confirmaremos que queremos certificar la clave y guardaremos los cambios.
- las claves públicas van acompañadas de un listado de
certificados X509,
el primero de los cuales es del propietario de la clave. Cada certificado está emitido
por un certificador, que es un usuario
que ha considerado válida esa clave pública. Yo tendré una base de datos
de certificadores y a cada uno le asignaré un nivel de confianza: Nula,
Total o No lo conozco. Cuando yo reciba una clave pública y a alguno de
sus certificadores yo lo tenga catalogado con un nivel de confianza Total,
automáticamente GPG considerará esa clave válida. De lo contrario, no
será válida y no podré usarla, ya que no será de fiar, a no ser que yo
mismo confirme su validez.
Deja un comentario
