You are currently viewing a snapshot of www.mozilla.org taken on April 21, 2008. Most of this content is highly out of date (some pages haven't been updated since the project began in 1998) and exists for historical purposes only. If there are any pages on this archive site that you think should be added back to www.mozilla.org, please file a bug.




org.mozilla.jss.pkix.cert
Class CertificateInfo

java.lang.Object
  extended by org.mozilla.jss.pkix.cert.CertificateInfo
All Implemented Interfaces:
ASN1Value

public class CertificateInfo
extends java.lang.Object
implements ASN1Value

A TBSCertificate (to-be-signed certificate), the actual information in a certificate apart from the signature.


Nested Class Summary
static class CertificateInfo.Template
          Template class for decoding a CertificateInfo.
static class CertificateInfo.Version
          An X.509 Certificate version.
 
Field Summary
static CertificateInfo.Version v1
           
static CertificateInfo.Version v2
           
static CertificateInfo.Version v3
           
 
Constructor Summary
CertificateInfo(CertificateInfo.Version version, INTEGER serialNumber, AlgorithmIdentifier signatureAlgId, Name issuer, java.util.Date notBefore, java.util.Date notAfter, Name subject, SubjectPublicKeyInfo subjectPublicKeyInfo)
          Creates a CertificateInfo with the required fields.
 
Method Summary
 void addExtension(Extension extension)
           
 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.
 Extension getExtension(OBJECT_IDENTIFIER oid)
          Linearly searches the extension list for an extension with the given object identifier.
 SEQUENCE getExtensions()
          Returns the extensions of this certificate.
 Name getIssuer()
           
 BIT_STRING getIssuerUniqueIdentifier()
          Should only be called if this field is present.
 java.util.Date getNotAfter()
           
 java.util.Date getNotBefore()
           
 INTEGER getSerialNumber()
           
 AlgorithmIdentifier getSignatureAlgId()
           
 Name getSubject()
           
 SubjectPublicKeyInfo getSubjectPublicKeyInfo()
           
 BIT_STRING getSubjectUniqueIdentifier()
           
 Tag getTag()
          Returns the base tag for this type, not counting any tags that may be imposed on it by its context.
static CertificateInfo.Template getTemplate()
           
 CertificateInfo.Version getVersion()
           
 boolean hasExtensions()
           
 boolean hasIssuerUniqueIdentifier()
           
 boolean hasSubjectUniqueIdentifier()
           
 boolean isExtensionPresent(OBJECT_IDENTIFIER oid)
          Linearly searches the extension list for an extension with the given object identifier.
 void print(java.io.PrintStream ps)
           
 void setExtensions(SEQUENCE extensions)
           
 void setIssuer(Name issuer)
           
 void setIssuerUniqueIdentifier(BIT_STRING issuerUniqueIdentifier)
           
 void setNotAfter(java.util.Date notAfter)
           
 void setNotBefore(java.util.Date notBefore)
           
 void setSerialNumber(INTEGER serialNumber)
           
 void setSignatureAlgId(AlgorithmIdentifier signatureAlgId)
           
 void setSubject(Name subject)
           
 void setSubjectPublicKeyInfo(java.security.PublicKey pubk)
          Extracts the SubjectPublicKeyInfo from the given public key and stores it in the CertificateInfo.
 void setSubjectPublicKeyInfo(SubjectPublicKeyInfo subjectPublicKeyInfo)
           
 void setSubjectUniqueIdentifier(BIT_STRING subjectUniqueIdentifier)
           
 void setVersion(CertificateInfo.Version version)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

v1

public static final CertificateInfo.Version v1

v2

public static final CertificateInfo.Version v2

v3

public static final CertificateInfo.Version v3
Constructor Detail

CertificateInfo

public CertificateInfo(CertificateInfo.Version version,
                       INTEGER serialNumber,
                       AlgorithmIdentifier signatureAlgId,
                       Name issuer,
                       java.util.Date notBefore,
                       java.util.Date notAfter,
                       Name subject,
                       SubjectPublicKeyInfo subjectPublicKeyInfo)
Creates a CertificateInfo with the required fields.

Method Detail

setVersion

public void setVersion(CertificateInfo.Version version)

getVersion

public CertificateInfo.Version getVersion()

setSerialNumber

public void setSerialNumber(INTEGER serialNumber)

getSerialNumber

public INTEGER getSerialNumber()

setSignatureAlgId

public void setSignatureAlgId(AlgorithmIdentifier signatureAlgId)

getSignatureAlgId

public AlgorithmIdentifier getSignatureAlgId()

setIssuer

public void setIssuer(Name issuer)

getIssuer

public Name getIssuer()

setNotBefore

public void setNotBefore(java.util.Date notBefore)

getNotBefore

public java.util.Date getNotBefore()

setNotAfter

public void setNotAfter(java.util.Date notAfter)

getNotAfter

public java.util.Date getNotAfter()

setSubject

public void setSubject(Name subject)

getSubject

public Name getSubject()

setSubjectPublicKeyInfo

public void setSubjectPublicKeyInfo(SubjectPublicKeyInfo subjectPublicKeyInfo)

setSubjectPublicKeyInfo

public void setSubjectPublicKeyInfo(java.security.PublicKey pubk)
                             throws InvalidBERException,
                                    java.io.IOException
Extracts the SubjectPublicKeyInfo from the given public key and stores it in the CertificateInfo.

Throws:
InvalidBERException - If an error occurs decoding the the information extracted from the public key.
java.io.IOException

getSubjectPublicKeyInfo

public SubjectPublicKeyInfo getSubjectPublicKeyInfo()

setIssuerUniqueIdentifier

public void setIssuerUniqueIdentifier(BIT_STRING issuerUniqueIdentifier)
                               throws java.security.cert.CertificateException
Throws:
java.security.cert.CertificateException - If the certificate is a v1 certificate.

hasIssuerUniqueIdentifier

public boolean hasIssuerUniqueIdentifier()

getIssuerUniqueIdentifier

public BIT_STRING getIssuerUniqueIdentifier()
Should only be called if this field is present.


setSubjectUniqueIdentifier

public void setSubjectUniqueIdentifier(BIT_STRING subjectUniqueIdentifier)
                                throws java.security.cert.CertificateException
Throws:
java.security.cert.CertificateException - If the certificate is a v1 certificate.

hasSubjectUniqueIdentifier

public boolean hasSubjectUniqueIdentifier()

getSubjectUniqueIdentifier

public BIT_STRING getSubjectUniqueIdentifier()

hasExtensions

public boolean hasExtensions()

getExtensions

public SEQUENCE getExtensions()
Returns the extensions of this certificate. The sequence may be empty, but this method will never return null.


isExtensionPresent

public boolean isExtensionPresent(OBJECT_IDENTIFIER oid)
Linearly searches the extension list for an extension with the given object identifier. If it finds one, returns true. Otherwise, returns false.


getExtension

public Extension getExtension(OBJECT_IDENTIFIER oid)
Linearly searches the extension list for an extension with the given object identifier. It returns the first one it finds. If none are found, returns null.


setExtensions

public void setExtensions(SEQUENCE extensions)
                   throws java.security.cert.CertificateException
Throws:
java.security.cert.CertificateException - If the certificate is not a v3 certificate.

addExtension

public void addExtension(Extension extension)
                  throws java.security.cert.CertificateException
Throws:
java.security.cert.CertificateException - If the certificate is not a v3 certificate.

getTag

public Tag getTag()
Description copied from interface: ASN1Value
Returns the base tag for this type, not counting any tags that may be imposed on it by its context.

Specified by:
getTag in interface ASN1Value

encode

public void encode(java.io.OutputStream ostream)
            throws java.io.IOException
Description copied from interface: ASN1Value
Write this value's DER encoding to an output stream using its own base tag.

Specified by:
encode in interface ASN1Value
Throws:
java.io.IOException

encode

public void encode(Tag implicitTag,
                   java.io.OutputStream ostream)
            throws java.io.IOException
Description copied from interface: ASN1Value
Write this value's DER encoding to an output stream using an implicit tag.

Specified by:
encode in interface ASN1Value
Throws:
java.io.IOException

getTemplate

public static CertificateInfo.Template getTemplate()

print

public void print(java.io.PrintStream ps)
           throws java.io.IOException,
                  InvalidBERException
Throws:
java.io.IOException
InvalidBERException