Lorsque vous chiffrez un fichier, le fichier d'origine n'est ni supprimé, ni modifié. Le fichier de sortie est chiffré.
Pour trouver des solutions aux erreurs courantes relatives à la commande encrypt, reportez-vous à la section après les exemples.
Vous pouvez indiquer une phrase de passe à partir de laquelle une clé sera générée ou vous pouvez fournir une clé.
Si vous fournissez une phrase de passe, vous devez stocker ou mémoriser la phrase de passe. Si vous la stockez en ligne, le fichier de la phrase de passe ne doit être lisible que par vous.
Si vous fournissez une clé, elle doit avoir la taille correcte pour le mécanisme. Vous pouvez utiliser la commande pktool. Pour plus d'informations sur cette procédure et des exemples, reportez-vous à la section Génération d'une clé symétrique à l'aide de la commande pktool.
Fournissez une clé et utilisez un algorithme de clé symétrique avec la commande encrypt.
% encrypt -a algorithm [-v] \ [-k keyfile | -K key-label [-T token]] [-i input-file] [-o output-file]
Algorithme à utiliser pour chiffrer le fichier. Saisissez l'algorithme lorsqu'il s'affiche dans la sortie de la commande encrypt -l. Dans la mesure du possible, sélectionnez un algorithme approuvé par FIPS dans la liste de la section FIPS 140 Algorithms in the Cryptographic Framework du manuel Using a FIPS 140 Enabled System in Oracle Solaris 11.2 .
Fichier contenant une clé de longueur spécifiée par algorithme. La longueur de la clé pour chaque algorithme est répertoriée, en bits, dans la sortie de la commande encrypt -l.
Nom du jeton. Par défaut, le jeton est Sun Software PKCS#11 softtoken. Il est utilisé uniquement lorsque l'option –Kkey-label est utilisée.
Fichier d'entrée que vous voulez chiffrer. Ce fichier n'est pas modifié par la commande.
Fichier de sortie correspondant à la forme chiffrée du fichier d'entrée.
Dans l'exemple suivant, un utilisateur crée et stocke une clé AES dans keystore PKCS #11 existant pour l'utilisation lors du chiffrement et du déchiffrement. L'utilisateur peut vérifier que la clé existe et l'utiliser, mais il ne peut pas l'afficher.
% pktool genkey label=MyAESkeynumber1 keytype=aes keylen=256 Enter PIN for Sun Software PKCS#11 softtoken :Type password % pktool list objtype=key Enter PIN for Sun Software PKCS#11 softtoken :Type password No. Key Type Key Len. Key Label ---------------------------------------------------- Symmetric keys: 1 AES 256 MyAESkeynumber1
Pour utiliser la clé pour chiffrer un fichier, l'utilisateur le récupère la clé par son étiquette.
% encrypt -a aes -K MyAESkeynumber1 -i encryptthisfile -o encryptedthisfile
Pour déchiffrer le encryptedthisfile, l'utilisateur récupère la clé par son étiquette.
% decrypt -a aes -K MyAESkeynumber1 -i encryptedthisfile -o sameasencryptthisfileExemple 3-9 Chiffrement et déchiffrement avec AES et une phrase de passe
Dans l'exemple suivant, un fichier est chiffré avec l'algorithme AES. La clé est générée à partir de la phrase de passe. Si la phrase de passe est stockée dans un fichier, celui-ci doit être lisible uniquement par l'utilisateur.
% encrypt -a aes -i ticket.to.ride -o ~/enc/e.ticket.to.ride Enter passphrase: Type passphrase Re-enter passphrase: Type passphrase again
Le fichier d'entrée, ticket.to.ride, existe toujours sous sa forme d'origine.
Pour déchiffrer le fichier de sortie, l'utilisateur utilise la même phrase de passe et le même mécanisme de chiffrement que ceux utilisés pour le chiffrement du fichier.
% decrypt -a aes -i ~/enc/e.ticket.to.ride -o ~/d.ticket.to.ride Enter passphrase: Type passphraseExemple 3-10 Chiffrement et déchiffrement avec AES et un fichier de clés
Dans l'exemple suivant, un fichier est chiffré avec l'algorithme AES. Les mécanismes AES utilisent une clé de 128 bits, ou 16 octets.
% encrypt -a aes -k ~/keyf/05.07.aes16 \ -i ticket.to.ride -o ~/enc/e.ticket.to.ride
Le fichier d'entrée, ticket.to.ride, existe toujours sous sa forme d'origine.
Pour déchiffrer le fichier de sortie, l'utilisateur utilise la même clé et le même mécanisme de chiffrement que ceux utilisés pour le chiffrement.
% decrypt -a aes -k ~/keyf/05.07.aes16 \ -i ~/enc/e.ticket.to.ride -o ~/d.ticket.to.ride
Dépannage
Les messages suivants indiquent que la clé que vous avez fournie à la commande encrypt n'est pas autorisée par l'algorithme que vous utilisez.
encrypt: unable to create key for crypto operation: CKR_ATTRIBUTE_VALUE_INVALID
encrypt: failed to initialize crypto operation: CKR_KEY_SIZE_RANGE
Si vous transmettez une clé ne répondant pas aux exigences de l'algorithme, vous devez fournir une meilleure clé à l'aide de l'une des méthodes suivantes :
Utiliser une phrase de passe. La structure fournit ensuite une clé qui remplit les conditions requises.
Transmettre une taille de clé acceptée par l'algorithme. Par exemple, l'algorithme DES requiert une clé de 64 bits. L'algorithme 3DES requiert une clé de 192 bits.