Package org.gudy.bouncycastle.jce
Class X509V3CertificateGenerator
- java.lang.Object
-
- org.gudy.bouncycastle.jce.X509V3CertificateGenerator
-
public class X509V3CertificateGenerator extends java.lang.Object
class to produce an X.509 Version 3 certificate.
-
-
Field Summary
Fields Modifier and Type Field Description private static java.util.Hashtable
algorithms
private java.util.Hashtable
extensions
private java.util.Vector
extOrdering
private AlgorithmIdentifier
sigAlgId
private java.lang.String
signatureAlgorithm
private DERObjectIdentifier
sigOID
private V3TBSCertificateGenerator
tbsGen
-
Constructor Summary
Constructors Constructor Description X509V3CertificateGenerator()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addExtension(java.lang.String OID, boolean critical, byte[] value)
add a given extension field for the standard extensions tag (tag 3) The value parameter becomes the contents of the octet string associated with the extension.void
addExtension(java.lang.String OID, boolean critical, DEREncodable value)
add a given extension field for the standard extensions tag (tag 3)void
addExtension(DERObjectIdentifier OID, boolean critical, byte[] value)
add a given extension field for the standard extensions tag (tag 3)void
addExtension(DERObjectIdentifier OID, boolean critical, DEREncodable value)
add a given extension field for the standard extensions tag (tag 3)java.security.cert.X509Certificate
generateX509Certificate(java.security.PrivateKey key)
generate an X509 certificate, based on the current issuer and subject using the default provider "BC".java.security.cert.X509Certificate
generateX509Certificate(java.security.PrivateKey key, java.lang.String provider)
generate an X509 certificate, based on the current issuer and subject, using the passed in provider for the signing.java.security.cert.X509Certificate
generateX509Certificate(java.security.PrivateKey key, java.lang.String provider, java.security.SecureRandom random)
generate an X509 certificate, based on the current issuer and subject, using the passed in provider for the signing and the supplied source of randomness, if required.java.security.cert.X509Certificate
generateX509Certificate(java.security.PrivateKey key, java.security.SecureRandom random)
generate an X509 certificate, based on the current issuer and subject using the default provider "BC", and the passed in source of randomness (if required).void
reset()
reset the generatorvoid
setIssuerDN(X509Name issuer)
Set the issuer distinguished name - the issuer is the entity whose private key is used to sign the certificate.void
setNotAfter(java.util.Date date)
void
setNotBefore(java.util.Date date)
void
setPublicKey(java.security.PublicKey key)
void
setSerialNumber(java.math.BigInteger serialNumber)
set the serial number for the certificate.void
setSignatureAlgorithm(java.lang.String signatureAlgorithm)
void
setSubjectDN(X509Name subject)
Set the subject distinguished name.
-
-
-
Field Detail
-
tbsGen
private V3TBSCertificateGenerator tbsGen
-
sigOID
private DERObjectIdentifier sigOID
-
sigAlgId
private AlgorithmIdentifier sigAlgId
-
signatureAlgorithm
private java.lang.String signatureAlgorithm
-
extensions
private java.util.Hashtable extensions
-
extOrdering
private java.util.Vector extOrdering
-
algorithms
private static java.util.Hashtable algorithms
-
-
Method Detail
-
reset
public void reset()
reset the generator
-
setSerialNumber
public void setSerialNumber(java.math.BigInteger serialNumber)
set the serial number for the certificate.
-
setIssuerDN
public void setIssuerDN(X509Name issuer)
Set the issuer distinguished name - the issuer is the entity whose private key is used to sign the certificate.
-
setNotBefore
public void setNotBefore(java.util.Date date)
-
setNotAfter
public void setNotAfter(java.util.Date date)
-
setSubjectDN
public void setSubjectDN(X509Name subject)
Set the subject distinguished name. The subject describes the entity associated with the public key.
-
setPublicKey
public void setPublicKey(java.security.PublicKey key)
-
setSignatureAlgorithm
public void setSignatureAlgorithm(java.lang.String signatureAlgorithm)
-
addExtension
public void addExtension(java.lang.String OID, boolean critical, DEREncodable value)
add a given extension field for the standard extensions tag (tag 3)
-
addExtension
public void addExtension(DERObjectIdentifier OID, boolean critical, DEREncodable value)
add a given extension field for the standard extensions tag (tag 3)
-
addExtension
public void addExtension(java.lang.String OID, boolean critical, byte[] value)
add a given extension field for the standard extensions tag (tag 3) The value parameter becomes the contents of the octet string associated with the extension.
-
addExtension
public void addExtension(DERObjectIdentifier OID, boolean critical, byte[] value)
add a given extension field for the standard extensions tag (tag 3)
-
generateX509Certificate
public java.security.cert.X509Certificate generateX509Certificate(java.security.PrivateKey key) throws java.lang.SecurityException, java.security.SignatureException, java.security.InvalidKeyException
generate an X509 certificate, based on the current issuer and subject using the default provider "BC".- Throws:
java.lang.SecurityException
java.security.SignatureException
java.security.InvalidKeyException
-
generateX509Certificate
public java.security.cert.X509Certificate generateX509Certificate(java.security.PrivateKey key, java.security.SecureRandom random) throws java.lang.SecurityException, java.security.SignatureException, java.security.InvalidKeyException
generate an X509 certificate, based on the current issuer and subject using the default provider "BC", and the passed in source of randomness (if required).- Throws:
java.lang.SecurityException
java.security.SignatureException
java.security.InvalidKeyException
-
generateX509Certificate
public java.security.cert.X509Certificate generateX509Certificate(java.security.PrivateKey key, java.lang.String provider) throws java.security.NoSuchProviderException, java.lang.SecurityException, java.security.SignatureException, java.security.InvalidKeyException
generate an X509 certificate, based on the current issuer and subject, using the passed in provider for the signing.- Throws:
java.security.NoSuchProviderException
java.lang.SecurityException
java.security.SignatureException
java.security.InvalidKeyException
-
generateX509Certificate
public java.security.cert.X509Certificate generateX509Certificate(java.security.PrivateKey key, java.lang.String provider, java.security.SecureRandom random) throws java.security.NoSuchProviderException, java.lang.SecurityException, java.security.SignatureException, java.security.InvalidKeyException
generate an X509 certificate, based on the current issuer and subject, using the passed in provider for the signing and the supplied source of randomness, if required.- Throws:
java.security.NoSuchProviderException
java.lang.SecurityException
java.security.SignatureException
java.security.InvalidKeyException
-
-