You are on page 1of 25

GPG

Cifrado simtrico y
asimtrico

Manuel Ortega
Miguel
Javier Garca
2 Asir B
NDICE

Introduccin terica .......................................................................................................... 3


Criptografa simtrica ....................................................................................................... 3
Criptografa asimtrica ..................................................................................................... 4
Criptografa hbrida .......................................................................................................... 5
Resumen ........................................................................................................................... 6
Qu es GnuPG?............................................................................................................... 6
PGP ............................................................................................................................... 6
GPG .............................................................................................................................. 7
Anillo de claves ............................................................................................................ 7
Validar otras claves en nuestro anillo de claves pblicas ......................................... 7
Confianza en el propietario de una clave ................................................................. 8
Usar la confianza para validar las claves .................................................................. 9
Servidores de claves ............................................................................................... 10
Opciones del comando GPG ...................................................................................... 10
Prctica ............................................................................................................................11
Cifrado simtrico .........................................................................................................11
Cifrado asimtrico ...................................................................................................... 13
Creacin de una pareja de claves pblica y privada ............................................... 13
Exportacin de la clave pblica .............................................................................. 15
Importar clave pblica ............................................................................................ 16
Visualizacin del anillo de claves........................................................................... 16
Encriptacin usando la clave pblica ..................................................................... 17
Firma de una clave pblica ajena ........................................................................... 18
Firma digital de un documento ............................................................................... 19
Revocar una clave................................................................................................... 20
Servidor de claves pblicas: rediris ........................................................................ 22
Bibliografa ..................................................................................................................... 25
Introduccin terica
Desde que existe el lenguaje escrito, se vio la necesidad de
cifrar dicho lenguaje. Dicha necesidad naca del hecho de querer
comunicarse con otra persona sin que otra ajena a dicha
conversacin pudiera entender el mensaje.
Los Espartanos usaron la Esctala (Imagen 1), los Griegos usaron
el cifrado Polybios(Imagen 1) y Julio Cesar usara el cifrado
cesar (Imagen 2).

Imagen 1 Esctala Espartana Matriz de conversin del mtodo Polybios

Imagen 2 Mtodo Cesar

todos estos mtodos seran simtricos. Vista la necesidad y que


desde siempre se han usado. Veamos que es un cifrado simtrico y
que es un cifrado asimtrico.

Criptografa simtrica
La criptografa simtrica solo utiliza una clave para cifrar y
descifrar el mensaje, que tiene que conocer el emisor y el
receptor previamente. Por ejemplo, en el mtodo cesar el
receptor tena que conocer la equivalencia de letras, al igual
que en el Griego. Este es el punto dbil del sistema, ya que si
una persona ajena se hace con la clave puede descifrar el
mensaje sin problemas.
Dicha clave se puede interceptar cuando ha sido transmitida
entre el emisor y el receptor ya que ha sido transmitida sin
seguridad (dicindola en alto, mandndola por correo electrnico
u ordinario o haciendo una llamada telefnica). O tambin puede
tratar de adivinarse la clave por fuerza bruta. Es decir,
probando todas las posibilidades.
Tericamente debera de ser ms fcil conocer la clave
interceptndola que probndola una por una por fuerza bruta,

3(I)
teniendo en cuenta que la seguridad de un mensaje cifrado debe
recaer sobre la clave y nunca sobre el algoritmo (por lo que
sera una tarea eterna reventar la clave por un ataque de fuerza
bruta).

Ejemplo:

Si tenemos una contrasea de 6 caracteres alfabticos (alfabeto


de 26 caracteres) y quisiramos descubrirla por el mtodo de la
fuerza bruta, Cuntas contraseas diferentes tendramos que
probar en el peor de los casos? Y si slo fuesen nmeros?.

266=308915776 solo maysculas o minsculas.


526=19770609664 con mayscula y minsculas
nmerica 106

A la vista del ejemplo puede parecer que existen demasiadas


