Class BEROctetString

All Implemented Interfaces:
ASN1Encodable, ASN1OctetStringParser, InMemoryRepresentable, Encodable

public class BEROctetString extends ASN1OctetString
ASN.1 OctetStrings, with indefinite length rules, and constructed form support.

The Basic Encoding Rules (BER) format allows encoding using so called "constructed form", which DER and CER formats forbid allowing only "primitive form".

This class always produces the constructed form with underlying segments in an indefinite length array. If the input wasn't the same, then this output is not faithful reproduction.

See ASN1OctetString for X.690 encoding rules of OCTET-STRING objects.

  • Constructor Details

    • BEROctetString

      public BEROctetString(byte[] string)
      Create an OCTET-STRING object from a byte[]
      Parameters:
      string - the octets making up the octet string.
    • BEROctetString

      public BEROctetString(ASN1OctetString[] elements)
      Multiple ASN1OctetString data blocks are input, the result is constructed form.
      Parameters:
      elements - an array of OCTET STRING to construct the BER OCTET STRING from.
    • BEROctetString

      public BEROctetString(byte[] string, int segmentLimit)
      Create an OCTET-STRING object from a byte[]
      Parameters:
      string - the octets making up the octet string.
      segmentLimit - the number of octets stored in each DER encoded component OCTET STRING.
    • BEROctetString

      public BEROctetString(ASN1OctetString[] elements, int segmentLimit)
      Multiple ASN1OctetString data blocks are input, the result is constructed form.
      Parameters:
      elements - an array of OCTET STRING to construct the BER OCTET STRING from.
      segmentLimit - the number of octets stored in each DER encoded component OCTET STRING.