Class ApduEncrypterAes

java.lang.Object
es.gob.jmulticard.connection.AbstractApduEncrypter
es.gob.jmulticard.connection.ApduEncrypterAes

public final class ApduEncrypterAes extends AbstractApduEncrypter
Operaciones de cifrado AES.
  • Field Details

    • LOGGER

      private static final Logger LOGGER
  • Constructor Details

    • ApduEncrypterAes

      public ApduEncrypterAes()
      Constructor de la clase para operaciones de cifrado AES.
  • Method Details

    • encryptData

      protected byte[] encryptData(byte[] data, byte[] key, byte[] ssc, CryptoHelper cryptoHelper) throws IOException
      Description copied from class: AbstractApduEncrypter
      Encripta los datos para una APDU cifrada.
      Specified by:
      encryptData in class AbstractApduEncrypter
      Parameters:
      data - Datos de la APDU.
      key - Clave de cifrado.
      ssc - Contador de secuencia.
      cryptoHelper - Clase con las funcionalidades de criptografía.
      Returns:
      Datos enconcriptados.
      Throws:
      IOException - En cualquier error.
    • generateMac

      protected byte[] generateMac(byte[] dataPadded, byte[] ssc, byte[] kMac, CryptoHelper cryptoHelper) throws IOException
      Description copied from class: AbstractApduEncrypter
      Aplica el algoritmo para la generación de la MAC del mensaje.
      Specified by:
      generateMac in class AbstractApduEncrypter
      Parameters:
      dataPadded - Datos sobre los que generar la MAC.
      ssc - Contador de secuencia de la operación.
      kMac - Clave necesaria para la operación (algoritmo dependiente de la implementación).
      cryptoHelper - Manejador para la realización de las operaciones criptográficas.
      Returns:
      Clave de autenticación de los datos.
      Throws:
      IOException - Si hay errores de entrada / salida.
    • decryptResponseApdu

      public ResponseApdu decryptResponseApdu(ResponseApdu responseApdu, byte[] keyCipher, byte[] ssc, byte[] kMac, CryptoHelper cryptoHelper)
      Description copied from class: AbstractApduEncrypter
      Desencripta la Apdu de respuesta recibida a partir de las variables del canal de cifrado (kenc, kmac, ssc).
      Specified by:
      decryptResponseApdu in class AbstractApduEncrypter
      Parameters:
      responseApdu - Respuesta a desencriptar.
      keyCipher - Clave de cifrado.
      ssc - Contador de secuencia.
      kMac - Clave de cifrado.
      cryptoHelper - Instancia que lleva a cabo las operaciones de cifrado.
      Returns:
      Apdu descifrada.