posibilidades. Pero lo cierto es que la computacin ha hecho que
probar esa cantidad de posibilidades sea relativamente sencillo,
pudiendo hacerse la labor en minutos u horas. Pero bastara con
usar un nmero elevado de caracteres en la clave mezclando
nmeros, letras y smbolos para que la labor sea casi imposible
hasta para un pc.

La primera mquina de criptografa que uso dicho sistema fue la


famosa enigma (Imagen 3). Usada por el ejercito nazi durante la
segunda guerra mundial. Los mensajes nazis acabaron siendo
descifrados en muchas ocasiones gracias a una mezcla de fuerza
bruta e informacin sobre como funcionaba el sistema de clave.

Imagen 3 Mquina Enigma

Criptografa asimtrica
La criptografa asimtrica se basa en el uso de dos claves: la
pblica (que se podr difundir sin ningn problema a todas las
personas que necesiten mandarte algo cifrado) y la privada (que
no debe de ser revelada nunca).

4(I)
Sabiendo lo anterior, si queremos que tres compaeros de trabajo
nos manden un archivo cifrado debemos de mandarle nuestra clave
pblica (que est vinculada a la privada) y nos podrn mandar de
forma confidencial ese archivo que solo nosotros podremos
descifrar con la clave privada.
Puede parecer a simple vista un sistema un poco cojo ya que
podramos pensar que sabiendo la clave pblica podramos deducir
la privada, pero este tipo de sistemas criptogrficos usa
algoritmos bastante complejos que generan a partir de la frase
de paso (la contrasea) la clave privada y pblica que pueden
tener perfectamente un tamao de 2048bits (probablemente
imposible de reventar).

Como os habris dado cuenta solo cifra una persona (con la clave
pblica) y la otra se limita a mirar el contenido, por lo que la
forma correcta de tener una comunicacin bidireccional sera
realizando este mismo proceso con dos pares de claves, o una por
cada comunicador.
Otro propsito de este sistema es tambin el de poder firmar
documentos, certificando que el emisor es quien dice ser,
firmando con la clave privada y verificando la identidad con la
pblica.

Diferencias entre criptografa simtrica y asimtrica

Para empezar, la criptografa simtrica es ms insegura ya que


el hecho de pasar la clave es una gran vulnerabilidad, pero se
puede cifrar y descifrar en menor tiempo del que tarda la
criptografa asimtrica, que es el principal inconveniente y es
la razn por la que existe la criptografa hbrida.

Criptografa hbrida
Este sistema es la unin de las ventajas de los dos anteriores,
debemos de partir que el problema de ambos sistemas
criptogrficos es que el simtrico es inseguro y el asimtrico
es lento.
El proceso para usar un sistema criptogrfico hbrido es el
siguiente (para enviar un archivo):
Generar una clave pblica y otra privada (en el receptor).
Cifrar un archivo de forma sncrona.
El receptor nos enva su clave pblica.
Ciframos la clave que hemos usado para encriptar el archivo
con la clave pblica del receptor.
Enviamos el archivo cifrado (sncronamente) y la clave del
archivo cifrada (asncronamente y solo puede ver el
receptor).

5(I)
Resumen
Estos son los mtodos criptogrficos modernos que usamos
comnmente, aunque las aplicaciones nos abstraigan de todo esto,
pero podemos hacerlo de forma manual si se diera el caso de que
necesitamos mandar ciertos contenidos y queremos que tengan la
confidencialidad adecuada.

Qu es GnuPG?
Para resolver esta pregunta, definamos primero que es PGP.

PGP
PGP es un criptosistema hbrido que combina tcnicas de
criptografa simtrica y criptografa asimtrica. Esta
combinacin permite aprovechar lo mejor de cada uno: Como ya
sabemos el cifrado simtrico es ms rpido que el asimtrico o
de clave pblica, mientras que ste, a su vez, proporciona una
solucin al problema de la distribucin de claves en forma
segura y garantiza el no repudio de los datos y la no
suplantacin.

