OpenSSL: Symmetric Encryption Algorithms & Examples
Symmetric Encryption Algorithms with OpenSSL
Encrypt the file “fichero.txt” using the RC4 symmetric encryption algorithm
OpenSSL> rc4 -in c:\cifrado\fichero.txt -out c:\cifrado\cifrado.rc4
enter rc4 encryption password:
Verifying - enter rc4 encryption password:
Decrypt the previous file:
OpenSSL> rc4 -d -in c:\cifrado\cifrado.rc4 -out c:\cifrado\descifrado.txt
enter rc4 decrypt password:
DES
Encrypt:
OpenSSL> des -salt -in c:\csb.log -out c:\csb.bf.txt
enter des-cbc encryption password:
Verifying - enter des-cbc encryption password:
Decrypt:
OpenSSL> des -d -in c:\csb.bf.txt -out c:\csb.txt
enter des-cbc decryption password:
Triple DES (DES3)
OpenSSL>enc -des3 -salt -in c:\cifrado\fichero.txt -out c:\cifrado\ficherocif.bin
enter des-ede3-cbc encryption password:
Verifying - enter des-ede3-cbc encryption password:
OpenSSL>enc -des-ede3-cbc -salt -in c:\cifrado\fichero.txt -out c:\cifrado\ficherocif.bin
enter des-ede3-cbc encryption password:
Verifying - enter des-ede3-cbc encryption password:
OpenSSL>enc -des3 -d -in c:\cifrado\ficherocif.bin -out c:\cifrado\original.txt
enter des-ede3-cbc encryption password:
OpenSSL> enc -des-ede3-cbc -d -in c:\cifrado\ficherocif.bin -out c:\cifrado\original.txt
enter des-ede3-cbc decryption password:
IDEA – International Data Encryption Algorithm
Operates on 64-bit plaintext blocks with a 128-bit key (no parity). It is twice as fast as DES, despite using much longer keys.
OpenSSL> idea-ecb -salt -in c:\csb.log -out c:\csb.idea-ecb.txt
enter idea-ecb encryption password:
Verifying - enter idea-ecb encryption password:
OpenSSL> idea-cbc -salt -in c:\csb.log -out c:\csb.idea-cbc.txt
enter idea-cbc encryption password:
Verifying - enter idea-cbc encryption password:
OpenSSL> idea-ecb -d -in c:\csb.idea-ecb.txt -out c:\csb.idea-ecb.d.txt
enter idea-ecb decryption password:
OpenSSL> idea-cbc -d -in c:\csb.idea-cbc.txt -out c:\csb.idea-cbc.d.txt
enter idea-cbc decryption password:
AES
OpenSSL>aes-128-cbc -salt -in c:\cifrado\fichero.txt -out c:\cifrado\fichero.txt.aes
Decrypt the previous file to obtain the plaintext message.
OpenSSL>aes-128-cbc -d -salt -in c:\cifrado\fichero.txt.aes -out c:\cifrado\fichero.txt
The most secure and fastest:
Encrypt the file “fichero.txt”
OpenSSL>aes-256-cbc -salt -in c:\cifrado\fichero.txt -out c:\cifrado\fichero.txt.aes
Decrypt the previous file to obtain the plaintext message.
OpenSSL>aes-256-cbc -d -salt -in c:\cifrado\fichero.txt.aes -out c:\cifrado\fichero.txt
OpenSSL>cast -in c:\cifrado\fichero.txt -out c:\cifrado\fichrc5.bin
enter cast5-cbc encryption password:
Verifying - enter cast5-cbc encryption password:
OpenSSL>cast -d -in fichrc5.bin
enter cast5-cbc decryption password:
OpenSSL> cast5-ecb -salt -in c:\csb.log -out c:\csb. cast5-ecb.txt
enter cast5-ecb encryption password:
Verifying - enter cast5-ecb encryption password:
OpenSSL> cast5-ecb -d -in c:\csb.cast5-ecb.txt -out c:\csb.cast5-ecb.d.txt
enter cast5-ecb decryption password:
OpenSSL> bf -salt -in c:\csb.log -out c:\csb.bf.txt
enter bf-cbc encryption password:
Verifying - enter bf-cbc encryption password:
OpenSSL> bf -d -in c:\csb.bf.txt -out c:\csb.txt
enter bf-cbc decryption password:
OpenSSL>base64 -in c:\cifrado\ficherocif.bin -out c:\cifrado\base64.txt
OpenSSL>base64 -d -in c:\cifrado\base64.txt -out c:\cifrado\ficherocif2.bin
Encrypt a file using the blowfish algorithm and encode it in base64 in one step.
OpenSSL>enc -e -a -salt -bf -in c:\cifrado\tomcat.jpg -out c:\cifrado\tomcat.blowfish
enter bf-cbc encryption password:
Verifying password - enter bf-cbc encryption password:
Decrypt the previous file
OpenSSL>enc -d -a -bf -in c:\cifrado\tomcat.blowfish -out c:\cifrado\tomcat-decrypt.jpg
enter bf-cbc decryption password:
OpenSSL> md5 c:\text.txt
MD5(c:\text.txt)= 1798c318d32f787b1befd7812c94ff4b