List of usage examples for org.bouncycastle.cert.jcajce JcaX509v3CertificateBuilder setIssuerUniqueID
public X509v3CertificateBuilder setIssuerUniqueID(boolean[] uniqueID)
From source file:org.signserver.test.utils.builders.CertBuilder.java
License:Open Source License
/** * Builds a certificate based on the specified values and default values * for everything not specified but required. * @return a new certificate/*w w w .ja va2 s. c om*/ * @throws CertBuilderException in case anything failed */ public X509CertificateHolder build() throws CertBuilderException { try { if (isVersion3()) { JcaX509v3CertificateBuilder builder = new JcaX509v3CertificateBuilder(getIssuer(), getSerialNumber(), getNotBefore(), getNotAfter(), getSubject(), getSubjectPublicKey()); for (CertExt ext : extensions) { builder.addExtension(ext.getOid(), ext.isIsCritical(), ext.getValue()); } if (getIssuerUniqueId() != null) { builder.setIssuerUniqueID(getIssuerUniqueId()); } if (getSubjectUniqueId() != null) { builder.setSubjectUniqueID(getSubjectUniqueId()); } // builder.setSubjectUniqueID(issuerUniqueId) ContentSigner contentSigner = new JcaContentSignerBuilder(getSignatureAlgorithm()).setProvider("BC") .build(getIssuerPrivateKey()); return builder.build(contentSigner); } else { JcaX509v1CertificateBuilder builder = new JcaX509v1CertificateBuilder(getIssuer(), getSerialNumber(), getNotBefore(), getNotAfter(), getSubject(), getSubjectPublicKey()); ContentSigner contentSigner = new JcaContentSignerBuilder(getSignatureAlgorithm()).setProvider("BC") .build(getIssuerPrivateKey()); return builder.build(contentSigner); } } catch (OperatorCreationException ex) { throw new CertBuilderException(ex); } catch (NoSuchAlgorithmException ex) { throw new CertBuilderException(ex); } catch (NoSuchProviderException ex) { throw new CertBuilderException(ex); } catch (CertIOException ex) { throw new CertBuilderException(ex); } }