Imagen 4 Funcionamiento del cifrado PGP

6(I)
GPG
GPG (GNU Privacy Guard) es un derivado libre de PGP y su
utilidad es la de cifrar y firmar digitalmente, siendo adems
multiplataforma. Puede descargarse desde la pgina oficial:
https://www.gnupg.org/download/index.en.html

Aunque viene incorporado en algunos sistemas Linux, como en


Ubuntu (ser con el sistema que haremos todos los ejemplos).

Anillo de claves
GPG tiene un repositorio de claves (anillo de claves) donde
guarda todas las que tenemos almacenadas en nuestro sistema, ya
sean privadas o pblicas (como coment, con la clave pblica
cifraremos un mensaje que solo podr descifrar el que posee la
clave privada).

Ms adelante cuando veamos un anillo de claves debemos de


recordar que pub hace referencia a la clave pblica y sub hace
referencia a la privada (y que tenemos que tener a buen
recaudo).

Validar otras claves en nuestro anillo de claves pblicas

Para validar las claves pblicas de otros usuarios: la clave de


otro usuario se valida comprobando personalmente la huella
digital de su clave, y firmando su clave pblica con nuestra
clave privada. Comprobando personalmente la huella digital
podemos estar seguros de que la clave pertenece realmente al
supuesto usuario y, dado que hemos firmado la clave, podemos
estar seguros de que detectaremos cualquier manipulacin o
falsificacin en un futuro. Desafortunadamente este proceso se
complicado cuando debemos validar un gran nmero de claves o
cuando debemos comunicarnos con personas a las que no conocemos
personalmente.

GnuPG trata este problema con un mecanismo conocido como anillo


de confianza. En el modelo del anillo de confianza la
responsabilidad de la validacin de las claves pblicas recae en
las personas en las que confiamos. Por ejemplo, supongamos que

Javier ha firmado la clave de Manuel y que,


Manuel ha firmado las claves de Miguel y de Ignacio.

Si Javier confa en Manuel lo suficiente como para validar las


claves que l firma, entonces Javier puede deducir que las
claves de Miguel y de Ignacio son vlidas sin llegar a
comprobarlas personalmente. Javier se limitar a usar su copia
validada de la clave pblica de Manuel para comprobar que las
firmas de Manuel sobre Miguel e Ignacio son autnticas.

7(I)
Por lo general, y asumiendo que Javier confe plenamente en
todos como para validar las claves que firmen, cualquier clave
firmada por una clave vlida tambin es considerada vlida. El
origen es la clave de Javier, que se asumir axiomticamente
como vlida.

Confianza en el propietario de una clave

En la prctica la confianza es algo subjetivo. Por ejemplo, la


clave de Manuel es vlida para Javier ya que ha sido firmada por
ella, pero Javier puede desconfiar de otras claves que hayan
sido validadas por la firma de Manuel. En este caso, Javier no
aceptara las claves de Miguel e Ignacio como vlidas slo
porque hayan sido firmadas por Manuel. El modelo del anillo de
confianza prevee este caso mediante un indicador que asocia
nuestro nivel de confianza en el propieario de la clave, a cada
clave pblica en nuestro anillo de claves. Existen cuatro
niveles de confianza:

unknown

Desconocido. No se sabe nada sobre el dueo de la clave


firmante. Las claves en nuestro anillo de claves que no nos
pertenezcan tendrn al principio este nivel de confianza.

None

Ninguno. Se sabe que el propietario firma otras claves de modo


impropio.

Marginal

Marginal. El propietario comprende las implicaciones de firmar


una clave y valida las claves de forma correcta antes de
firmarlas.

Full

Absoluto. El propietario comprende perfectamente las


