Voici une cheat sheet OpenSSL pour les opérations courantes, notamment la création de clés, le chiffrement/déchiffrement, et la signature de documents.
openssl genrsa -out <clé_privé> <taille_clé>
openssl genrsa -out private.pem 2048
openssl genrsa <algorithme_chiffrement_clé> -out <clé_privé> <taille_clé>
openssl genrsa -aes256 -out private.pem 2048
# Saisie de mot de passe dans un second temps
La clé est maintenant sécurisée par mot de passe. Cependant, on peut toujours la lire avec cat. On ne pourra en revanche réaliser aucune action cryptographique : déchiffrer, signer ou générer une clé publique.
openssl rsa -in <clé_privé> -pubout -out <clé_publique>
openssl rsa -in private.pem -pubout -out public.pem
openssl rsa -in <clé_privé> -out <clé_privé_sans_mot_de_passe>
openssl rsa -in private.key -out private.key
openssl pkeyutl -encrypt -inkey <clé_privé> -pubin -in <fichier> -out <fichier_chiffré>
openssl pkeyutl -encrypt -inkey public.pem -pubin -in fichier.txt -out fichier.enc
# pkeyutl remplace rsautl qui est obsolète.
openssl pkeyutl -decrypt -inkey <clé_privé> -in <fichier_chiffré> -out <fichier_déchiffré>
openssl pkeyutl -decrypt -inkey private.pem -in fichier.enc -out fichier.dec