Bouncy Castle Cryptography Library 1.45

## org.bouncycastle.asn1
Class DERBitString

    java.lang.Object
      org.bouncycastle.asn1.ASN1Encodable
          org.bouncycastle.asn1.DERObject
              org.bouncycastle.asn1.ASN1Object
                  org.bouncycastle.asn1.DERBitString

All Implemented Interfaces:
  DEREncodable, DERString, DERTags

Direct Known Subclasses:
  KeyUsage, NetscapeCertType, PKIFailureInfo, ReasonFlags

    public class DERBitString

extends ASN1Object
implements DERString

Field Summary
`protected byte[]` `data`
`protected int` `padBits`

Fields inherited from class org.bouncycastle.asn1.ASN1Encodable
`BER, DER`

Fields inherited from interface org.bouncycastle.asn1.DERTags
`APPLICATION, BIT_STRING, BMP_STRING, BOOLEAN, CONSTRUCTED, ENUMERATED, EXTERNAL, GENERAL_STRING, GENERALIZED_TIME, GRAPHIC_STRING, IA5_STRING, INTEGER, NULL, NUMERIC_STRING, OBJECT_IDENTIFIER, OCTET_STRING, PRINTABLE_STRING, SEQUENCE, SEQUENCE_OF, SET, SET_OF, T61_STRING, TAGGED, UNIVERSAL_STRING, UTC_TIME, UTF8_STRING, VIDEOTEX_STRING, VISIBLE_STRING`

Constructor Summary
`` `DERBitString(byte[] data)`
`` `DERBitString(byte[] data, int padBits)`
`protected` `DERBitString(byte data, int padBits)`
`` `DERBitString(DEREncodable obj)`

Method Summary
`protected boolean` `asn1Equals(DERObject o)`
`byte[]` `getBytes()`
`protected static byte[]` `getBytes(int bitString)` return the correct number of bytes for a bit string defined in a 32 bit constant
`static DERBitString` `getInstance(ASN1TaggedObject obj, boolean explicit)` return a Bit String from a tagged object.
`static DERBitString` `getInstance(java.lang.Object obj)` return a Bit String from the passed in object
`int` `getPadBits()`
`protected static int` `getPadBits(int bitString)` return the correct number of pad bits for a bit string defined in a 32 bit constant
`java.lang.String` `getString()`
`int` `hashCode()`
`int` `intValue()`
`java.lang.String` `toString()`

Methods inherited from class org.bouncycastle.asn1.ASN1Object
`equals, fromByteArray`

Methods inherited from class org.bouncycastle.asn1.DERObject
`toASN1Object`

Methods inherited from class org.bouncycastle.asn1.ASN1Encodable
`getDEREncoded, getDERObject, getEncoded, getEncoded`

Methods inherited from class java.lang.Object
`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

Field Detail

### data

    protected byte[] data

### padBits

    protected int padBits

Constructor Detail

### DERBitString

    protected DERBitString(byte data,
                           int padBits)

### DERBitString

    public DERBitString(byte[] data,
                        int padBits)

Parameters:
  `data` - the octets making up the bit string.
  `padBits` - the number of extra bits at the end of the string.

### DERBitString

    public DERBitString(byte[] data)

### DERBitString

    public DERBitString(DEREncodable obj)

Method Detail

### getPadBits

    protected static int getPadBits(int bitString)

  return the correct number of pad bits for a bit string defined in a 32 bit constant

### getBytes

    protected static byte[] getBytes(int bitString)

  return the correct number of bytes for a bit string defined in a 32 bit constant

### getInstance

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

  return a Bit String from the passed in object

  Throws:
    `java.lang.IllegalArgumentException` - if the object cannot be converted.

### getInstance

    public static DERBitString getInstance(ASN1TaggedObject obj,
                                           boolean explicit)

  return a Bit String from a tagged object.

  Parameters:
    `obj` - the tagged object holding the object we want
    `explicit` - true if the object is meant to be explicitly tagged false otherwise.
  Throws:
    `java.lang.IllegalArgumentException` - if the tagged object cannot be converted.

### getBytes

    public byte[] getBytes()

### getPadBits

    public int getPadBits()

### intValue

    public int intValue()

  Returns:
    the value of the bit string as an int (truncating if necessary)

### hashCode

    public int hashCode()

  Specified by:
    `hashCode` in class `ASN1Object`

### asn1Equals

    protected boolean asn1Equals(DERObject o)

### getString

    public java.lang.String getString()

  Specified by:
    `getString` in interface `DERString`

### toString

    public java.lang.String toString()

  Overrides:
    `toString` in class `java.lang.Object`

Bouncy Castle Cryptography Library 1.45