implicaciones de firmar una clave y su firma sobre una clave es
tan buena como la nuestra.
El nivel de confianza en una clave es algo que slo nosotros
podemos asignar a la clave, y se considera informacin privada.
El nivel de confianza no se exporta con la clave, de hecho no se
almacena en los anillos de claves sino en una base de datos
aparte.
El editor de claves de GnuPG puede ser usado para ajustar
nuestra confianza en el propietario de una clave. La orden es
trust. En el siguiente ejemplo Javier edita su confianza en
Manuel y actualiza la base de datos para recomputar qu claves
son vlidas, basndose en su nuevo nivel de confianza en Manuel.

8(I)
javier:~$ gpg --edit-key Aranzanzu

pub 1024D/B63E132C created: 1999-09-24 expires: never


trust: q/f
sub 1024g/581A915F created: 1999-09-24 expires: never
(1) Ar\xc3\xa1nzazu (A.G.deZ.) <Manuel@nav.es>

Command> trust
pub 1024D/B63E132C created: 1999-09-24 expires: never
trust: q/f
sub 1024g/581A915F created: 1999-09-24 expires: never
(1) Ar\xc3\xa1nzazu (A.G.deZ.) <Manuel@nav.es>

Please decide how far you trust this user to correctly


verify other users' keys (by looking at passports,
checking fingerprints from different sources...)?

1 = Don't know
2 = I do NOT trust
3 = I trust marginally
4 = I trust fully
s = please show me more information
m = back to the main menu

Your decision? 3

pub 1024D/B63E132C created: 1999-09-24 expires: never


trust: m/f
sub 1024g/581A915F created: 1999-09-24 expires: never
(1) Ar\xc3\xa1nzazu (A.G.deZ.) <Manuel@nav.es>

Command> quit

La confianza en el propietario de la clave y la validez de la


clave se indican a la derecha al mostrar la clave. La confianza
en el propietario se muestra primero, y la validez despus. Los
cuatro niveles de confianza/validez se encuentran abreviados:
unknown (q), none (n), marginal (m), y full (f). O sea,
desconocido, ninguno, marginal y absoluto. En este caso, la
clave de Manuel es totalmente vlida ya que est firmada por
Javier. Al principio el nivel de confianza que Javier tiene en
Manuel es desconocido, por lo que no procede validar otras
claves; pero luego decide confiar en ella de modo marginal.

Usar la confianza para validar las claves

El anillo de confianza permite usar un algoritmo ms elaborado


para validar una clave. Anteriormente, una clave slo se
consideraba vlida si la firmbamos nosotros personalmente.
Ahora es posible usar un algoritmo ms flexible: una clave K se
considera vlida si cumple dos condiciones:

9(I)
1. Viene firmada por las suficientes claves vlidas, lo que
quiere decir
Que la hemos firmado nosotros personalmente.
Que ha sido firmada por una clave de plena confianza.
Que ha sido firmada por tres claves de confianza
marginal.

2. Que el camino de claves firmadas que nos lleva desde K


hasta nuestra propia clave es de cinco pasos o menos.

La longitud del camino, en nmero de claves con confianza


marginal requeridas, y el nmero de claves con confianza plena
requeridas se pueden cambiar. Los nmeros dados arriba son los
valores por definicin usados por GnuPG.

Servidores de claves

Para que nos cifren un mensaje tenemos que compartir la clave


pblica de nuestro par de claves para cifrar, y como es un poco
engorroso difundir una clave a muchas personas existen los
servidores de claves PGP (compatibles con GPG), donde podrn
subirse las claves pblica. Unos ejemplos de servidores son
estos: pgp.rediris.es (espaol, aunque falla algunas veces) o
pgp.mit.edu (americano, del MIT).

Opciones del comando GPG


-c Cifrar con un algortmo simtrico

-a Produce una salida ASCII codificada en BASE64

--gen-key Genera un par de claves

--export Exporta una o ms claves pblicas

--import Importa las claves pblicas a nuestro keyring

-kv Verifica o comprueba nuestro keyring

-kvc Lista el fingerprint (huella) del keyring

