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

org.bouncycastle.asn1

## Interface ASN1BitStringParser

- All Superinterfaces:
    ASN1Encodable, InMemoryRepresentable
  All Known Implementing Classes:
    ASN1BitString, BERBitString, BERBitStringParser, DERBitString, DLBitString, DLBitStringParser, NetscapeCertType, PKIFailureInfo, ReasonFlags

      public interface ASN1BitStringParser
      extends ASN1Encodable, InMemoryRepresentable

  A basic parser for a BIT STRING object

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.io.InputStream` | `getBitStream()` Return an InputStream representing the contents of the BIT STRING.
    `java.io.InputStream` | `getOctetStream()` Return an InputStream representing the contents of the BIT STRING, where the content is expected to be octet-aligned (this will be automatically checked during parsing).
    `int` | `getPadBits()` Return the number of pad bits, if any, in the final byte, if any, read from `getBitStream()`.

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

      `toASN1Primitive`

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

      `getLoadedObject`

- - ### Method Detail

    - #### getBitStream

          java.io.InputStream getBitStream()
                                    throws java.io.IOException

      Return an InputStream representing the contents of the BIT STRING. The final byte, if any, may include pad bits. See `getPadBits()`.
      Returns:
        an InputStream with its source as the BIT STRING content.
      Throws:
        `java.io.IOException`

    - #### getOctetStream

          java.io.InputStream getOctetStream()
                                      throws java.io.IOException

      Return an InputStream representing the contents of the BIT STRING, where the content is expected to be octet-aligned (this will be automatically checked during parsing).
      Returns:
        an InputStream with its source as the BIT STRING content.
      Throws:
        `java.io.IOException`

    - #### getPadBits

          int getPadBits()

      Return the number of pad bits, if any, in the final byte, if any, read from `getBitStream()`. This number is in the range zero to seven. That number of the least significant bits of the final byte, if any, are not part of the contents and should be ignored. NOTE: Must be called AFTER the stream has been fully processed. (Does not need to be called if `getOctetStream()` was used instead of `getBitStream()`).
      Returns:
        the number of pad bits. In the range zero to seven.