com.digt.trusted.asn1.x509
Class AuthorityKeyIdentifier

java.lang.Object
  extended by com.digt.trusted.asn1.ASN1Encodable
      extended by com.digt.trusted.asn1.x509.AuthorityKeyIdentifier
All Implemented Interfaces:
DEREncodable
Direct Known Subclasses:
AuthorityKeyIdentifierExtension

public class AuthorityKeyIdentifier
extends ASN1Encodable

The AuthorityKeyIdentifier object.

 id-ce-authorityKeyIdentifier OBJECT IDENTIFIER ::=  { id-ce 35 }

   AuthorityKeyIdentifier ::= SEQUENCE {
      keyIdentifier             [0] IMPLICIT KeyIdentifier           OPTIONAL,
      authorityCertIssuer       [1] IMPLICIT GeneralNames            OPTIONAL,
      authorityCertSerialNumber [2] IMPLICIT CertificateSerialNumber OPTIONAL  }

   KeyIdentifier ::= OCTET STRING
 


Constructor Summary
AuthorityKeyIdentifier(ASN1Sequence seq)
           
AuthorityKeyIdentifier(SubjectPublicKeyInfo spki)
          Calulates the keyidentifier using a SHA1 hash over the BIT STRING from SubjectPublicKeyInfo as defined in RFC2459.
AuthorityKeyIdentifier(SubjectPublicKeyInfo spki, GeneralNames name, java.math.BigInteger serialNumber)
          create an AuthorityKeyIdentifier with the GeneralNames tag and the serial number provided as well.
 
Method Summary
 GeneralNames getAuthorityCertIssuer()
           
 java.math.BigInteger getAuthorityCertSerialNumber()
           
static AuthorityKeyIdentifier getInstance(ASN1TaggedObject obj, boolean explicit)
           
static AuthorityKeyIdentifier getInstance(java.lang.Object obj)
           
 byte[] getKeyIdentifier()
           
 DERObject toASN1Object()
          Produce an object suitable for an ASN1OutputStream.
 java.lang.String toString()
           
 
Methods inherited from class com.digt.trusted.asn1.ASN1Encodable
equals, getDERObject, getEncoded, hashCode
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

AuthorityKeyIdentifier

public AuthorityKeyIdentifier(ASN1Sequence seq)

AuthorityKeyIdentifier

public AuthorityKeyIdentifier(SubjectPublicKeyInfo spki)
                       throws java.security.NoSuchAlgorithmException
Calulates the keyidentifier using a SHA1 hash over the BIT STRING from SubjectPublicKeyInfo as defined in RFC2459. Example of making a AuthorityKeyIdentifier:
   SubjectPublicKeyInfo apki = new SubjectPublicKeyInfo((ASN1Sequence)new DERInputStream(
       new ByteArrayInputStream(publicKey.getEncoded())).readObject());
   AuthorityKeyIdentifier aki = new AuthorityKeyIdentifier(apki);
 

Throws:
java.security.NoSuchAlgorithmException

AuthorityKeyIdentifier

public AuthorityKeyIdentifier(SubjectPublicKeyInfo spki,
                              GeneralNames name,
                              java.math.BigInteger serialNumber)
                       throws java.security.NoSuchAlgorithmException
create an AuthorityKeyIdentifier with the GeneralNames tag and the serial number provided as well.

Throws:
java.security.NoSuchAlgorithmException
Method Detail

getInstance

public static AuthorityKeyIdentifier getInstance(ASN1TaggedObject obj,
                                                 boolean explicit)

getInstance

public static AuthorityKeyIdentifier getInstance(java.lang.Object obj)

getKeyIdentifier

public byte[] getKeyIdentifier()

getAuthorityCertIssuer

public GeneralNames getAuthorityCertIssuer()

getAuthorityCertSerialNumber

public java.math.BigInteger getAuthorityCertSerialNumber()

toASN1Object

public DERObject toASN1Object()
Produce an object suitable for an ASN1OutputStream.

Specified by:
toASN1Object in class ASN1Encodable

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object