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 TypeMethodDescriptionintaddPadding(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.voidinit(SecureRandom random) Initialise the padder.intpadCount(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:
initin interfaceBlockCipherPadding- Parameters:
random- - a SecureRandom if available.- Throws:
IllegalArgumentException
-
getPaddingName
Return the name of the algorithm the padder implements.- Specified by:
getPaddingNamein 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:
addPaddingin interfaceBlockCipherPadding
-
padCount
return the number of pad bytes present in the block.- Specified by:
padCountin interfaceBlockCipherPadding- Throws:
InvalidCipherTextException- if the padding is badly formed or invalid.
-