Publicado en Criptografía

Firmar gpg -b (la firma aparece en un fichero aparte)

El documento y la clave van separados y firmados (Esto es útil para cuando se quiere firmar un archivo binario, como ficheros comprimidos, ejecutables…)

Esto es útil para cuando se quiere firmar un archivo binario, como ficheros comprimidos, ejecutables…

Creamos un archivo, yo en este caso he puesto «hola3».

A continuación se pone gpg -b -a (nombre del archivo).

gpg -b -a hola3

Se ha creado un archivo «hola3.asc»

Para verificar la firma hay que poner gpg –verify (nombre del archivo.asc)

verificar firma

 

 

 

 

Publicado en Criptografía

firma digital gpg -s (el fichero se comprime (binario) y es ilegible).

 Con la clave privada del usuario. El fichero se comprime (binario) y es ilegible.(cifra el documento y la clave juntos)

Primero creamos un archivo, yo en este caso lo he creado con el nombre «hola2»

Despues ponemos gpg -s (nombre del archivo creado) ( te lo crea en binario)

Si por un casual no queremos que salga en binario hay que poner gpg -s -a (nombre del archivo creado) (al poner -a no te lo crea en binario)

El fichero como se puede comprobar es ilegible

ilegible

Por último para verificar la firma se pone gpg –verify (nombre del archivo.gpg)

verificar firma gpg -s

Publicado en Criptografía

Firma digital con gpg –clearsign (el documento no es cifrado)

El documento no es cifrado y cualquiera lo puede leer y solo sería necesario usar  gpg (con su correspondiente comando) para verificar la firma.

Voy a enseñar como poner una firma con gpg –clearsign (el documento no sale cifrado y cualquiera lo puede ver).

Para empezar por ejemplo vamos a la capeta personal y creamos un archivo, por ejemplo «hola»

A continuación para que el archivo  se firme pero  no se cifre se pone gpg –clearsign (nombre del archivo). (yo en este caso he puesto hola)

(para completarlo te pedira que crees una contraseña)

gpg --clearsign hola

Para verificarlo podemos entrar en el archivo creado con la extension asc (en mi caso hola.asc) y ponerle algo para posteriormente verificarlo.

gpg --clearsign hola modificado

Lo he modificado añadiendole «hola» y para verificar la firma se pone  gpg –verify (nombre puesto anteriormente.asc) (tambien pueden terminar con extensión sgn)

gpg --verify hola asc

 

Publicado en Criptografía

Firma digital con gpg

Voy a enseñar como se hace la firma digital con gpg.

Hay 3 clases de firmas digitales con gpg:

Poniendo gpg –clearsign el documento no es cifrado y cualquiera lo puede leer y solo sería necesario usar gpg para verificar la firma.

Usando gpg -s con la clave privada del usuario. El fichero se comprime (binario) y es ilegible.

Utilizando gpg -b para que la firma aparezca en un fichero aparte. Esto es útil para cuando se quiere firmar un archivo binario, como ficheros comprimidos, ejecutables…

Gracias por mirar el blog, si te ha gustado coméntalo.

Publicado en Criptografía

Cifrado asimétrico Intercambiando Claves públicas con gpg

Esta vez voy a enseñar como intercambiar las claves publicas y claves privadas con gpg

Antes de empezar vamos a donde queremos dejar el archivo (en el caso de que no nos movamos por defecto en Ubuntu te deja en la carpeta personal).

Yo aconsejo que para hacer este ejemplo nos vayamos a la carpeta /tmp (ya que en esta carpeta cualquier usuario puede entrar (son archivos temporales) y cuando se reinicia el ordenador se borra lo que haya dentro de esa carpeta).

Primero hay que poner el comando gpg –gen-key para crear el archivo con la contraseña.

Lo haré con esta clave pública. (11A1A720)

Ejemplo:

1 poniendo gpg -k

Para saber las claves privadas gpg –list-secret-keys y para saber las claves publicas gpg -k)

Antes de enviar la clave pública a otro usuario debemos exportarla.

Para eso se usa el comando gpg -a –export -o (ruta donde queremos poner nuestro documento y con la terminación del documento con la llave pública).

Tiene que salir algo como esto si ha salido bien al abrir el archivo creado en tmp.

3 resultado de llave publica (caracteres)

Ejemplo:

2 ruta a exportar

Nota importante: si se está en tmp no hace falta poner el directorio, solo se pone el nombre del archivo ejemplo: gpg -a –export -o ejemplo55

Le estamos diciendo que:

