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

org.bouncycastle.asn1.cmp

## Class PKIFailureInfo

- java.lang.Object
- - org.bouncycastle.asn1.ASN1Object
  - - org.bouncycastle.asn1.ASN1Primitive
    - - org.bouncycastle.asn1.ASN1BitString
      - - org.bouncycastle.asn1.DERBitString
        - - org.bouncycastle.asn1.cmp.PKIFailureInfo

- All Implemented Interfaces:
    ASN1BitStringParser, ASN1Encodable, ASN1String, InMemoryRepresentable, Encodable

      public class PKIFailureInfo
      extends DERBitString

       PKIFailureInfo ::= BIT STRING {
       badAlg               (0),
         -- unrecognized or unsupported Algorithm Identifier
       badMessageCheck      (1), -- integrity check failed (e.g., signature did not verify)
       badRequest           (2),
         -- transaction not permitted or supported
       badTime              (3), -- messageTime was not sufficiently close to the system time, as defined by local policy
       badCertId            (4), -- no certificate could be found matching the provided criteria
       badDataFormat        (5),
         -- the data submitted has the wrong format
       wrongAuthority       (6), -- the authority indicated in the request is different from the one creating the response token
       incorrectData        (7), -- the requester's data is incorrect (for notary services)
       missingTimeStamp     (8), -- when the timestamp is missing but should be there (by policy)
       badPOP               (9)  -- the proof-of-possession failed
       certRevoked         (10),
       certConfirmed       (11),
       wrongIntegrity      (12),
       badRecipientNonce   (13),
       timeNotAvailable    (14),
         -- the TSA's time source is not available
       unacceptedPolicy    (15),
         -- the requested TSA policy is not supported by the TSA
       unacceptedExtension (16),
         -- the requested extension is not supported by the TSA
       addInfoNotAvailable (17)
         -- the additional information requested could not be understood
         -- or is not available
       badSenderNonce      (18),
       badCertTemplate     (19),
       signerNotTrusted    (20),
       transactionIdInUse  (21),
       unsupportedVersion  (22),
       notAuthorized       (23),
       systemUnavail       (24),
       systemFailure       (25),
         -- the request cannot be handled due to system failure
       duplicateCertReq    (26)

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static int` | `ADD_INFO_NOT_AVAILABLE` Deprecated. use lower case version
    `static int` | `addInfoNotAvailable`
    `static int` | `BAD_ALG` Deprecated. use lower case version
    `static int` | `BAD_CERT_ID` Deprecated. use lower case version
    `static int` | `BAD_DATA_FORMAT` Deprecated. use lower case version
    `static int` | `BAD_MESSAGE_CHECK` Deprecated. use lower case version
    `static int` | `BAD_POP` Deprecated. use lower case version
    `static int` | `BAD_REQUEST` Deprecated. use lower case version
    `static int` | `BAD_TIME` Deprecated. use lower case version
    `static int` | `badAlg`
    `static int` | `badCertId`
    `static int` | `badCertTemplate`
    `static int` | `badDataFormat`
    `static int` | `badMessageCheck`
    `static int` | `badPOP`
    `static int` | `badRecipientNonce`
    `static int` | `badRequest`
    `static int` | `badSenderNonce`
    `static int` | `badTime`
    `static int` | `certConfirmed`
    `static int` | `certRevoked`
    `static int` | `duplicateCertReq`
    `static int` | `INCORRECT_DATA` Deprecated. use lower case version
    `static int` | `incorrectData`
    `static int` | `MISSING_TIME_STAMP` Deprecated. use lower case version
    `static int` | `missingTimeStamp`
    `static int` | `notAuthorized`
    `static int` | `signerNotTrusted`
    `static int` | `SYSTEM_FAILURE` Deprecated. use lower case version
    `static int` | `systemFailure`
    `static int` | `systemUnavail`
    `static int` | `TIME_NOT_AVAILABLE` Deprecated. use lower case version
    `static int` | `timeNotAvailable`
    `static int` | `transactionIdInUse`
    `static int` | `UNACCEPTED_EXTENSION` Deprecated. use lower case version
    `static int` | `UNACCEPTED_POLICY` Deprecated. use lower case version
    `static int` | `unacceptedExtension`
    `static int` | `unacceptedPolicy`
    `static int` | `unsupportedVersion`
    `static int` | `WRONG_AUTHORITY` Deprecated. use lower case version
    `static int` | `wrongAuthority`
    `static int` | `wrongIntegrity`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `PKIFailureInfo(ASN1BitString info)`
    `PKIFailureInfo(int info)` Basic constructor.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.String` | `toString()`

    - ### Methods inherited from class org.bouncycastle.asn1.DERBitString

      `convert`

    - ### Methods inherited from class org.bouncycastle.asn1.ASN1BitString

      `getBitStream, getBytes, getBytes, getBytesLength, getInstance, getInstance, getLoadedObject, getOctets, getOctetStream, getPadBits, getPadBits, getString, getTagged, hashCode, intValue, isOctetAligned, parser`

    - ### Methods inherited from class org.bouncycastle.asn1.ASN1Primitive

      `encodeTo, encodeTo, equals, equals, equals, fromByteArray, fromStream, toASN1Primitive`

    - ### Methods inherited from class org.bouncycastle.asn1.ASN1Object

      `getEncoded, getEncoded, hasEncodedTagValue`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface org.bouncycastle.asn1.ASN1Encodable

      `toASN1Primitive`

- - ### Field Detail

    - #### badAlg

          public static final int badAlg

      See Also:
        Constant Field Values

    - #### badMessageCheck

          public static final int badMessageCheck

      See Also:
        Constant Field Values

    - #### badRequest

          public static final int badRequest

      See Also:
        Constant Field Values

    - #### badTime

          public static final int badTime

      See Also:
        Constant Field Values

    - #### badCertId

          public static final int badCertId

      See Also:
        Constant Field Values

    - #### badDataFormat

          public static final int badDataFormat

      See Also:
        Constant Field Values

    - #### wrongAuthority

          public static final int wrongAuthority

      See Also:
        Constant Field Values

    - #### incorrectData

          public static final int incorrectData

      See Also:
        Constant Field Values

    - #### missingTimeStamp

          public static final int missingTimeStamp

      See Also:
        Constant Field Values

    - #### badPOP

          public static final int badPOP

      See Also:
        Constant Field Values

    - #### certRevoked

          public static final int certRevoked

      See Also:
        Constant Field Values

    - #### certConfirmed

          public static final int certConfirmed

      See Also:
        Constant Field Values

    - #### wrongIntegrity

          public static final int wrongIntegrity

      See Also:
        Constant Field Values

    - #### badRecipientNonce

          public static final int badRecipientNonce

      See Also:
        Constant Field Values

    - #### timeNotAvailable

          public static final int timeNotAvailable

      See Also:
        Constant Field Values

    - #### unacceptedPolicy

          public static final int unacceptedPolicy

      See Also:
        Constant Field Values

    - #### unacceptedExtension

          public static final int unacceptedExtension

      See Also:
        Constant Field Values

    - #### addInfoNotAvailable

          public static final int addInfoNotAvailable

      See Also:
        Constant Field Values

    - #### badSenderNonce

          public static final int badSenderNonce

      See Also:
        Constant Field Values

    - #### badCertTemplate

          public static final int badCertTemplate

      See Also:
        Constant Field Values

    - #### signerNotTrusted

          public static final int signerNotTrusted

      See Also:
        Constant Field Values

    - #### transactionIdInUse

          public static final int transactionIdInUse

      See Also:
        Constant Field Values

    - #### unsupportedVersion

          public static final int unsupportedVersion

      See Also:
        Constant Field Values

    - #### notAuthorized

          public static final int notAuthorized

      See Also:
        Constant Field Values

    - #### systemUnavail

          public static final int systemUnavail

      See Also:
        Constant Field Values

    - #### systemFailure

          public static final int systemFailure

      See Also:
        Constant Field Values

    - #### duplicateCertReq

          public static final int duplicateCertReq

      See Also:
        Constant Field Values

    - #### BAD_ALG

          public static final int BAD_ALG

      Deprecated. use lower case version
      See Also:
        Constant Field Values

    - #### BAD_MESSAGE_CHECK

          public static final int BAD_MESSAGE_CHECK

      Deprecated. use lower case version
      See Also:
        Constant Field Values

    - #### BAD_REQUEST

          public static final int BAD_REQUEST

      Deprecated. use lower case version
      See Also:
        Constant Field Values

    - #### BAD_TIME

          public static final int BAD_TIME

      Deprecated. use lower case version
      See Also:
        Constant Field Values

    - #### BAD_CERT_ID

          public static final int BAD_CERT_ID

      Deprecated. use lower case version
      See Also:
        Constant Field Values

    - #### BAD_DATA_FORMAT

          public static final int BAD_DATA_FORMAT

      Deprecated. use lower case version
      See Also:
        Constant Field Values

    - #### WRONG_AUTHORITY

          public static final int WRONG_AUTHORITY

      Deprecated. use lower case version
      See Also:
        Constant Field Values

    - #### INCORRECT_DATA

          public static final int INCORRECT_DATA

      Deprecated. use lower case version
      See Also:
        Constant Field Values

    - #### MISSING_TIME_STAMP

          public static final int MISSING_TIME_STAMP

      Deprecated. use lower case version
      See Also:
        Constant Field Values

    - #### BAD_POP

          public static final int BAD_POP

      Deprecated. use lower case version
      See Also:
        Constant Field Values

    - #### TIME_NOT_AVAILABLE

          public static final int TIME_NOT_AVAILABLE

      Deprecated. use lower case version
      See Also:
        Constant Field Values

    - #### UNACCEPTED_POLICY

          public static final int UNACCEPTED_POLICY

      Deprecated. use lower case version
      See Also:
        Constant Field Values

    - #### UNACCEPTED_EXTENSION

          public static final int UNACCEPTED_EXTENSION

      Deprecated. use lower case version
      See Also:
        Constant Field Values

    - #### ADD_INFO_NOT_AVAILABLE

          public static final int ADD_INFO_NOT_AVAILABLE

      Deprecated. use lower case version
      See Also:
        Constant Field Values

    - #### SYSTEM_FAILURE

          public static final int SYSTEM_FAILURE

      Deprecated. use lower case version
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### PKIFailureInfo

          public PKIFailureInfo(int info)

      Basic constructor.

    - #### PKIFailureInfo

          public PKIFailureInfo(ASN1BitString info)

  - ### Method Detail

    - #### toString

          public java.lang.String toString()

      Overrides:
        `toString` in class `ASN1BitString`