Un code d'authentification des messages, ou MAC, calcule la synthèse pour le fichier et utilise une clé secrète pour protéger davantage cette synthèse. Un code MAC n'altère pas le fichier d'origine.
% mac -l Algorithm Keysize: Min Max ----------------------------------- des_mac 64 64 sha1_hmac 8 512 md5_hmac 8 512 sha224_hmac 8 512 sha256_hmac 8 512 sha384_hmac 8 1024 sha512_hmac 8 1024
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 la stocker ou la mémoriser. 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 mac.
% mac [-v] -a algorithm [-k keyfile | -K key-label [-T token]] input-file
Affiche la sortie au format suivant :
algorithm (input-file) = mac
Algorithme à utiliser pour calculer le code MAC. Saisissez l'algorithme lorsqu'il s'affiche dans la sortie de la commande mac -l.
Fichier contenant une clé de longueur spécifiée par algorithme.
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 pour le MAC.
Dans l'exemple suivant, la pièce jointe d'e-mail est authentifiée avec le mécanisme SHA1_HMAC et une clé dérivée d'une phrase de passe. La liste MAC est enregistrée dans un fichier. Si la phrase de passe est stockée dans un fichier, celui-ci doit être lisible uniquement par l'utilisateur.
% mac -v -a sha1_hmac email.attach Enter passphrase: Type passphrase sha1_hmac (email.attach) = 2b31536d3b3c0c6b25d653418db8e765e17fe07b % echo "sha1_hmac (email.attach) = 2b31536d3b3c0c6b25d653418db8e765e17fe07b" \ >> ~/sha1hmac.daily.05.12Exemple 3-6 Calcul d'un MAC avec SHA1_HMAC et un fichier de clés
Dans l'exemple suivant, le manifeste de répertoire est authentifié avec le mécanisme SHA1_HMAC et une clé secrète. Les résultats sont placés dans un fichier.
% mac -v -a sha1_hmac \ -k $HOME/keyf/05.07.mack64 docs/* > $HOME/mac.docs.legal.05.07 % more ~/mac.docs.legal.05.07 sha1_hmac (docs/legal1) = 9b31536d3b3c0c6b25d653418db8e765e17fe07a sha1_hmac (docs/legal2) = 865af61a3002f8a457462a428cdb1a88c1b51ff5 sha1_hmac (docs/legal3) = 076c944cb2528536c9aebd3b9fbe367e07b61dc7 sha1_hmac (docs/legal4) = 7aede27602ef6e4454748cbd3821e0152e45beb4Exemple 3-7 Calcul d'un MAC avec SHA1_HMAC et une étiquette de clés
Dans l'exemple suivant, le manifeste de répertoire est authentifié avec le mécanisme SHA1_HMAC et une clé secrète. Les résultats sont placés dans le keystore PKCS #11 de l'utilisateur. L'utilisateur a initialement créé le keystore et le mot de passe pour le keystore à l'aide de la commande pktool setpin.
% mac -a sha1_hmac -K legaldocs0507 docs/* Enter pin for Sun Software PKCS#11 softtoken:Type password
Pour récupérer le MAC à partir du keystore, l'utilisateur se sert des informations détaillées et fournit l'étiquette clé et le nom du répertoire qui a été authentifié.
% mac -v -a sha1_hmac -K legaldocs0507 docs/* Enter pin for Sun Software PKCS#11 softtoken:Type password sha1_hmac (docs/legal1) = 9b31536d3b3c0c6b25d653418db8e765e17fe07a sha1_hmac (docs/legal2) = 865af61a3002f8a457462a428cdb1a88c1b51ff5 sha1_hmac (docs/legal3) = 076c944cb2528536c9aebd3b9fbe367e07b61dc7 sha1_hmac (docs/legal4) = 7aede27602ef6e4454748cbd3821e0152e45beb4