--encrypt Cifrar con criptografa asimtrica

-r Especificar destinatario

-s Firma digitalmente un documento

-b Firma separada

-clearsign Firma sin cifrar

10(I)
Prctica

Cifrado simtrico
lo primero ser crear un directorio donde vamos a guardar todos
los ficheros. De esta forma tendremos toda la informacin bien
recogida.

# Mkdir simetrico

Dentro del directorio creamos un documento con contenido


arbitrario.

# echo Esto es una prueba del cifrado simtrico > prueba.txt

Podemos ver que el contenido ahora mismo es completamente


legible con la orden cat.

# cat prueba.txt

El comando GPG nos va a permitir cifrar dicho archivo con el


mtodo simtrico. Si ejecutamos # man gpg. Podemos ver todas las
opciones que nos permite este comando. En nuestro caso la opcin
-c es la que nos crea una archivo con cifrado simtrico.

#gpg -c "ruta del archivo"

Nos pedir una clave: En mi ejemplo he puesto pajarito. Lo


ptimo es usar una clave alfanumrica con smbolos y una
longitud mayor de 10. De esta forma ser menos vulnerable a un
ataque por fuerza bruta. !Ojo que no vemos que clave estamos
escribiendo, es decir, mientras tecleamos no aparece nada!.

Se nos crea un nuevo archivo con el mismo nombre al que se le


aade la extensin gpg.

Si hacemos un cat, veremos que nuestro mensaje original se ha


convertido en una serie de caracteres indescriptibles.

Si queremos que mantenga caracteres legibles pero que oculten el


mensaje, debemos aadir la opcin -a. La orden quedara:

#gpg -ca "ruta del archivo"

11(I)
Esto crear un archivo con el mismo nombre pero con extensin
.asc en vez de gpg.

En la Imagen 5 podemos verlo.

Imagen 5 Cifrado simtrico del archivo Prueba.txt

El siguiente paso es ponerse en la piel del receptor. Yo he


mandado mi archivo prueba.txt.asc a mi amigo Manuel. Que ahora
quiere saber que he querido decirle. Como nos conocemos desde
chicos, el sabe perfectamente que mi clave suele ser pajarito.
Sino, tendra que conseguir una manera segura de pasarle mi
clave. Como ya vimos en teora, este es uno de los problemas de
este sistema de cifrado.

Para descrifrar el mensaje basta con ejecutar:


# gpg "nombre del archivo"

nos pedir la clave, y si es correcta, nos crear un archivo con


el mismo nombre pero sin la extensin .gpg o .asc. Dicho fichero
contendr la informacin original sin cifrar. Podemos ver el
proceso en la Imagen 6.

Imagen 6 Descifrado de una clave simtrica conocida.

12(I)
Cifrado asimtrico

Creacin de una pareja de claves pblica y privada

Hemos visto que los algoritmos de cifrado asimtrico utilizan


dos claves para el cifrado y descifrado de mensajes. Cada
persona involucrada (receptor y emisor) debe disponer, por
tanto, de una pareja de claves pblica y privada.

Para generar nuestra pareja de claves con gpg utilizamos la


opcin --gen-key:

# gpg --gen-key

Tras ejecutar gpg con esta opcin, empieza un proceso


interactivo que va preguntando al usuario, que debe decidir
entre una serie de opciones. Iremos explicando este proceso
paso a paso con la ayuda de imgenes.

Ejecutamos el comando Imagen 7.

Imagen 7 Proceso de creacin de una clave privada y pblica. Sistema de cifrado

Las dos primeras opciones nos permiten elegir que tipo de


cifrado vamos a usar. La forma que usan para cifrar cada uno de
estos dos procedimientos es bastante compleja. Podemos encontrar
informacin en muchas pginas entre ellas, la propia wikipedia.

https://es.wikipedia.org/wiki/RSA

https://es.wikipedia.org/wiki/Cifrado_ElGamal

Las opciones tres y cuatro sirven para firmar un documento


usando el algoritmo DSA o RSA.

Para nuestra prctica usamos la opcin 1.

A continuacin nos pide que indiquemos la longitud de las


claves, a mayor longitud de la clave, mayor seguridad
obtendremos. Marcamos la opcin por defecto, 2048 bits.

13(I)
Imagen 8 Proceso de creacin de una clave privada y pblica. Longitud de la clave

El siguiente paso es indicar el periodo de validez de la clave.


Esto es necesario para que pasado un cierto tiempo, la clave que
vamos a crear deje de ser vlida. El motivo para hacer esto es
que, pasado un cierto tiempo, la seguridad de nuestras claves se
ve comprometida puesto que alguien ha podido intentar
descubrirlas. Por ello, es recomendable, establecer una fecha de
caducidad a nuestras claves. En mi caso he 23 das Imagen 9.

Imagen 9 Proceso de creacin de una clave privada y pblica. Tiempo de validez

A continuacin crearemos el identificador de nuestra clave, que


ser lo que tengamos que indicar cuando queramos utilizar
nuestra clave primaria. GPG crea el identificador de la
clave utilizando los datos introducidos: nombre, apellidos,
email... Imagen 10

Imagen 10 Proceso de creacin de una clave privada y pblica. Identificado de la clave

Ahora necesitamos proteger nuestra clave con una contrasea para


que nadie pueda utilizar nuestra clave, en caso de que
compartamos el equipo o alguien pueda obtener nuestras claves.
Tras esto, se inicia el proceso de creacin de claves:

Clave privada: SadCriptografia*

Si no estamos haciendo nada cuando iniciamos el proceso, la


mquina pedir que se hagan comportamiento aleatorios. Esto se
debe a que la creacin de nmero aleatorios por parte de un
ordenador, no es todo lo ptima que se quisiera, si no se tiene
lo suficiente procesos corriendo o se hacen varias tareas a la

14(I)
vez, podran encontrase patrones en la creacin de la clave que
permitieran ser descubierta por ataques de fuerza bruta. En la
Imagen 11 podemos ver la creacin y como se nos pide mayor
aleatoriedad.

Imagen 11 Proceso de creacin de una clave privada y pblica .Generacin de la clave

Exportacin de la clave pblica

Para enviar archivos cifrados a otras personas, necesitamos


disponer de sus claves pblicas. De la misma manera, si queremos
que cierta persona pueda enviarnos datos cifrados, sta necesita
conocer nuestra clave pblica. Para ello, podemos hacrsela
llegar por email por ejemplo.

Si queremos ver cmo es nuestra clave pblica utilizaremos el


siguiente comando:

# gpg -a --export key_id

donde key_id es el ID de la clave que queremos visualizar.

Imagen 12 Clave pblica para el ID Javier Garca Gmez

15(I)
El comando anterior muestra en pantalla nuestra clave pblica en
formato ASCII, si queremos exportar la clave directamente a un
archivo para poder enviarla a alguien, utilizamos alguno de los
comandos siguientes:

# gpg -a --export -o miclave.asc key_id


# gpg -a --export --output miclave.asc key_id
# gpg -a --export key_id > miclave.asc

donde miclave.asc es el nombre del archivo en el que se guardar


la clave.

Importar clave pblica

Cuando recibamos una clave pblica de otra persona, sta


deberemos incluirla en nuestro keyring o anillo de claves, que
es el lugar donde se almacenan todas las claves pblicas
de las que disponemos. Para incluir estas claves pblicas de
otras personas, lo haremos de la siguiente forma:

# gpg --import clavepublica.asc

donde clavepublica.asc es el nombre del archivo recibido con la


clave pblica.

Imagen 13 Importacin de la clave pblica de Javier Garca para el usuario Arantil

Visualizacin del anillo de claves

Una vez hemos importado la clave, podemos verificar el contenido


de nuestro keyring con la opcin -kv:

