Package es.gob.jmulticard.asn1.icao
Class Sod
java.lang.Object
es.gob.jmulticard.asn1.DecoderObject
es.gob.jmulticard.asn1.icao.Sod
SOD de ICAO 9303.
La implementación interna se apoya en BouncyCastle.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate X509Certificate[]
private final CryptoHelper
private LdsSecurityObject
private byte[]
private static final byte
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected void
Decodifica el valor DER establecido comprobando que corresponde al esperado y formando las estructuras internas.Obtiene la cadena de certificados del firmante del LDSSecurityObject.protected byte
Obtiene la etiqueta de tipo ASN.1 del objeto.Obtiene elLDSSecurityObject
.byte[]
Obtiene la codificación binaria del LDSSecurityObject.toString()
void
Valida la firma electrónica del SOD.Methods inherited from class es.gob.jmulticard.asn1.DecoderObject
checkTag, getBytes, getRawDerValue, setDerValue
-
Field Details
-
cryptoHelper
-
TAG
private static final byte TAG- See Also:
-
ldsSecurityObjectBytes
private transient byte[] ldsSecurityObjectBytes -
ldsSecurityObject
-
certificateChain
-
-
Constructor Details
-
Sod
Constructor.- Parameters:
ch
- Clase de utilidad para operaciones criptográficas.
-
-
Method Details
-
decodeValue
Description copied from class:DecoderObject
Decodifica el valor DER establecido comprobando que corresponde al esperado y formando las estructuras internas.- Specified by:
decodeValue
in classDecoderObject
- Throws:
Asn1Exception
- Si hay errores correspondientes a las estructuras ASN.1 DER.TlvException
- Si hay errores relativos a los TLV DER.
-
validateSignature
public void validateSignature() throws TlvException, SignatureException, CertificateException, IOException, Asn1ExceptionValida la firma electrónica del SOD.- Throws:
TlvException
- Si el SOD no es un TLV correctamente formado.SignatureException
- Si la firma no es válida.CertificateException
- Si hay problemas relacionados con los certificados de firma.IOException
- Si los datos proporcionados no son una firma CMS/PKCS#7 bien formada.Asn1Exception
- Si el SOD no contiene unLDSSecurityObject
válido.
-
getDefaultTag
protected byte getDefaultTag()Description copied from class:DecoderObject
Obtiene la etiqueta de tipo ASN.1 del objeto.- Specified by:
getDefaultTag
in classDecoderObject
- Returns:
- Etiqueta de tipo ASN.1 del objeto.
-
getLdsSecurityObjectBytes
public byte[] getLdsSecurityObjectBytes() throws SignatureException, CertificateException, TlvException, IOException, Asn1ExceptionObtiene la codificación binaria del LDSSecurityObject. La obtención desencadena una validación de la firma electrónica del SOD.- Returns:
- Codificación binaria del LDSSecurityObject.
- Throws:
IOException
- Si se encunetra alguna estructura ASN.1 mal formada.CertificateException
- Si los certificados de firma del SOD presentan problemas.SignatureException
- Si la firma del SOD es inválida o presenta problemas.TlvException
- Si el SOD del documento no es un TLV válido.Asn1Exception
- Si el SOD no contiene unLDSSecurityObject
válido.
-
getLdsSecurityObject
public LdsSecurityObject getLdsSecurityObject() throws TlvException, Asn1Exception, IOException, SignatureException, CertificateExceptionObtiene elLDSSecurityObject
. La obtención desencadena una validación de la firma electrónica del SOD.- Returns:
- LDSSecurityObject.
- Throws:
TlvException
- Si el SOD del documento no es un TLV válido.IOException
- Si no se puede construir elLDSSecurityObject
.Asn1Exception
- Si los datos encontrados no conforman unLDSSecurityObject
válido.CertificateException
- Si los certificados de firma del SOD presentan problemas.SignatureException
- Si la firma del SOD es inválida o presenta problemas.
-
getCertificateChain
public X509Certificate[] getCertificateChain() throws TlvException, Asn1Exception, SignatureException, CertificateException, IOExceptionObtiene la cadena de certificados del firmante del LDSSecurityObject. La obtención desencadena una validación de la firma electrónica del SOD.- Returns:
- Cadena de certificados del firmante del LDSSecurityObject.
- Throws:
TlvException
- Si el SOD del documento no es un TLV válido.Asn1Exception
- Si el SOD del documento no es un tipo ASN.1 válido.IOException
- Si se encunetra alguna estructura ASN.1 mal formada.CertificateException
- Si los certificados de firma del SOD presentan problemas.SignatureException
- Si la firma del SOD es inválida o presenta problemas.
-
toString
-