Package es.gob.jmulticard.connection
Class ApduEncrypterAes
java.lang.Object
es.gob.jmulticard.connection.AbstractApduEncrypter
es.gob.jmulticard.connection.ApduEncrypterAes
Operaciones de cifrado AES.
-
Field Summary
FieldsFields inherited from class es.gob.jmulticard.connection.AbstractApduEncrypter
paddingLength, TAG_DATA_TLV
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiondecryptResponseApdu
(ResponseApdu responseApdu, byte[] keyCipher, byte[] ssc, byte[] kMac, CryptoHelper cryptoHelper) Desencripta la Apdu de respuesta recibida a partir de las variables del canal de cifrado (kenc, kmac, ssc).protected byte[]
encryptData
(byte[] data, byte[] key, byte[] ssc, CryptoHelper cryptoHelper) Encripta los datos para una APDU cifrada.protected byte[]
generateMac
(byte[] dataPadded, byte[] ssc, byte[] kMac, CryptoHelper cryptoHelper) Aplica el algoritmo para la generación de la MAC del mensaje.Methods inherited from class es.gob.jmulticard.connection.AbstractApduEncrypter
addPadding7816, protectAPDU, removePadding7816
-
Field Details
-
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 classAbstractApduEncrypter
- 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 classAbstractApduEncrypter
- 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 classAbstractApduEncrypter
- 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.
-