InfoTypeAndValue (Bouncy Castle Library 1.85 API Specification)
Date: 2026-07-12

org.bouncycastle.asn1.cmp

## Class InfoTypeAndValue

- java.lang.Object
- - org.bouncycastle.asn1.ASN1Object
  - - org.bouncycastle.asn1.cmp.InfoTypeAndValue

- All Implemented Interfaces:
    ASN1Encodable, Encodable

      public class InfoTypeAndValue
      extends ASN1Object

  Example InfoTypeAndValue contents include, but are not limited to, the following (un-comment in this ASN.1 module and use as appropriate for a given environment):

         id-it-caProtEncCert    OBJECT IDENTIFIER ::= {id-it 1}
            CAProtEncCertValue      ::= CMPCertificate
         id-it-signKeyPairTypes OBJECT IDENTIFIER ::= {id-it 2}
           SignKeyPairTypesValue   ::= SEQUENCE OF AlgorithmIdentifier
         id-it-encKeyPairTypes  OBJECT IDENTIFIER ::= {id-it 3}
           EncKeyPairTypesValue    ::= SEQUENCE OF AlgorithmIdentifier
         id-it-preferredSymmAlg OBJECT IDENTIFIER ::= {id-it 4}
            PreferredSymmAlgValue   ::= AlgorithmIdentifier
         id-it-caKeyUpdateInfo  OBJECT IDENTIFIER ::= {id-it 5}
            CAKeyUpdateInfoValue    ::= CAKeyUpdAnnContent
         id-it-currentCRL       OBJECT IDENTIFIER ::= {id-it 6}
            CurrentCRLValue         ::= CertificateList
         id-it-unsupportedOIDs  OBJECT IDENTIFIER ::= {id-it 7}
            UnsupportedOIDsValue    ::= SEQUENCE OF OBJECT IDENTIFIER
         id-it-keyPairParamReq  OBJECT IDENTIFIER ::= {id-it 10}
            KeyPairParamReqValue    ::= OBJECT IDENTIFIER
         id-it-keyPairParamRep  OBJECT IDENTIFIER ::= {id-it 11}
            KeyPairParamRepValue    ::= AlgorithmIdentifer
         id-it-revPassphrase    OBJECT IDENTIFIER ::= {id-it 12}
            RevPassphraseValue      ::= EncryptedValue
         id-it-implicitConfirm  OBJECT IDENTIFIER ::= {id-it 13}
            ImplicitConfirmValue    ::= NULL
         id-it-confirmWaitTime  OBJECT IDENTIFIER ::= {id-it 14}
            ConfirmWaitTimeValue    ::= GeneralizedTime
         id-it-origPKIMessage   OBJECT IDENTIFIER ::= {id-it 15}
            OrigPKIMessageValue     ::= PKIMessages
         id-it-suppLangTags     OBJECT IDENTIFIER ::= {id-it 16}
            SuppLangTagsValue       ::= SEQUENCE OF UTF8String

       where

         id-pkix OBJECT IDENTIFIER ::= {
            iso(1) identified-organization(3)
            dod(6) internet(1) security(5) mechanisms(5) pkix(7)}
       and
            id-it   OBJECT IDENTIFIER ::= {id-pkix 4}

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `InfoTypeAndValue(ASN1ObjectIdentifier infoType)`
    `InfoTypeAndValue(ASN1ObjectIdentifier infoType, ASN1Encodable infoValue)`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `ASN1ObjectIdentifier` | `getInfoType()`
    `ASN1Encodable` | `getInfoValue()`
    `static InfoTypeAndValue` | `getInstance(java.lang.Object o)`
    `ASN1Primitive` | `toASN1Primitive()` InfoTypeAndValue ::= SEQUENCE { infoType OBJECT IDENTIFIER, infoValue ANY DEFINED BY infoType OPTIONAL }

    - ### 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`

- - ### Constructor Detail

    - #### InfoTypeAndValue

          public InfoTypeAndValue(ASN1ObjectIdentifier infoType)

    - #### InfoTypeAndValue

          public InfoTypeAndValue(ASN1ObjectIdentifier infoType,
                                  ASN1Encodable infoValue)

  - ### Method Detail

    - #### getInstance

          public static InfoTypeAndValue getInstance(java.lang.Object o)

    - #### getInfoType

          public ASN1ObjectIdentifier getInfoType()

    - #### getInfoValue

          public ASN1Encodable getInfoValue()

    - #### toASN1Primitive

          public ASN1Primitive toASN1Primitive()

           InfoTypeAndValue ::= SEQUENCE {
                                   infoType               OBJECT IDENTIFIER,
                                   infoValue              ANY DEFINED BY infoType  OPTIONAL
           }

      Specified by:
        `toASN1Primitive` in interface `ASN1Encodable`
      Specified by:
        `toASN1Primitive` in class `ASN1Object`
      Returns:
        a basic ASN.1 object representation.