Class TBCPadding

  • All Implemented Interfaces:
    BlockCipherPadding

    public class TBCPadding
    extends java.lang.Object
    implements BlockCipherPadding
    A padder that adds Trailing-Bit-Compliment padding to a block.

    This padding pads the block out with the compliment of the last bit of the plain text.

    • Constructor Summary

      Constructors 
      Constructor Description
      TBCPadding()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      int addPadding​(byte[] in, int inOff)
      add the pad bytes to the passed in block, returning the number of bytes added.
      java.lang.String getPaddingName()
      Return the name of the algorithm the padder implements.
      void init​(java.security.SecureRandom random)
      Initialise the padder.
      int padCount​(byte[] in)
      return the number of pad bytes present in the block.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • TBCPadding

        public TBCPadding()
    • Method Detail

      • init

        public void init​(java.security.SecureRandom random)
                  throws java.lang.IllegalArgumentException
        Initialise the padder.
        Specified by:
        init in interface BlockCipherPadding
        Parameters:
        random - - a SecureRandom if available.
        Throws:
        java.lang.IllegalArgumentException
      • getPaddingName

        public java.lang.String getPaddingName()
        Return the name of the algorithm the padder implements.
        Specified by:
        getPaddingName in interface BlockCipherPadding
        Returns:
        the name of the algorithm the padder implements.
      • addPadding

        public int addPadding​(byte[] in,
                              int inOff)
        add the pad bytes to the passed in block, returning the number of bytes added.

        Note: this assumes that the last block of plain text is always passed to it inside in. i.e. if inOff is zero, indicating the entire block is to be overwritten with padding the value of in should be the same as the last block of plain text.

        Specified by:
        addPadding in interface BlockCipherPadding