Package org.bouncycastle.crypto.paddings
Class TBCPadding
java.lang.Object
org.bouncycastle.crypto.paddings.TBCPadding
- All Implemented Interfaces:
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 -
Method Summary
Modifier and TypeMethodDescriptionint
addPadding
(byte[] in, int inOff) add the pad bytes to the passed in block, returning the number of bytes added.Return the name of the algorithm the padder implements.void
init
(SecureRandom random) Initialise the padder.int
padCount
(byte[] in) return the number of pad bytes present in the block.
-
Constructor Details
-
TBCPadding
public TBCPadding()
-
-
Method Details
-
init
Initialise the padder.- Specified by:
init
in interfaceBlockCipherPadding
- Parameters:
random
- - a SecureRandom if available.- Throws:
IllegalArgumentException
-
getPaddingName
Return the name of the algorithm the padder implements.- Specified by:
getPaddingName
in interfaceBlockCipherPadding
- 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 interfaceBlockCipherPadding
-
padCount
return the number of pad bytes present in the block.- Specified by:
padCount
in interfaceBlockCipherPadding
- Throws:
InvalidCipherTextException
- if the padding is badly formed or invalid.
-