Encodage en BASE64
Encoder le contenu d'un fichier sur la sortie standard :
$ cat fic1
systèmes
$ openssl enc -base64 -in fic1
c3lzdMOobWVzCg==
Encoder le contenu d'un fichier et écrire le résultat dans un autre fichier :
$ openssl enc -base64 -in fic1 -out fic1.enc
$ cat fic1.enc
c3lzdMOobWVzCg==
Encoder une chaine de caractères :
$ echo -n "secret" | openssl enc -base64
c2VjcmV0
Ne pas oublier d'ajouter l'option -n à la commande echo sinon un retour chariot sera ajouté à la chaine encodée.
Sinon, utiliser la commande printf
$ printf "secret" | openssl enc -base64
c2VjcmV0
Décoder une chaine de caractères :
Attention, ne pas ajouter l'option -n à la commande echo
$ echo "c2VjcmV0" | openssl enc -base64 -d
secret
Avec la commande printf, il faut ajouter \n à la fin de la chaine:
$ printf "c2VjcmV0\n" | openssl enc -base64 -d
secret
Décoder le contenu d'un fichier sur la sortie standard :
$ openssl enc -base64 -in fic1.enc -d
systèmes
Décoder le contenu d'un fichier et écrire le résultat dans un autre fichier :
$ openssl enc -base64 -d -in fic1.enc -out fic1.dec
$ cat fic1.dec
systèmes
Chiffrer un fichier avec un algorithme de chiffrement et un mot de passe
1 - Choisir un algorithme de chiffrement :
$ openssl enc -list
2 - Chiffrer un fichier avec l'algorithme DES3 et écrire le contenu dans un autre fichier (génération d'un fichier binaire) :
$ openssl enc -des3 -salt -in fic1 -out fic1.des3 -pbkdf2
enter DES-EDE3-CBC encryption password:
Verifying - enter DES-EDE3-CBC encryption password:
$ cat fic1.des3 ; echo
Salted__rc▒g.▒5ߐ▒ ▒▒c▒NTt▒
Pour le déchiffrage (indication du mot de passe avec l'option -pass) :
$ openssl enc -des3 -d -salt -in fic1.des3 -out file.txt -pass pass:**** -pbkdf2
$ cat file.txt
systèmes
Chiffrage DES3 mais avec un encodage en BASE64 (pour un envoi par mail par exemple) :
$ openssl enc -des3 -a -salt -in fic1 -out fic1.des3 -pbkdf2
enter DES-EDE3-CBC encryption password:
Verifying - enter DES-EDE3-CBC encryption password:
$ cat fic1.des3
U2FsdGVkX19wt+Jvk9Gn8ldo4e5+BOsyzCJGAMXnQYo=
Pour le déchiffrage :
$ openssl enc -des3 -d -a -salt -in fic1.des3 -out file.txt -pbkdf2
enter des-ede3-cbc decryption password:
$ cat file.txt
systèmes
Pour chiffrer un fichier en indiquant le mot de passe dans la ligne de commande (avec l'option -pass) :
$ openssl enc -des3 -salt -in fic1 -out fic1.des3 -pass pass:**** -pbkdf2
Pour chiffrer un fichier en indiquant le mot de passe dans un fichier :
$ openssl enc -des3 -salt -in fic1 -out fic1.des3 -pass file:/root/pass -pbkdf2
Dans ce cas, seule la première ligne du fichier est utilisée comme mot de passe ou phrase de passe.
Pour le déchiffrer :
$ openssl enc -des3 -salt -in fic1.des3 -pass file:/root/pass -pbkdf2 -d
systèmes