Bouncy Castle Cryptography Library 1.87

org.bouncycastle.asn1.x509
Class MTCCertificationAuthority

java.lang.Object
  extended byorg.bouncycastle.asn1.ASN1Object
      extended byorg.bouncycastle.asn1.x509.MTCCertificationAuthority
All Implemented Interfaces:
ASN1Encodable, Encodable

public class MTCCertificationAuthority
extends ASN1Object

ASN.1 structure for the extension defined in Section 5.5 of draft-ietf-plants-merkle-tree-certs: -- This is 2^48, the minimum possible serial number in this protocol. mtcMinSerial INTEGER ::= 281474976710656 -- This is 2^64-1, the maximum possible serial number in this protocol. mtcMaxSerial INTEGER ::= 18446744073709551615 MTCCertificationAuthority ::= SEQUENCE { sigAlg AlgorithmIdentifier{SIGNATURE-ALGORITHM, {[]}}, minSerial INTEGER (mtcMinSerial..mtcMaxSerial), maxSerial INTEGER (mtcMinSerial..mtcMaxSerial) }

is the CA cosigner's signature algorithm. and are the inclusive bounds of the cert serial range this CA is authorized for; per Section 6.2 of the draft a serial encodes the log number in its upper 16 bits and the entry index in the lower 48 bits (a 64-bit value), so the range can constrain either. The hash function used by the CA's issuance logs is not a field of the structure: it is identified by the extension type, for SHA-256 (draft-06 moved it out of the structure and into the OID).


Field Summary
static java.math.BigInteger MAX_SERIAL
           - the largest legal serial, 2^64 - 1 (a serial is the 64-bit composition of a 16-bit log number and a 48-bit entry index).
static java.math.BigInteger MIN_SERIAL
           - the smallest legal serial, 2^48, which is entry 0 of log 1 (log number 0 is not used).
 
Constructor Summary
MTCCertificationAuthority(AlgorithmIdentifier sigAlg, java.math.BigInteger minSerial, java.math.BigInteger maxSerial)
           
MTCCertificationAuthority(ASN1ObjectIdentifier sigAlgOid, java.math.BigInteger minSerial, java.math.BigInteger maxSerial)
          Convenience constructor that wraps the algorithm OID in a parameterless AlgorithmIdentifier.
 
Method Summary
static MTCCertificationAuthority getInstance(java.lang.Object obj)
           
 java.math.BigInteger getMaxSerial()
           
 java.math.BigInteger getMinSerial()
           
 AlgorithmIdentifier getSigAlg()
           
 ASN1Primitive toASN1Primitive()
          Method providing a primitive representation of this object suitable for encoding.
 
Methods inherited from class org.bouncycastle.asn1.ASN1Object
encodeTo, encodeTo, equals, getEncoded, getEncoded, hasEncodedTagValue, hashCode
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MIN_SERIAL

public static final java.math.BigInteger MIN_SERIAL
- the smallest legal serial, 2^48, which is entry 0 of log 1 (log number 0 is not used).


MAX_SERIAL

public static final java.math.BigInteger MAX_SERIAL
- the largest legal serial, 2^64 - 1 (a serial is the 64-bit composition of a 16-bit log number and a 48-bit entry index).

Constructor Detail

MTCCertificationAuthority

public MTCCertificationAuthority(ASN1ObjectIdentifier sigAlgOid,
                                 java.math.BigInteger minSerial,
                                 java.math.BigInteger maxSerial)
Convenience constructor that wraps the algorithm OID in a parameterless AlgorithmIdentifier. Equivalent to MTCCertificationAuthority(AlgorithmIdentifier, BigInteger, BigInteger) with .


MTCCertificationAuthority

public MTCCertificationAuthority(AlgorithmIdentifier sigAlg,
                                 java.math.BigInteger minSerial,
                                 java.math.BigInteger maxSerial)
Method Detail

getInstance

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

getSigAlg

public AlgorithmIdentifier getSigAlg()

getMinSerial

public java.math.BigInteger getMinSerial()

getMaxSerial

public java.math.BigInteger getMaxSerial()

toASN1Primitive

public ASN1Primitive toASN1Primitive()
Description copied from class: ASN1Object
Method providing a primitive representation of this object suitable for encoding.

Specified by:
toASN1Primitive in interface ASN1Encodable
Specified by:
toASN1Primitive in class ASN1Object
Returns:
a primitive representation of this object.

Bouncy Castle Cryptography Library 1.87