Cifrar archivos con un script de OpenSSL

El siguiente es un Script Shell BASH para sistemas tipo Unix y su versión en símbolo del sistema como archivo de lotes BAT para Windows

Este Script requiere que la maquina tenga instalado el OpenSSL

Situación.

1) A y B son sitios remotos conectados por Internet o por medios físicos tipo valija como un USB
2) A debe recibir un archivo de B

3) A genera su par de llaves pública y privada
4) A le envía a B su llave publica
5) B cifra un archivo con AES256 usando una clave simétrica
6) B usa la llave publica para generar una llave simétrica y cifrarla con la llave publica que le ha enviado A
7) B Envía la llave simétrica cifrada con la llave publica de A y el archivo cifrado con la llave su métrica a A
8) A recibe la clave simétrica y el archivo cifrado de B
A decifra la llave simétrica usando su llave privada y usa la llave simétrica para decifrar el archivo cifrado que ha enviado B

Como hacerlo con los SCRIPT

B le debe enviar un archivo ZIP a A
** B debe respaldar el archivo antes de intentar cifrarlo, si algo sale mal el archivo será irrecuperable.

1) Para generar las claves A ejecuta generaclaves.sh
Se obtiene una salida similar a:

[root@lastdragon cifrar]# ./generaclaves.sh
Generating RSA private key, 4096 bit long modulus
………………………………………++
…………………..++
e is 65537 (0x10001)
writing RSA key

Debes enviar el archivo “publica.key” para que quien te envia el archivo lo cifre. CONSERVA BAJO TOTAL SECRETO PRIVADA.KEY

2) A le envía a B publica.key
3) B usa el comando cifrar.sh para cifrar el archivo ZIP
Se obtiene una salida similar a:

[root@lastdragon cifrar]# ./cifrar.sh contenedor.zip
Cifrando contenedor.zip y simetrica.key

Los archivos que debes enviar son: contenedor.zip y simetrica.pub

4) A recibe los 2 archivos enviados por B , el archivo ZIP y la clave simetrica.pub
5) Para decifrar el ZIP A debe ejecutar decifrar.sh.
Se obtiene una salida similar a:

[root@lastdragon cifrar]# ./decifrar.sh contenedor.zip

Decifrando contenedor.zip

Las llaves han sido eliminadas, el archivo contenedor.zip ha sido recuperado
[root@lastdragon cifrar]#

Descarga los script.

One Response

Add a Comment

Comment spam protected by SpamBam