Class AuthorityKeyIdentifierExtension

java.lang.Object
org.mozilla.jss.netscape.security.x509.Extension
org.mozilla.jss.netscape.security.x509.AuthorityKeyIdentifierExtension
All Implemented Interfaces:
Serializable, CertAttrSet

public class AuthorityKeyIdentifierExtension extends Extension implements CertAttrSet
This class represents the Authority Key Identifier Extension.

The authority key identifier extension provides a means of identifying the particular public key used to sign a certificate. This extension would be used where an issuer has multiple signing keys (either due to multiple concurrent key pairs or due to changeover).

The ASN.1 syntax for this is:

 AuthorityKeyIdentifier ::= SEQUENCE {
    keyIdentifier             [0] KeyIdentifier           OPTIONAL,
    authorityCertIssuer       [1] GeneralNames            OPTIONAL,
    authorityCertSerialNumber [2] CertificateSerialNumber OPTIONAL
 }
 KeyIdentifier ::= OCTET STRING
 
Version:
1.9
See Also:
  • Field Details

  • Constructor Details

    • AuthorityKeyIdentifierExtension

      public AuthorityKeyIdentifierExtension(boolean critical, KeyIdentifier kid, GeneralNames name, SerialNumber sn) throws IOException
      Exposed critical parameter. 99/11/03
      Throws:
      IOException
    • AuthorityKeyIdentifierExtension

      public AuthorityKeyIdentifierExtension(KeyIdentifier kid, GeneralNames name, SerialNumber sn) throws IOException
      The default constructor for this extension. Null parameters make the element optional (not present).
      Parameters:
      kid - the KeyIdentifier associated with this extension.
      name - the GeneralNames associated with this extension
      sn - the CertificateSerialNumber associated with this extension.
      Throws:
      IOException - on error.
    • AuthorityKeyIdentifierExtension

      public AuthorityKeyIdentifierExtension(Boolean critical, Object value) throws IOException
      Create the extension from the passed DER encoded value of the same.
      Parameters:
      critical - true if the extension is to be treated as critical.
      value - Array of DER encoded bytes of the actual value.
      Throws:
      IOException - on error.
  • Method Details

    • encodeThis

      private void encodeThis() throws IOException
      Throws:
      IOException
    • toString

      public String toString()
      Return the object as a string.
      Specified by:
      toString in interface CertAttrSet
      Overrides:
      toString in class Extension
      Returns:
      value of this certificate attribute in printable form.
    • decode

      public void decode(InputStream in) throws IOException
      Decode the extension from the InputStream.
      Specified by:
      decode in interface CertAttrSet
      Parameters:
      in - the InputStream to unmarshal the contents from.
      Throws:
      IOException - on decoding or validity errors.
    • encode

      public void encode(OutputStream out) throws IOException
      Write the extension to the OutputStream.
      Specified by:
      encode in interface CertAttrSet
      Parameters:
      out - the OutputStream to write the extension to.
      Throws:
      IOException - on error.
    • set

      public void set(String name, Object obj) throws IOException
      Set the attribute value.
      Specified by:
      set in interface CertAttrSet
      Parameters:
      name - the name of the attribute (e.g. "x509.info.key")
      obj - the attribute object.
      Throws:
      IOException - on other errors.
    • get

      public Object get(String name) throws IOException
      Get the attribute value.
      Specified by:
      get in interface CertAttrSet
      Parameters:
      name - the name of the attribute to return.
      Returns:
      attribute value
      Throws:
      IOException - on other errors.
    • delete

      public void delete(String name) throws IOException
      Delete the attribute value.
      Specified by:
      delete in interface CertAttrSet
      Parameters:
      name - the name of the attribute to delete.
      Throws:
      IOException - on other errors.
    • getAttributeNames

      public Enumeration<String> getAttributeNames()
      Return an enumeration of names of attributes existing within this attribute.
      Specified by:
      getAttributeNames in interface CertAttrSet
      Returns:
      an enumeration of the attribute names.
    • getName

      public String getName()
      Return the name of this attribute.
      Specified by:
      getName in interface CertAttrSet
      Returns:
      the name of this CertAttrSet.