Modifier and Type | Class and Description |
---|---|
static class |
Certificate.Template |
Constructor and Description |
---|
Certificate(CertificateInfo info,
java.security.PrivateKey privKey,
SignatureAlgorithm signingAlg)
Creates and signs an X.509 Certificate.
|
Modifier and Type | Method and Description |
---|---|
void |
encode(java.io.OutputStream ostream)
Write this value's DER encoding to an output stream using
its own base tag.
|
void |
encode(Tag implicitTag,
java.io.OutputStream ostream)
Write this value's DER encoding to an output stream using
an implicit tag.
|
CertificateInfo |
getInfo()
Returns the information (TBSCertificate) contained in this certificate.
|
Tag |
getTag()
Returns the base tag for this type, not counting any tags
that may be imposed on it by its context.
|
static Certificate.Template |
getTemplate() |
static void |
main(java.lang.String[] argv) |
void |
verify()
Verifies the signature on this certificate.
|
void |
verify(java.security.PublicKey key)
Verifies the signature on this certificate, using the given public key.
|
void |
verify(java.security.PublicKey key,
CryptoToken token)
Verifies the signature on this certificate, using the given public
key and CryptoToken.
|
public Certificate(CertificateInfo info, java.security.PrivateKey privKey, SignatureAlgorithm signingAlg) throws java.io.IOException, CryptoManager.NotInitializedException, TokenException, java.security.NoSuchAlgorithmException, java.security.cert.CertificateException, java.security.InvalidKeyException, java.security.SignatureException
info
- A CertificateInfo (TBSCertificate), which specifies
the actual information of the certificate.privKey
- The private key with which to sign the certificat.signingAlg
- The algorithm to use to sign the certificate.
It must match the algorithm specified in the CertificateInfo.java.io.IOException
- If an error occurred while encoding the
certificate.CryptoManager.NotInitializedException
- Because this
operation involves cryptography (signing), CryptoManager must
be initialized before calling it.TokenException
- If an error occurs on a PKCS #11 token.java.security.NoSuchAlgorithmException
- If the OID for the signing algorithm
cannot be located.java.security.cert.CertificateException
- If the signing algorithm specified
as a parameter does not match the one in the certificate info.java.security.InvalidKeyException
- If the key does not match the signing
algorithm.java.security.SignatureException
- If an error occurs while signing the
certificate.public void verify() throws java.security.InvalidKeyException, CryptoManager.NotInitializedException, java.security.NoSuchAlgorithmException, java.security.cert.CertificateException, java.security.SignatureException, InvalidKeyFormatException
java.security.InvalidKeyException
CryptoManager.NotInitializedException
java.security.NoSuchAlgorithmException
java.security.cert.CertificateException
java.security.SignatureException
InvalidKeyFormatException
public void verify(java.security.PublicKey key) throws java.security.InvalidKeyException, java.security.NoSuchAlgorithmException, java.security.cert.CertificateException, java.security.SignatureException
java.security.InvalidKeyException
java.security.NoSuchAlgorithmException
java.security.cert.CertificateException
java.security.SignatureException
public void verify(java.security.PublicKey key, CryptoToken token) throws java.security.NoSuchAlgorithmException, java.security.cert.CertificateException, java.security.SignatureException, java.security.InvalidKeyException
java.security.NoSuchAlgorithmException
java.security.cert.CertificateException
java.security.SignatureException
java.security.InvalidKeyException
public CertificateInfo getInfo()
public Tag getTag()
ASN1Value
public void encode(java.io.OutputStream ostream) throws java.io.IOException
ASN1Value
public void encode(Tag implicitTag, java.io.OutputStream ostream) throws java.io.IOException
ASN1Value
public static Certificate.Template getTemplate()
public static void main(java.lang.String[] argv)