Überprüfen einer qualifizierten Signatur per Extension
Wie überprüft man (mit BouncyCastle), ob ein X509-Zertifikat einer qualifizierten elektronischen Signatur entspricht?
Man liest die Extension aus:
X509Certificate[] chain = getYourCertificateChain();
try
{
ASN1InputStream in = new ASN1InputStream(new ByteArrayInputStream(chain[0].getEncoded()));
DERObject der = in.readObject();
X509CertificateStructure x509Str = new X509CertificateStructure((ASN1Sequence) der);
TBSCertificateStructure xTBSCert = x509Str.getTBSCertificate();
ext = xTBSCert.getExtensions();
X509Extension qcStats = ext.getExtension(X509Extensions.QCStatements);
if(null != qcStats)
//yes, its is!
//.....
} catch (CertificateEncodingException e)
{
logger.error(e.getMessage());
}