Bouncy Castle Cryptography Library 1.77.0

org.bouncycastle.util.encoders
Class Base32Encoder

java.lang.Object
  |
  +--org.bouncycastle.util.encoders.Base32Encoder
All Implemented Interfaces:
Encoder

public class Base32Encoder
extends java.lang.Object
implements Encoder

A streaming Base32 encoder.


Constructor Summary
Base32Encoder()
          Base constructor for RFC 4648, Section 6.
Base32Encoder(byte[] encodingTable, byte padding)
          Constructor allowing the setting of an alternative alphabet.
 
Method Summary
 int decode(byte[] data, int off, int length, java.io.OutputStream out)
          decode the base 32 encoded byte data writing it to the given output stream, whitespace characters will be ignored.
 int decode(java.lang.String data, java.io.OutputStream out)
          decode the base 32 encoded String data writing it to the given output stream, whitespace characters will be ignored.
 int encode(byte[] inBuf, int inOff, int inLen, byte[] outBuf, int outOff)
           
 int encode(byte[] buf, int off, int len, java.io.OutputStream out)
          encode the input data producing a base 32 output stream.
 int getEncodedLength(int inputLength)
          Return the expected output length of the encoding.
 int getMaxDecodedLength(int inputLength)
          Return the maximum expected output length of a decoding.
protected  void initialiseDecodingTable()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Base32Encoder

public Base32Encoder()
Base constructor for RFC 4648, Section 6.

Base32Encoder

public Base32Encoder(byte[] encodingTable,
                     byte padding)
Constructor allowing the setting of an alternative alphabet.
Parameters:
encodingTable - a 32 entry encoding table to do the mapping.
padding - the padding value to use.
Method Detail

initialiseDecodingTable

protected void initialiseDecodingTable()

encode

public int encode(byte[] inBuf,
                  int inOff,
                  int inLen,
                  byte[] outBuf,
                  int outOff)
           throws java.io.IOException

getEncodedLength

public int getEncodedLength(int inputLength)
Description copied from interface: Encoder
Return the expected output length of the encoding.
Specified by:
getEncodedLength in interface Encoder
Following copied from interface: org.bouncycastle.util.encoders.Encoder
Parameters:
inputLength - the input length of the data.
Returns:
the output length of an encoding.

getMaxDecodedLength

public int getMaxDecodedLength(int inputLength)
Description copied from interface: Encoder
Return the maximum expected output length of a decoding. If padding is present the value returned will be greater than the decoded data length.
Specified by:
getMaxDecodedLength in interface Encoder
Following copied from interface: org.bouncycastle.util.encoders.Encoder
Parameters:
inputLength - the input length of the encoded data.
Returns:
the upper bound of the output length of a decoding.

encode

public int encode(byte[] buf,
                  int off,
                  int len,
                  java.io.OutputStream out)
           throws java.io.IOException
encode the input data producing a base 32 output stream.
Specified by:
encode in interface Encoder
Returns:
the number of bytes produced.

decode

public int decode(byte[] data,
                  int off,
                  int length,
                  java.io.OutputStream out)
           throws java.io.IOException
decode the base 32 encoded byte data writing it to the given output stream, whitespace characters will be ignored.
Specified by:
decode in interface Encoder
Returns:
the number of bytes produced.

decode

public int decode(java.lang.String data,
                  java.io.OutputStream out)
           throws java.io.IOException
decode the base 32 encoded String data writing it to the given output stream, whitespace characters will be ignored.
Specified by:
decode in interface Encoder
Returns:
the number of bytes produced.

Bouncy Castle Cryptography Library 1.77.0