Search in sources :

Example 1 with PsoVerifyCertificateApduCommand

use of es.gob.jmulticard.apdu.iso7816eight.PsoVerifyCertificateApduCommand in project jmulticard by ctt-gob-es.

the class Iso7816EightCard method verifyCertificate.

/**
 * Verifica un certificado en base a una clave pública cargada anteriormente
 * y que deberá ser la del certificado a partir del cual se generó el
 * certificado que ahora se valida.
 * @param cert Certificado que se desea comprobar.
 * @throws SecureChannelException Cuando el certificado no es correcto u ocurre algún error en la validación.
 * @throws ApduConnectionException Cuando ocurre un error en la comunicación con la tarjeta.
 */
public void verifyCertificate(final byte[] cert) throws ApduConnectionException {
    final CommandApdu apdu = new PsoVerifyCertificateApduCommand((byte) 0x00, cert);
    final ResponseApdu res = this.getConnection().transmit(apdu);
    if (!res.isOk()) {
        throw new SecureChannelException(// $NON-NLS-1$
        "Error en la verificacion del certificado. Se obtuvo el error: " + HexUtils.hexify(res.getBytes(), true));
    }
}
Also used : CommandApdu(es.gob.jmulticard.apdu.CommandApdu) SecureChannelException(es.gob.jmulticard.apdu.connection.cwa14890.SecureChannelException) ResponseApdu(es.gob.jmulticard.apdu.ResponseApdu) PsoVerifyCertificateApduCommand(es.gob.jmulticard.apdu.iso7816eight.PsoVerifyCertificateApduCommand)

Aggregations

CommandApdu (es.gob.jmulticard.apdu.CommandApdu)1 ResponseApdu (es.gob.jmulticard.apdu.ResponseApdu)1 SecureChannelException (es.gob.jmulticard.apdu.connection.cwa14890.SecureChannelException)1 PsoVerifyCertificateApduCommand (es.gob.jmulticard.apdu.iso7816eight.PsoVerifyCertificateApduCommand)1