-a para que no salga en binario

–export para que lo exporte (para que lo deje en otro sitio).

-o para guardarlo directamente en un fichero (si no se usara «-o» saldría en pantalla).

/tmp es el sitio donde yo quiero dejar el archivo (he elegido la carpeta temporal para que al crear un usuario desde el mismo ordenador pueda coger la llave pública).

ejemplo55 (es el nombre que quiero yo que se llame el archivo con la llave pública).

11A1A720 llave pública.

Al poner el comando de arriba se ha creado en /tmp el archivo ejemplo55

Ahora entramos con un segundo usuario. (otra cuenta).

Ponemos gpg –import /tmp/ejemplo55 (el archivo ejemplo55 tiene que tener un candado y sale esta imagen como que está bien).

4 pasando clave publica al segundo usuario

–import de donde lo cogemos

/tmp archivo temporal

ejemplo55 es la llave publica

Ahora con el usuario 2 (empecé explicando con el 1) voy a crear un mensaje para que se lo envíe al usuario 1.

1º Se crea un fichero de texto y se pone algo dentro (yo he puesto dentro «código secreto«).

2º Se pone el comando gpg –encrypt (nombre del archivo) (recomiendo ir a tmp para que sea más cómodo). (se pone el comando y te pedirá un código donde pone «acabe con una línea vacía», ese código es la llave pública (hay que poner una vez el código y luego no hace falta poner nada, se le da a intro).

Ejemplo del comando:

5 encriptando con --encrypt (nombre del archivo) y llave publica despues

Con el 1º usuario si todo ha salido bien en la consola se pone:

gpg -d y dirección del archivo que antes hemos encriptado con la llave pública y nos tiene que pedir contraseña

6 abriendo fichero con gpg -d direccion del archivo

Y tiene que salir algo parecido a esto:

7 codigo resuelto despues de meter contraseña

Importante: si alguien se equivoca con las llaves y tiene muchas, para borrarlas basta con poner:

(Primero hay que borrar la clave privada y después la pública en ese orden)

gpg –delete-secret-key seguido de: nombre apellidos, correo electrónico o comentario (elegir uno de los 3).

y después poner gpg –delete-key seguido de: Nombre Apellidos, correo electrónico o comentario. (elegir uno de los 3).

(para borrar las claves primero hay que borrar la clave privada (gpg –delete-secret-key) y luego la pública (gpg –delete-key)

Publicado en Criptografía, gnu/linux

Cifrado asimétrico con GPG (GnuPG) opción 1

Antes de empezar hay que saber que al cifrar de forma asimétrica te dan 2 claves (una clave pública y una clave privada).

Clave pública es para enviárselo al emisor (en el caso de que quiera enviarle algo que este cifrado) (al enviárselo cifrado una tercera persona no podrá desencriptarlo aunque solo conozca la clave pública y hacen falta las 2 claves para desencriptarlo).

Clave privada: nunca es comunicada. (si alguien conoce la clave privada no puede deducir la clave pública).

1º Vamos al directorio que queramos crear la encriptación y ponemos gpg –gen-key

Aquí el ejemplo:

1 gpg --gen-key

Como se puede comprobar nos salen diferentes opciones (tipo de clave), voy a explicar la que está por defecto.

RSA Y RSA (Por defecto) genera 2 claves, la clave pública y la privada (genera las claves tanto para encriptar como para firmar).

Elegimos la primera opción:

2 elegimos el 1

Cuanto mayor sea la clave, más segura será contra los ataques, pero tarda más en cifrar y descifrar.

Elegimos la opción por defecto (2048 bits).

3 clave 2048

Para elegir cuando caduca se pone el número como pone en pantalla, yo en este caso he elegido 1m (para que caduque en 1 mes).

4 clave caduca 1m

Le damos a «s» (si) y hay que poner un nombre y apellidos, dirección y comentario (cada uno pone lo que quiera para acordarse después, yo en este caso he puesto solamente «ejemplo asimétrico).

Cuando se termina si alguien quiere cambiar algo, abajo da la oportunidad de cambiar lo que haga falta antes de confirmar.

5 pasos continuos

Después de darle a «v« hay que meter la contraseña que uno quiera (hay que acordarse de ella después para descifrar) (tarda unos cuantos minutos en hacer la clave privada y pública).

6 generando los numeros aleatorios despues de la clave

En lo que está entre paréntesis a cada persona le saldrá una cantidad diferente depende la contraseña que ponga.

Cuando termine hay que fijarse donde pone «pub» que es la clave pública y el «sub» es la subclave.

7 clave publica y privada

Para ver mejor las claves publicas hay que poner  gpg -k como se ve en la imagen.

(o poniendo gpg –list-keys).

8 gpg -k clave publica pub

Ahora hay que fijarse donde pone «pub» y un código que pone 2048R (el 2048 se refiere al tipo de longitud que hemos elegido para la clave)

9 codigo clave publica pub
9 codigo clave publica pub parte 2

El 0B97659A se refiere que esa es nuestra clave pública.

0B97659A

Ahora para sacar la clave pública y tenerla hay que poner:

10 pasando la clave publica a un documento en usuario 1

Después hay que exportarlo con el comando:

gpg -a –export -o /tmp/documentosecreto

-a se refiere que no sea binario.

-o se refiere a guardarlo en un fichero

/tmp es una carpeta temporal que cualquier usuario del sistema puede entrar (lo cual viene bien para pasarse archivos si hay más de un usuario creado en el sistema).

documentosecreto  es el nombre que quieres que se llame el documento (la clave pública).

Para hacer este ejemplo he creado un usuario para pasarle el documento (documentosecreto).

Primero hay que crear el documento con la clave privada con la terminación «gpg» y para ello se pone el código que he puesto a continuación (por defecto sale en la carpeta personal)

Publicado en Criptografía

Cifrado simétrico en Ubuntu (gnu/linux)

Voy a enseñar a cifrar con el cifrado simétrico (solo hay una clave).

Primero vamos al directorio que queramos (en este caso yo he creado un documento vacío)  y le he puesto de nombre cifrar y dentro de «cifrar» he puesto «aprendiendo a cifrar«

Aquí un ejemplo de como se va a la carpeta con comandos (todo el ejemplo va a ser con comandos)

Para ir por los directorios del sistema se usa el comando cd

enseñando a moverse por ubuntu

Para el cifrado simétrico se usa el comando gpg.

-c sirve para la clave pública.

-a guarda el documento con caracteres ascii.

-d descifra el documento (para poder ver lo que hay dentro).

-o para dejarlo en un fichero

DESENCRIPTACIÓN CON GPG

(Terminación .gpg)

Para crear un archivo cifrado hay que poner el comando «gpg» -c y el nombre que le hayamos puesto al archivo, aquí un ejemplo:

1 cifrando con -c

(cuando se pone el gpg -c y el nombre del archivo hay que poner la contraseña del usuario).

Como se puede comprobar sale otro archivo con la terminación «gpg» eso quiere decir que está encriptado (si se abre el archivo con la extensión gpg es ilegible «en este caso cifrar.gpg»).

Ahora voy a desencriptarlo (y que se vea el contenido) con un ejemplo:

En el archivo «cifrar» puse «aprendiendo a cifrar» y sale abajo como se puede ver en la imagen.

2 desencriptando con -d

Para que salga con el nombre que queramos (el archivo desencriptado) se pone gpg -d (nombre del archivo) (el signo «>» ) y (nombre que queramos).

Ejemplo:

3 saliendo el texto que queremos desencriptado

Otro comando para visualizar se llama –decrypt y sirve para ver lo que hay en el archivo encriptado (lo desencripta visualmente).

Ejemplo:

5 mirando el mensaje encriptado con --decrypt

Otro ejemplo (para ver lo que hay dentro de un archivo) sería con el comando «cat» (para que salga correctamente lo que hemos puesto encriptado hay que mirar el comando cat en el archivo que se haya creado (en este caso «resultado») para ver que esta desencriptado correctamente).

Ejemplo del comando cat:

4 con comando cat

DESENCRIPTACIÓN CON ASCII

(Terminación .asc)

Ahora otro ejemplo pero esta vez esté encriptado con ascii.

Hay que ir al sitio donde este el archivo a encriptar y poner gpg -c -a y  (nombre del archivo).

Aquí el ejemplo:

1 encriptando con ascii

Ahora el código de desencriptación de ascii que se usaría gpg -d (nombre del archivo) con terminación «asc»

Aquí el ejemplo:

2 desencriptación con ascii

Para que se cree la carpeta con lo descifrado se pone como en el ejemplo:

3 creando la carpeta desencriptada con ascii

Ahora con el comando cat para que se vea el resultado al abrir el fichero.

4 usando el comando cat para ascii

Aquí el ejemplo de –decrypt con ascii.

5 mirando el mensaje encriptado con --decrypt

Gracias por mirar el blog, ¿que te ha parecido? Coméntalo.