# gpg -kv

Imagen 14 Contenido del Keyring root

16(I)
Encriptacin usando la clave pblica

Cualquier usuario que conozca mi clave pblica y la tenga


guardada en su Keyring podr mandarme un mensaje cifrado usando
dicha clave. Podramos incluso cifrar el mismo mensaje usando
diferentes claves. Para verlo hemos creado otra clave pblica
para nuestro compaero Manuel Ortega (clave privada
SadCriptografia-).

Imagen 15 Contenido del Keryring

Imaginemos que Miguel quiere enviar un mensaje a Manuel y a


Javier para informarles de la marcha del trabajo pero no quiere
que Mara se pueda enterar del contenido. As que decide
cifrarlo.

Miguel tiene las clave pblicas de Miguel y Javier porque


estuvieron hacindolas en su ordenador as que ejecuta la orden:

# gpg -a -r Ortega -r Gmez -- encrypt mensajesad.txt

La orden anterior crear el archivo mensajesad.txt.asc, que es


el que enviar por correo a Manuel y Javier. Posteriormente,
ellos tras recibir el archivo cifrado, podrn descifrarlo puesto
que ha sido cifrado con su clave publica, y ellos disponen de la
clave privada para poder descifrarlo.
Con la orden siguiente podrn descifrar el archivo:

# gpg mensajesad.txt.asc

Imagen 16 Proceso de encriptacin con una clave pblica

17(I)
Imagen 17 Desencriptando con la clave privada

Firma de una clave pblica ajena

Vamos a ver como firmamos ahora una clave que hemos recibido.
Anteriormente importamos la clave de Javier Garca Gmez creada
por el usuario root, al usuario Arantil. Ahora vamos a crear un
juego de clave pblica-privada con Arantil. Para posteriormente
con esa firma que tiene absoluta confianza por parte del usuario
Arantil, poder firmar la clave de Javier Garca que creo root y
cuya confianza es desconocida para Arantil.

Hemos creado una clave a con uid Miguel cuya clave privada ser
Criptografia.

gpg --edit-key Javier Garca Gmez

Ahora ya estaremos dentro de GPG, y buscamos la huella digital


de nuestro compaero. con el comando fpr.

Debemos de ponernos en contacto con la persona poseedora de la


clave, para comprobar que es la misma huella y no haya sido
manipulada.

Ahora firmamos la clave. Para firmar deberemos de poner la


contrasea con la que creamos la clave privada. Para ello
ejecutamos sign.

De la Imagen 18 a la Imagen 21 podemos ver el proceso.

Imagen 18 Editamos al clave Javier Garca Gmez

18(I)
Imagen 19 Huella digital de la firma pblica de Javier Garca Gmez

Imagen 20 Ejecutamos sign y firmamos con nuestra clave privada

Imagen 21 Final del firmado de una clave de origen desconocido para darle confianza Total.

Firma digital de un documento

Con la firma de un documento, nos aseguramos de que los


destinatarios de ste, no tengan duda de que el autor del
mensaje es quien dice ser (autenticidad), y de que el
documento no ha sido modificado por nadie (integridad). Para
firmar un documento lo haremos de la siguiente forma:
# gpg -sb -a documentoafirmar

El programa nos pedir la contrasea de nuestra clave privada


puesto que sta es necesaria para firmar el documento, y el
resultado ser un archivo documentoafirmar.asc que contiene la
firma digital.
Para verificar que la firma es correcta, debemos poseer tanto el
documento original como el archivo de firma, y bastar con
ejecutar gpg sobre el archivo de firma:

# gpg documentoafirmar.asc

19(I)
Imagen 22 Firma de un documento digital

Revocar una clave

Vamos a generar el certificado de revocacin para una clave


especificada. Para poder revocar la clave, debemos de saber su
identificacin, para ello listamos las claves con

gpg -kv (Imagen 23)

Imagen 23 Listado de claves dentro del anillo de claves

