public class MTCCertificationAuthority extends ASN1Object
id-pe-mtcCertificationAuthority-SHA256
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)
}
sigAlg is the CA cosigner's signature algorithm. minSerial
and maxSerial 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, id-pe-mtcCertificationAuthority-SHA256 for
SHA-256 (draft-06 moved it out of the structure and into the OID).
| Modifier and Type | Field and Description |
|---|---|
static java.math.BigInteger |
MAX_SERIAL
mtcMaxSerial - 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
mtcMinSerial - the smallest legal serial, 2^48, which is entry 0 of
log 1 (log number 0 is not used). |
| Constructor and Description |
|---|
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. |
| Modifier and Type | Method and Description |
|---|---|
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.
|
encodeTo, encodeTo, equals, getEncoded, getEncoded, hasEncodedTagValue, hashCodepublic static final java.math.BigInteger MIN_SERIAL
mtcMinSerial - the smallest legal serial, 2^48, which is entry 0 of
log 1 (log number 0 is not used).public static final java.math.BigInteger MAX_SERIAL
mtcMaxSerial - 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).public MTCCertificationAuthority(ASN1ObjectIdentifier sigAlgOid, java.math.BigInteger minSerial, java.math.BigInteger maxSerial)
AlgorithmIdentifier. Equivalent to
MTCCertificationAuthority(AlgorithmIdentifier, BigInteger, BigInteger)
with new AlgorithmIdentifier(sigAlgOid).public MTCCertificationAuthority(AlgorithmIdentifier sigAlg, java.math.BigInteger minSerial, java.math.BigInteger maxSerial)
public static MTCCertificationAuthority getInstance(java.lang.Object obj)
public AlgorithmIdentifier getSigAlg()
public java.math.BigInteger getMinSerial()
public java.math.BigInteger getMaxSerial()
public ASN1Primitive toASN1Primitive()
ASN1ObjecttoASN1Primitive in interface ASN1EncodabletoASN1Primitive in class ASN1Object