Top Description Methods
org.bouncycastle.crypto.paddings

public Interface BlockCipherPadding

Known Direct Implementers
org.bouncycastle.crypto.paddings.ISO10126d2Padding, org.bouncycastle.crypto.paddings.ISO7816d4Padding, org.bouncycastle.crypto.paddings.PKCS7Padding, org.bouncycastle.crypto.paddings.TBCPadding, org.bouncycastle.crypto.paddings.X923Padding, org.bouncycastle.crypto.paddings.ZeroBytePadding
Imports
java.security.SecureRandom, org.bouncycastle.crypto.InvalidCipherTextException

Block cipher padders are expected to conform to this interface

Method Summary

Modifier and TypeMethod and Description
public int
addPadding(byte[] in, int inOff)

add the pad bytes to the passed in block, returning the number of bytes added.

public String

Returns:

the name of the algorithm the cipher implements.
getPaddingName
()

Return the name of the algorithm the cipher implements.

public void
init(SecureRandom
the source of randomness for the padding, if required.
random
)

Initialise the padder.

public int
padCount(byte[] in)

return the number of pad bytes present in the block.

Method Detail

addPaddingback to summary
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. The reason for this is that some modes such as "trailing bit compliment" base the padding on the last byte of plain text.

getPaddingNameback to summary
public String getPaddingName()

Return the name of the algorithm the cipher implements.

Returns:String

the name of the algorithm the cipher implements.

initback to summary
public void init(SecureRandom random) throws IllegalArgumentException

Initialise the padder.

Parameters
random:SecureRandom

the source of randomness for the padding, if required.

padCountback to summary
public int padCount(byte[] in) throws InvalidCipherTextException

return the number of pad bytes present in the block.

Exceptions
InvalidCipherTextException:
if the padding is badly formed or invalid.