Generamos el certificado de revocacin con gpg -gen-revoke


(identificador)(Imagen 24)

Imagen 24 Orden de revocacin para una clave

Decimos que s queremos crear un certificado de revocacin para


esta clave. Y elegimos la opcion 0, no se dio ninguna razn. A
continuacin, escribimos el motivo (Imagen 25)

20(I)
Imagen 25 Motivos de revocacin

Escribimos la contrasea y ya se cre el certificado de


revocacin(Imagen 26)

Imagen 26 Certificado de Revocacin completado

Vamos a aplicar ahora nuestro certificado. Para ello creamos un


fichero txt que contenga nuestro certificado.

#gedit revocacion.txt (Imagen 27)

Luego debemos importar dicho certificado y esto revocar nuestra


clave.

#gedit --import revocacion.txt (Imagen 28)

Imagen 27 Fichero txt de revocacin

21(I)
Imagen 28 Revocacin aplicada

Servidor de claves pblicas: rediris

Rediris ofrece la posibilidad de subir una clave pblica a su


servidor. De esa forma, cualquiera que quiera a acceder a
nuestra clave pblica solo tendr que acceder a www.rediris.es y
buscarla. Una vez encontada, tan solo tendr que descargarla e
importarla a su anillo de claves. Las Imagen 29 y Imagen 30
muestran como hemos subido una de nuestras claves al servidor
pblico.

Imagen 29 Subida de la clave pblica a un servidor pblico de claves pblicas

Imagen 30 Comprobacin de que encontramos la clave en el servidor de claves pblicas

22(I)
En la Imagen 31 podemos ver que vemos al pinchar sobre la
busqueda. El uid de la clave y la explicacin que puso su
creador al crearla. Si pinchamo sobre CF84407E nos sale la clave
pblica que podemos copiar en un txt (Imagen 32).

Imagen 31 Bsqueda de la clave en el servidor de clave pblica

Imagen 32 Clave pblica alojada en el servidor pblico

Por ltimo hemos copiado el contenido de la clave pblica en un


archivo txt y lo hemos guardado. Posteriormente hemos importado
la clave con el comando:

#gpg --import manuel.asc (Imagen 33)

23(I)
Imagen 33 Importacin de la clave

Ejercicio propuesto

El ltimo objetivo del ejercicio es enviarnos al correo dos


archivos uno de texto y otro .odt o .doc junto con el nombre de
tu clave pblica que demuestren que has sido capaz de realizar
la prctica. Tu correccin te ser enviada en un fichero de
texto encriptado con tu clave pblica.

Uno debe estar cifrado con criptografa simtrica y el otro con


asimtrica.

El contenido del archivo cifrado con criptografa asimtrica


contendr la clave para desencriptar el archivo con cifrado
simtrico.
El archivo simtrico tendr capturas que deben mostrar que has
logrado conseguir los siguientes objetivos:

Importar la clave a tu anillo de clave, la clave de UID Manuel


Ortega alojada en el servidor rediris.es.

Crear tu propio par de clave pblica y privada.

Subir dicha clave al servidor rediris.

Firmar la clave de Manuel Ortega con tu firma para que la firma


de manuel tenga confianza total.

Que has logrado exportar tu clave pblica a un archivo.

Nota: no es necesario hacer capturas de todo el proceso, con que


exista una captura que deje claro que se ha realizado el proceso
es suficiente. El archivo encriptado asimtricamente debe
realizarse con la clave pblica de Manuel Ortega que esta en
rediris, ya que sino sera imposible abrirlo para nosotros.

24(I)
Bibliografa

Explotacin de Sistemas Informticos IES Murgi 2006-2007


http://seguridadinformatica1314fpp.blogspot.com.es/2014/01/distr
ibucion-de-claves-publicas-con-gpg.html

https://www.gnupg.org/gph/es/manual/c252.html

https://www.rediris.es/keyserver/index.html.es

25(I)

You might also like