Gestión de cifrado y certificados en Oracle® Solaris 11.2

Salir de la Vista de impresión

Actualización: Septiembre de 2014
 
 

Cómo calcular un MAC de un archivo

Un código de autenticación de mensajes, o MAC, calcula un resumen del archivo y utiliza una clave secreta para proteger aún más el resumen. Un MAC no modifica el archivo original.

  1. Muestre los mecanismos disponibles.
    % 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

    Notas -  Cada algoritmo admitido es un alias de la versión más usada y con menos restricciones de un determinado tipo de algoritmo. La salida anterior muestra los nombres de algoritmo disponibles y los tamaños de clave para cada uno. Siempre que sea posible, use un algoritmo admitido que coincida con un algoritmo aprobado por FIPS con la longitud de clave aprobada por FIPS; selecciónelo de la lista ubicada en FIPS 140 Algorithms in the Cryptographic Framework de Using a FIPS 140 Enabled System in Oracle Solaris 11.2 .
  2. Genere una clave simétrica de la longitud adecuada.

    Puede proporcionar una frase de contraseña a partir de la cual se generará una clave o puede proporcionar una clave.

    • Si proporciona una frase de contraseña, deberá almacenarla o recordarla. Si almacena la frase de contraseña en línea, sólo usted debe poder leer el archivo de frases de contraseña.

    • Si proporciona una clave, ésta debe ser del tamaño correcto para el mecanismo. Puede utilizar el comando pktool. Para conocer el procedimiento y algunos ejemplos, consulte Cómo generar una clave simétrica con el comando pktool.

  3. Cree un MAC para un archivo.

    Proporcione una clave y utilice un algoritmo de clave simétrico con el comando mac.

    % mac [-v] -a algorithm [-k keyfile | -K key-label [-T token]] input-file
    –v

    Muestra el resultado en el siguiente formato:

    algorithm (input-file) = mac
    –a algorithm

    El algoritmo que se utiliza para calcular el MAC. Escriba el algoritmo tal como aparece en el resultado del comando mac -l.

    –k keyfile

    El archivo que contiene una clave con la longitud especificada por el algoritmo.

    –K key-label

    Es la etiqueta de la clave en el almacén de claves PKCS #11.

    –T token

    El nombre del token. De manera predeterminada, el token es Sun Software PKCS#11 softtoken. Sólo se utiliza cuando la opción –K key-label se utiliza.

    input-file

    El archivo de entrada para el MAC.

Ejemplo 3-5  Cálculo de un MAC con SHA1_HMAC y una frase de contraseña

En el siguiente ejemplo, el anexo de correo electrónico se autentica con el mecanismo SHA1_HMAC y una clave que se obtiene a partir de una frase de contraseña. La lista de MAC se guarda en un archivo. Si la frase de contraseña se almacena en un archivo, el usuario debe ser la única persona que pueda leer el archivo.

% 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.12
Ejemplo 3-6  Cálculo de un MAC con SHA1_HMAC y un archivo de claves

En el ejemplo siguiente, el manifiesto de directorio se autentica con el mecanismo SHA1_HMAC y una clave secreta. Los resultados se colocarán en un archivo.

% 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) = 7aede27602ef6e4454748cbd3821e0152e45beb4
Ejemplo 3-7  Cálculo de un MAC con SHA1_HMAC y una etiqueta de clave

En el ejemplo siguiente, el manifiesto de directorio se autentica con el mecanismo SHA1_HMAC y una clave secreta. Los resultados se ubican en el almacén de claves PKCS #11 del usuario. El usuario creó inicialmente el almacén de claves y la contraseña para el almacén de claves mediante el comando pktool setpin.

% mac -a sha1_hmac -K legaldocs0507 docs/*
Enter pin for Sun Software PKCS#11 softtoken:Type password

Para recuperar el MAC desde el almacén de claves, el usuario utiliza la opción detallada y proporciona la etiqueta de clave y el nombre del directorio que se ha autenticado.

% 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