CLICK HERE FOR BLOGGER TEMPLATES AND MYSPACE LAYOUTS »
http://www.yaves.eshttp://www.yaves.eshttp://www.yaves.eshttp://www.yaves.eshttp://www.yaves.es

viernes, 30 de enero de 2009

GPG Gnu Privacy Guard

Es un software hibrido que combina la criptografia de clave simetrica para la rapidez y la criptografia de la clave publica por la seguridad de el compartimiento de la clave segura. Este modelo de operacion es referenciado del estandar openPGP (Petry Good Privacity - privacidad bastante buena. Su finalida es proteger la informacion distribuida por internet medianta el uso de la criptografia de la clave publica, asi como faciliticca la autenticacion de documento por medio de la firma digital). Con GPG creamos claves asimetricas, es decir, se crea un par de llaves una concida como llave privada, esta solo la puede tener el propietario puesto que esta es la llave principal porque con ella desencriptamos todo lo que nos manda encriptado; y la otra llamada llave publica, esta se le envia a todos con los que quiero una comunicacion segura. Se utiliza la llave publica para encriptar y la llave privada para firmas digitales, como lo indica la imagen.

Despues de la instalacion del gpg el paso a seguir es la creacion de nuestras llaves (Publica - Privada), esto se hace con el siguiente comando:

gpg --gen-key

  • Cuando es por primera vez no crea un directorio y en el se guarda el fichero de configuracion como los archivos secring.pgp donde se lamacenaran las claves privadas y pubring.pgp aquie se almacenaran la llaves publicas.
  • La primera pregunta que nos hacen es el tipo de clave que queremos lo recomendable es la primera que combina el DSA con ElGamal "DSA (es un algoritmos que solo se utiliza para firmar) y ElGamal (es un algoritmo que sirve para firmar y encriptar)"; la segunda es solo DSA y la tercera el solo ElGamal.
  • La segunda pregunta es el tamaño de la clave entre 1024 y 4096, se recomiendo la de por defecto 2048, depediendo de las necesidade se escige mas grande o mas pequeña pero se debe tener en cuenta que a mayor tamaño mayor seguridad y mayor tiempor para encriptar y desencriptar.
  • La tercer pregunta es el tiempo de validez de la clave y nos dan 5 opciones la primera es de no caducar poniendo el "0"; la segunda en dias con laopcion "n" ejemplo si solo la queremos por 5 dias entonce ponemos asi "5n"; la tercera en semanas con la opcion "w"; la cuarta en meses con la opcion "m" y la quinta en años con la opcion "y".
  • La cuarta pregunta son datos personales tales como nombre y apellido, direccion de corre y comentario para la llave, con estos datos crea el ID del usuario y por ultimo no pregunta si queremos cambiar algo o si todo esta bien escribimos la letra "V".
  • Y por ultimo nos pregunta el pasword para la clave, cuando la estamos escribiendo no se ve nada ni se mueve el cursor la repetimos y si las dos coinciden empieza la genracion de la llave durante este proceso es recomendable mover el raton o repuducir un mp3, etc, para se genere numeros aleatorios y se genere antes las claves.
Para ver las llaves publicas lo hacemos con el siguiente comando
gpg --list-key

Para ver las llaves privadas lo hacemos con el siguiente comando
gpg --list-secret-key

Para borrar una llave primero se debe borrar la privada y luego la publica a no ser de que se desee borrar una llave publica de alguien que tenemos importada y por diversas razones la queremos eliminar, en este caso solo se borra su publica. Para borar llaves publicas se hace con el comando
gpg --delete-key claveID

Para eliminar una llave privada se hace con el comando
gpg --delete-secret-key claveID

Las claves se identifican por medio de la huellas, una huella es una serie de numeros que se usa para verificar que una clave pertenece realmente al propietario. La huella es como un md5 que verifica que un archivo no ha sido modificado. Para ver la huella de una clave es con el comando
gpg --fingerprint claveID o Correo

Un metodo muy util para repartir nuestra llave publica seria por medio de la exportacion, hay dos formas de exportar una clave publica o privada y por diversos motivos se exportan esto varia seguun las necesidades. Las formas para exportar claves son:
  • Si deseamos exportarla una clave publica a un servidor de claves u otro sitio como un ftp se hace por medio del siguiente comando
gpg --keyserve NombreDelServidor --send-key claveID
  • Y si lo deseamos exportar localmente una llave publica se debe de crear un docuemento .asc para que quede en codigo ASCII y guardarlo manualmente donde deseemos el archivo.Esto lo hacemos con el siguiente comando
gpg -- armor --output ficherodesalida.asc --export claveID
  • Con la llave privada es recomendable que solo se haga localmente por seguridad y esta lo hacemos con el siguiente comando.
gpg --armor --output ficherodesalida.asc --export-secret-key claveID

Importamos la llaves por diversos motivos como por ejemplo despues de que formatiamos el equipo o cuando deseamos importas las claves publicas de los demas ocmpañeros con los que queremos establecer la conexion, etc. Para importar una llave publica y privada lo hacemos con el siguiente comando
gpg --import NombreDelfichero.asc

Para encriptar un mensaje lo hacemos con el siguiente comando se pone el ID de la clave con la que quiero encriptar lo mas recomendable con la publica.

gpg --armor --recipient claveID --encrypt mensaje

NOTA: el mensaje a encriptar ya es un mensaje qu esta creado y listo para ser enviado. Con el comando anterior se crea un archivo con el formato con el que lo encriptamos como lo es un .txt o ASCII y luego es envido por el correo electronico como un mensaje adjutado:

Para descriptar un mensaje lo hacemos con el siguiente comando

gpg --decrypt Archivo

Cuando desencriptar algo se pide el password de nuestra llave para desencriptalo.

Firmamos un llave es para formar los anillos de confianza, es decir, al yo firmar a una persona estoy queriendo decir que confio plenamente en ella y si ella me firma la confianza es de ambos lados y asi con cada uno de las demas personas, permitiendo la comunicacion Publica-->Privada. Para firmar utilizamos el siguiente comando

gpg --sign clave ID

Firmamos un mensaje para el receptor confimer que si fui yo quie firmo su llave publica y para l aintegridad de los datos. Esto se hace por el siguiente comando

gpg --clearsign Archivo


NOTA: Cada vez que firmamos un mensaje o una llave nos piden la contraseña de nuestra llave privada. Despues de que firmamos una llave la debemos exportar en el caso de que usemos un servidor de llaves; en el caso de un archivo este crea un archivo nuevo y se envia por correo electronicao tanto el documento firmado como el archivo original. Para verificar las firmas con el siguiente comando

gpg --list-sigs

Y para verificar un mensaje firmado con el siguiente comando

gpg --verify mensaje

La clave de revocacion hace que cuando importemos nuestra calve publica al anillo inavilite la clave totalmente esto es por seguridad, es decir, cuando nuestra llave privada ya sea desconfiada y se hace por el siguiente comando

gpg --gen-revoke claveID



0 comentarios: