30.3. Almacenamiento de un certificado en una tarjeta inteligente

Esta sección describe la configuración de la tarjeta inteligente con la herramienta pkcs15-init, que le ayuda a configurar:

  • Borrar la tarjeta inteligente
  • Configuración de nuevos PINs y claves de desbloqueo de PINs (PUKs) opcionales
  • Creación de una nueva ranura en la tarjeta inteligente
  • Almacenar el certificado, la clave privada y la clave pública en la ranura
  • Bloqueo de la configuración de la tarjeta inteligente (algunas tarjetas inteligentes requieren este tipo de finalización)

Requisitos previos

  • El paquete opensc, que incluye la herramienta pkcs15-init está instalado.

    Para más detalles, consulte Instalación de herramientas para la gestión y el uso de tarjetas inteligentes.

  • La tarjeta se introduce en el lector y se conecta al ordenador.
  • Tiene la clave privada, la clave pública y el certificado para almacenarlos en la tarjeta inteligente. En este procedimiento, testuser.key, testuserpublic.key, y testuser.crt son los nombres utilizados para la clave privada, la clave pública y el certificado.
  • Su actual PIN de usuario de la tarjeta inteligente y el PIN del responsable de seguridad (SO-PIN)

Procedimiento

  1. Borre su tarjeta inteligente y autentifíquese con su PIN:

    $ pkcs15-init --erase-card --use-default-transport-keys
    Using reader with a card: Reader name
    PIN [Security Officer PIN] required.
    Please enter PIN [Security Officer PIN]:

    La tarjeta ha sido borrada.

  2. Inicialice su tarjeta inteligente, establezca su PIN y PUK de usuario, y su PIN y PUK de responsable de seguridad:

    $ pkcs15-init --create-pkcs15 --use-default-transport-keys \
        --pin 963214 --puk 321478 --so-pin 65498714 --so-puk 784123
    Using reader with a card: Reader name

    La herramienta pcks15-init crea una nueva ranura en la tarjeta inteligente.

  3. Establezca la etiqueta y el ID de autenticación para la ranura:

    $ pkcs15-init --store-pin --label testuser \
        --auth-id 01 --so-pin 65498714 --pin 963214 --puk 321478
    Using reader with a card: Reader name

    La etiqueta se establece en un valor legible para el ser humano, en este caso, testuser. El auth-id debe ser dos valores hexadecimales, en este caso se establece como 01.

  4. Guarde y etiquete la clave privada en la nueva ranura de la tarjeta inteligente:

    $ pkcs15-init --store-private-key testuser.key --label testuser_key \
        --auth-id 01 --id 01 --pin 963214
    Using reader with a card: Reader name
    Nota

    El valor que especifique para --id debe ser el mismo cuando almacene su clave privada, y su certificado. Si no especifica un valor para --id, la herramienta calcula un valor más complicado y, por lo tanto, es más fácil definir su propio valor.

  5. Guarde y etiquete el certificado en la nueva ranura de la tarjeta inteligente:

    $ pkcs15-init --store-certificate testuser.crt --label testuser_crt \
        --auth-id 01 --id 01 --format pem --pin 963214
    Using reader with a card: Reader name
  6. (Opcional) Guarde y etiquete la clave pública en la nueva ranura de la tarjeta inteligente:

    $ pkcs15-init --store-public-key testuserpublic.key
        --label testuserpublic_key --auth-id 01 --id 01 --pin 963214
    Using reader with a card: Reader name
    Nota

    Si la clave pública se corresponde con una clave privada y/o un certificado, debe especificar el mismo ID que esa clave privada y/o ese certificado.

  7. (Opcional) Algunas tarjetas inteligentes requieren que se finalice la tarjeta bloqueando los ajustes:

    $ pkcs15-init -F

    En esta etapa, su tarjeta inteligente incluye el certificado, la clave privada y la clave pública en la ranura recién creada. También ha creado su PIN y PUK de usuario y el PIN y PUK del responsable de seguridad.