Class ParityBit


  • public final class ParityBit
    extends Object
    The ParityBit class is a utility to assist with DES key parity bit generation.
    Since:
    2.2.2
    • Constructor Summary

      Constructors 
      Constructor Description
      ParityBit()
      Intended to be package visible.
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static void set​(byte[] bArray, short bOff, short bLen, boolean isEven)
      Inserts the computed parity bit of the specified type as the last bit(LSB) in each of the bytes of the specified byte array.
    • Constructor Detail

      • ParityBit

        public ParityBit()
        Intended to be package visible. Retain for compatibility
    • Method Detail

      • set

        public static void set​(byte[] bArray,
                               short bOff,
                               short bLen,
                               boolean isEven)
        Inserts the computed parity bit of the specified type as the last bit(LSB) in each of the bytes of the specified byte array. The parity is computed over the first(MS) 7 bits of each byte. The incoming last bit of each byte is ignored.

        Note:

        • If bOff or bLen is negative an ArrayIndexOutOfBoundsException exception is thrown.
        • If bLen parameter is equal to 0 no parity bits are inserted.
        • If bOff+bLen is greater than bArray.length, the length of the bArray array a ArrayIndexOutOfBoundsException exception is thrown and no parity bits are inserted.
        • If bArray parameter is null a NullPointerException exception is thrown.

        Parameters:
        bArray - input/output byte array
        bOff - offset within byte array to start setting parity on
        bLen - byte length of input/output bytes
        isEven - true if even parity is required and false if odd parity is required
        Throws:
        NullPointerException - if bArray is null
        ArrayIndexOutOfBoundsException - if accessing the input array would cause access of data outside array bounds or if bLen is negative