PDF de programación - Criptografia Asimetrica con GnuPG

Imágen de pdf Criptografia Asimetrica con GnuPG

Criptografia Asimetrica con GnuPGgráfica de visualizaciones

Publicado el 22 de Marzo del 2018
443 visualizaciones desde el 22 de Marzo del 2018
443,8 KB
9 paginas
Creado hace 12a (11/03/2012)
Criptografía asimétrica con

GnuPG

Un poco de historia

Aunque la criptografía asimétrica comenzó su andadura mucho antes, no fue hasta 1991 cuando
Phil Zimmermann construye una herramienta que usa tecnología en un ordenador personal y por
tanto, algo que hasta ese momento estaba en manos de gobiernos o corporaciones que pudieran
permitírselo, puede entrar en todos los hogares.

No fueron pocos los problemas a los que se enfrentó Zimmermann, ya que su software no estaba
bien visto por el gobierno de los Estados Unidos que veía que la criptografía que se estaba usando
su ejercito llegaba al ciudadano. Además se apoyaba en un algoritmo que estaba patentado: el RSA
(en honor a sus inventores: Rivest, Shamir y Adleman).

Zimmerman funda la compañía PGP (Pretty Good Privacy) [1] para dar salida comercial a su
software. En 1998, esta compañía propone al IETF el estándar OpenPGP [2]. Al ser un estándar,
cualquiera puede realizar la implementación del mismo y esto mismo lo que supone la llegada en
1999 de GnuPG [3] (Gnu Privacy Guard). Así tenemos:

1. PGP. Se refiere a PGP Corporation y a sus productos que implementan el. En junio de 2010

esta compañía fue adquirida por Symantec Corp.

2. OpenPGP. Estándar del IETF para comunicaciones con criptografía asimétrica.
3. GnuPG. Implementación GNU del estándar anterior, que está presente en todas las

distribuciones GNU/Linux.

Para qué sirve

La criptografía asimétrica nos ofrece autenticidad, que consiste en:

a) Confidencialidad. Cifrando las comunicaciones.
b) No repudio. Mediante firma electrónica.
c) Integridad. El mensaje que recibimos es de quien dice ser y contiene lo que el remitente

escribió.

Algunos usos de este tipo de criptografía.
1. Cifrado y descifrado de mensajes
2. Firmado y verificación de mensajes.
3. Acceso seguro a servicios remotos.
4. Firmado de código.

Página 1 de 1

Criptografía asimétrica con GnuPG

Cómo funciona

Esta criptografía se basa en dos claves distintas (de ahí el nombre de
criptografía asimétrica). Una de las claves se denomina pública y la otra
privada.
La clave pública (como su nombre indica) puede hacerse pública, por contra
la clave privada sólo es conocida por el propietario de la misma.

Cuando una persona quiere firmar digitalmente un mensaje usa su clave privada, de esta forma
cualquier persona que posea la clave pública del remitente podrá comprobar que el mensaje ha sido
firmado correctamente.
Para cifrar un mensaje se usa la clave pública del destinatario, así cuando éste reciba el mensaje
podrá usar su clave privada para descifrarlo y por tanto sólo él puede ver el contenido del mensaje

Manos a la obra

Existen varias interfaces gráficas de usuario [4] (frontends) para trabajar con GnuPG que nos
harán la vida más sencilla. En este artículo se muestran las ódenes que en muchas ocasiones
ejecutan estas interfaces para los que deseen saber más o simplemente trabajar usando la línea de
comandos [5].

Generación de las claves
El primer paso es generar nuestras propias claves (pública y privada) que se necesitan en cualquier
sistema de criptografía asimétrica. Para ello usamos la orden:
$ gpg -–gen-key

Esta orden es interactiva y nos permite generar las claves basándose en la información que le
iremos suministrando:

1. Tipo de clave. Lo normal es seleccionar la opción 1 (RSA)
2. Longitud de la clave. Los 2048 bits que se ofrecen por defecto nos servirán perfectamente.
3. Caducidad de la clave. Es importante darle caducidad a nuestra clave. Una validez de un

año será suficiente. Por lo tanto teclearemos 1 y pulsamos la tecla Intro.

4. Nombre y Apellidos. Conviene no usar tildes ni eñes si nuestro nombre las contiene, ya que
vamos a publicar esta clave en un servidor y podría haber problemas a la hora de leer
nuestro nombre completo.

5. Dirección de correo electrónico. La dirección de correo electrónico asociada a nuestra

clave.

6. Comentario. Si lo deseamos podemos añadir información extra, por ejemplo a qué nos

dedicamos o para qué usamos la clave.

7. Contraseña. Para poder usar nuestra clave, ésta debe ser desbloquedada, por lo que se pide

Página 2 de 9

Criptografía asimétrica con GnuPG

una contraseña que sólo debemos conocer nosotros y que tendremos que teclear cuando
queramos usar la clave. Conviene elegir una buena contraseña para que nuestra clave
privada esté bien protegida.

