Example usage for org.bouncycastle.asn1.ess ESSCertIDv2 ESSCertIDv2

List of usage examples for org.bouncycastle.asn1.ess ESSCertIDv2 ESSCertIDv2

Introduction

In this page you can find the example usage for org.bouncycastle.asn1.ess ESSCertIDv2 ESSCertIDv2.

Prototype

public ESSCertIDv2(byte[] certHash, IssuerSerial issuerSerial) 

Source Link

Usage

From source file:eu.europa.ec.markt.dss.signature.cades.CAdESProfileBES.java

License:Open Source License

private Attribute makeSigningCertificateAttribute(SignatureParameters parameters) {
    try {/*from w w w  .  ja  v  a2  s .  c o  m*/
        MessageDigest dig = MessageDigest.getInstance(parameters.getDigestAlgorithm().getName(),
                new BouncyCastleProvider());
        byte[] certHash = dig.digest(parameters.getSigningCertificate().getEncoded());

        if (parameters.getDigestAlgorithm() == DigestAlgorithm.SHA1) {
            SigningCertificate sc = new SigningCertificate(new ESSCertID(certHash));

            return new Attribute(PKCSObjectIdentifiers.id_aa_signingCertificate, new DERSet(sc));

        } else {
            ESSCertIDv2 essCert = new ESSCertIDv2(
                    new AlgorithmIdentifier(parameters.getDigestAlgorithm().getOid()), certHash);
            SigningCertificateV2 scv2 = new SigningCertificateV2(new ESSCertIDv2[] { essCert });

            return new Attribute(PKCSObjectIdentifiers.id_aa_signingCertificateV2, new DERSet(scv2));
        }
    } catch (NoSuchAlgorithmException e) {
        throw new RuntimeException(e);
    } catch (CertificateException e) {
        throw new RuntimeException(e);
    }

}

From source file:org.dihedron.crypto.certificates.Certificates.java

License:Open Source License

public static ESSCertIDv2[] makeESSCertIdV2(X509Certificate x509certificate, IssuerSerial issuerSerial,
        DigestAlgorithm digestAlgorithm) throws NoSuchAlgorithmException, CertificateEncodingException {
    logger.info("adding signing certificate v2 to signed attributes");
    MessageDigest digest = MessageDigest.getInstance(digestAlgorithm.getAsn1Id());
    ESSCertIDv2 essCertIdv2 = new ESSCertIDv2(digest.digest(x509certificate.getEncoded()), issuerSerial);
    ESSCertIDv2 essCertIdv2s[] = new ESSCertIDv2[1];
    essCertIdv2s[0] = essCertIdv2;//from  w  ww  .j  ava  2 s .  c om
    return essCertIdv2s;
}