``GNU Privacy Guard'' (GnuPG) Mini Como: Firmar y Verificar

Next Previous Contents

## 6. Firmar y Verificar

Firmar y verificar firmas es una parte importante de los sistemas de criptografía de clave pública. El usuario puede firmar una serie de datos o un documento en varios modos, para lo que usa su propia clave privada. Para verificar las firmas de otros usuarios, es necesario poseer previamente las claves públicas de éstos.

## 6.1 Firmar

Para firmar un fichero con la clave propia se usa la orden

> `

>     $ gpg -s [fichero]

> `

ó

> `

>     $ gpg --sign [fichero]

> `

Esta orden, además de producir una firma digital, también comprime el fichero, por lo que el resultado es un fichero de tipo binario (y por tanto ilegible). Para producir un fichero firmado legible (ascii), se usa la orden

> `

>     $ gpg --clearsign [fichero]

> `

De este modo, tanto la firma como los datos firmados, son legibles con un editor.

Cuando queramos que la firma aparezca en un fichero separado, sobre todo cuando se trata de firmar un fichero binario, como por ejemplo un archivo comprimido, o un ejecutable, usaremos la orden

> `

>     $ gpg -b [fichero]

> `

ó

> `

>     $ gpg --detach-sign [fichero]

> `

Este es el modo que MIME/PGP usa para firmar los mensajes del correo electrónico. Este modo es muy útil cuando tengamos que firmar un binario, por ejemplo, para distribuirlo, ya que la firma se basa en el binario pero va en un fichero aparte. La opción `--armor` también puede ser de utilidad en estos casos.

A menudo debemos cifrar y firmar un fichero a un tiempo. La orden que usaríamos en este caso sería

> `

>     $ gpg [-u Remitente] [-r Destinatario] [--armor] --sign --encrypt [fichero]

> `

La funcionalidad de las opciones `-u (--local-user)` y `-r (--recipient)` es la que se ha descrito ya anteriormente.

## 6.2 Verificar

Al descifrar un criptograma que también haya sido firmado digitalmente, la firma es verificada automáticamente. En todo caso es posible verificar la firma simplemente con la orden

> `

>     $ gpg [--verify] [fichero]

> `

Next Previous Contents