Una vez tecleada (y confirmada) nuestra contraseña, el sistema comenzará a generar las claves. Tal
y como muestra la orden, conviene que mientras se están generando las claves, movamos el ratón,
usemos el teclado y el disco para generar eventos aleatorios que el sistema pueda utilizar para
generar las claves y por tanto tardar menos en generarlas. Cuando termine la generación, nuestras
claves estarán en el directorio .gnupg de nuestro directorio personal.
Conviene proteger adecuadamente este directorio para que únicamente nosotros podamos acceder a
él, así como realizar una copia de seguridad del mismo por si ocurriera un error grave en nuestro
sistema. Es importante recordar que si perdemos la clave privada no podremos firmar ni descifrar
mensajes y deberemos crear un nuevo par de claves.

Identificador y huella digital de la clave
Cuando se genera una clave, se le asocia un identificador. Este identificador permite hacer
referencia a nuestra clave en sucesivas operaciones.
Cada clave tiene también una “huella digital”. Esta huella es un número de 20 bytes que se
utilizará a la hora de validar y firmar las claves.
El identificador y la huella digital están muy relacionados ya que el identificador de la clave son los
cuatro últimos bytes de la huella digital. Sería muy difícil que dos claves tuvieran el mismo
identificador y estuviéramos trabajando con ambas.
Para averiguar el identificador de nuestra clave podemos usar la orden:
$ gpg –-list-keys

El identificador es la secuencia de ocho dígitos hexadecimales que aparece en la línea que comienza
con la palabra pub, por ejemplo:

/home/user/.gnupg/pubring.gpg
------------------------------
pub 2048R/E99DCB45 2010-08-30 [caduca: 2011-08-30]
uid Juan Perez <[email protected]>
sub 2048R/8CB35894 2010-08-30 [caduca: 2011-08-30]

El identificador de esta clave es: E99DCB45.
Para averiguar su huella digital, tenemos:
$ gpg –fingerprint
Esta orden nos da más información que la anterior y con ella se puede comprobar la relación entre
identificador y huella digital mencionada arriba.
Podemos utilizar el identificador de la clave para sucesivas operaciones como:

Página 3 de 9

Criptografía asimétrica con GnuPG

Generación del certificado de revocación
Es importante disponer de este certificado que usaremos cuando nuestra clave sea comprometida,
la hayamos perdido o no la queramos usar más. Para ello ejecutaremos la siguiente orden:
$ gpg -–gen-revoke identificador_de_la_clave > miclave-revoke.asc

Se nos preguntará la razón por la cual generamos el certificado, podemos elegir la 0 y escribir algo
como “Certificado generado para mi seguridad”.
Necesitaremos teclear la contraseña de nuestra clave (recordar que cualquier operación con nuestra
clave requiere esta contraseña).
El certificado será almacenado en el fichero miclave-revoke.asc. Es muy recomendable
conservar este fichero en un lugar alejado de las claves (directorio .gnupg). Normalmente se graba
en un CD y se guarda en lugar seguro.

Identificadores de usuario
Un identificador de usuario consiste en un nombre de usuario, una dirección de correo y un
comentario. En el momento de generar nuestras claves, suministramos esta información, por lo que
nuestras claves en este momento ya tienen al menos un identificador de usuario.
Es más, podemos usar este identificador para hacer referencia a nuestras claves en las operaciones
que realicemos. La orden para la generación del certificado de seguridad que hemos usado
anteriormente podría ser también:
$ gpg –-gen-revoke email_de_la_clave > miclave-revoke.asc

Ya que tenemos un identificador de usuario asociado a nuestra clave, podemos acceder a ella con
nuestra dirección de correo electrónico, e incluso nuestro nombre, lo que nos resulte más cómodo.
Lo normal hoy en día es tener más de una dirección de correo electrónico personal, y es probable
que queramos usar nuestra clave para enviar mensajes firmados/cifrados desde otras direcciones de
correo diferentes a la que hemos usado para generar nuestra clave.
Si queremos asociar más direcciones de correo (o mejor dicho identificadores de usuario) a nuestra
clave, podemos usar la orden:
$ gpg –-edit-key identificador_de_la_clave
En este momento nos aparecerá una línea de comandos que
comienza con el indicador gpg> esperando a que introduzcamos una
orden para editar la clave. Usaremos adduid para añadir un
identificador de usuario. Para hacernos una idea de las ódenes que se
pueden usar desde esta línea, podemos teclear help.
Se nos pedirá un nombre, una dirección de correo electrónico y un comentario, al igual que ocurrió
cuando generamos nuestras claves (pasos 4, 5 y 6).
Podemos añadir todos los identificadores de usuario que queramos usando el comentario para
informar de la actividad que realizamos cuando usamos esa cuenta de correo electrónico.

Página 4 de 9

Criptografía asimétrica con GnuPG

Exportar nuestra clave
Exportar la clave privada no es buena idea salvo que nos la vayamos a llevar a otro sitio o sepamos
muy bien lo que estamos haciendo. En cambio, exportar la clave pública es una forma para hacer
llegar esta clave a las personas con las que nos vayamos a comunicar usando criptografía
asimétrica.
Para exportar nuestra clave pública a un fichero:
$ gpg -a --export identificador_de_la_clave > clave-publica.asc

Publicar nuestra clave pública
Otra for
  • Links de descarga
http://lwp-l.com/pdf9790

Comentarios de: Criptografia Asimetrica con GnuPG (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad