Interface CryptoCard

All Known Subinterfaces:
Dni
All Known Implementing Classes:
CardOS, Ceres, CeresSc, Dnie, Dnie3, DnieNfc, IcaoMrtdWithBac, IcaoMrtdWithPace, SmartCafePkcs15Applet, StCard, Tif, TuiR5

public interface CryptoCard
Operaciones comunes a todas las tarjetas criptográficas.
  • Method Details

    • getAliases

      String[] getAliases() throws CryptoCardException
      Obtiene los alias de los certificados de la tarjeta.
      Returns:
      Array con los alias de los certificados de la tarjeta
      Throws:
      CryptoCardException - Si ocurre algún problema al recuperar los alias.
    • getCertificate

      X509Certificate getCertificate(String alias) throws CryptoCardException, PinException
      Obtiene el certificado correspondiente al alias proporcionado.
      Parameters:
      alias - Alias del certificado.
      Returns:
      Certificado correspondiente al alias proporcionado o null si no existe ningún certificado con ese alias.
      Throws:
      CryptoCardException - Si ocurre algún problema al recuperar el certificado.
      PinException - Si el PIN proporcionado es incorrecto.
      AuthenticationModeLockedException - Cuando la tarjeta está bloqueada.
    • getPrivateKey

      PrivateKeyReference getPrivateKey(String alias) throws CryptoCardException
      Obtiene una referencia a la clave privada correspondiente al alias proporcionado.
      Parameters:
      alias - Alias del certificado
      Returns:
      Referencia a la clave privada correspondiente al alias proporcionado o null si no existe ninguna clave privada con ese alias
      Throws:
      CryptoCardException - Si ocurre algún problema al recuperar la clave privada.
    • sign

      byte[] sign(byte[] data, String algorithm, PrivateKeyReference keyRef) throws CryptoCardException, PinException
      Realiza una firma electrónica.
      Parameters:
      data - Datos a firmar.
      algorithm - Algoritmo de firma.
      keyRef - Referencia a la clave privada de firma.
      Returns:
      Datos firmados (PKCS#1 v1.5).
      Throws:
      AuthenticationModeLockedException - Cuando la tarjeta está bloqueada.
      CryptoCardException - Si ocurre algún problema durante la firma.
      PinException - Si el PIN proporcionado es incorrecto o no es posible obtenerlo.