Package es.gob.jmulticard.card.cwa14890
Interface Cwa14890Card
- All Known Implementing Classes:
CeresSc
,Dnie
,Dnie3
,DnieNfc
,IcaoMrtdWithBac
,IcaoMrtdWithPace
,Tif
public interface Cwa14890Card
Tarjetas acordes a la especificación
CWA-14890.
-
Method Summary
Modifier and TypeMethodDescriptionboolean
externalAuthentication
(byte[] extAuthenticationData) Envia el mensaje de autenticación externa.byte[]
Solicita un desafío de 8 bytes a la tarjeta.byte[]
getChrCCvIfd
(Cwa14890PublicConstants consts) Recupera el CHR de la clave pública del certificado de terminal.Recupera la clave pública del certificado de componente.int
Obtiene la longitud, en octetos, de las claves RSA del certificado de comnponente del terminal.Recupera la clave privada del certificado de componente del terminal.byte[]
getInternalAuthenticateMessage
(byte[] randomIfd, byte[] chrCCvIfd) Obtiene el mensaje de autenticación interna de la tarjeta.byte[]
Recupera la referencia a la clave privada del certificado de componente.byte[]
Recupera el número de serie de la tarjeta.void
setKeysToAuthentication
(byte[] refPublicKey, byte[] refPrivateKey) Establece una clave pública y otra privada para la autenticación.void
Verifica el certificado de componente de la tarjeta.void
Verifica que los certificados declarados por el controlador (certificados de terminal) sean válidos para el uso de la tarjeta.
-
Method Details
-
verifyIcc
Verifica el certificado de componente de la tarjeta.- Throws:
CertificateException
- Cuando ocurre algún problema en la validación del certificado.IOException
- Cuando ocurre algún problema en la selección y lectura del certificado.SecurityException
- Si falla la validación del certificado.
-
getIccCertPublicKey
Recupera la clave pública del certificado de componente.- Returns:
- Clave pública del certificado de componente.
- Throws:
IOException
- Cuando ocurre algún problema en la selección y lectura del certificado
-
verifyIfdCertificateChain
Verifica que los certificados declarados por el controlador (certificados de terminal) sean válidos para el uso de la tarjeta.- Parameters:
consts
- Clase de claves.
-
getInternalAuthenticateMessage
byte[] getInternalAuthenticateMessage(byte[] randomIfd, byte[] chrCCvIfd) throws ApduConnectionException Obtiene el mensaje de autenticación interna de la tarjeta.- Parameters:
randomIfd
- Bytes aleatorios generados.chrCCvIfd
- CHR de la clave pública del certificado de terminal.- Returns:
- Mensaje cifrado con la clave privada de componente de la tarjeta.
- Throws:
ApduConnectionException
- Cuando ocurre un error de comunicación con la tarjeta.
-
externalAuthentication
Envia el mensaje de autenticación externa.- Parameters:
extAuthenticationData
- Mensaje de autenticación externa.- Returns:
true
si la autenticación finalizó correctamente,false
en caso contrario.- Throws:
ApduConnectionException
- Cuando ocurre un error en la comunicación con la tarjeta.
-
setKeysToAuthentication
void setKeysToAuthentication(byte[] refPublicKey, byte[] refPrivateKey) throws ApduConnectionException Establece una clave pública y otra privada para la autenticación. interna y externa de la tarjeta.- Parameters:
refPublicKey
- Referencia a la clave pública.refPrivateKey
- Referencia a la clave privada.
-
getChallenge
Solicita un desafío de 8 bytes a la tarjeta.- Returns:
- Array de 8 bytes aleatorios.
- Throws:
ApduConnectionException
- Cuando ocurre un error de comunicación con la tarjeta
-
getSerialNumber
Recupera el número de serie de la tarjeta.- Returns:
- Número de serie.
- Throws:
ApduConnectionException
- Cuando ocurre un error en la comunicación con la tarjeta.
-
getRefIccPrivateKey
Recupera la referencia a la clave privada del certificado de componente.- Parameters:
consts
- Clase de claves.- Returns:
- Referencia a clave privada
-
getChrCCvIfd
Recupera el CHR de la clave pública del certificado de terminal.- Parameters:
consts
- Clase de claves.- Returns:
- Referencia a clave pública
-
getIfdPrivateKey
Recupera la clave privada del certificado de componente del terminal.- Parameters:
consts
- Clase de claves privadas.- Returns:
- Clave privada.
-
getIfdKeyLength
Obtiene la longitud, en octetos, de las claves RSA del certificado de comnponente del terminal.- Parameters:
consts
- Clase de claves.- Returns:
- Longitud, en octetos, de las claves RSA del certificado de comnponente del terminal.
-