org.gudy.bouncycastle.crypto.paddings
Class PKCS7Padding

java.lang.Object
  extended by org.gudy.bouncycastle.crypto.paddings.PKCS7Padding
All Implemented Interfaces:
BlockCipherPadding

public class PKCS7Padding
extends Object
implements BlockCipherPadding

A padder that adds PKCS7/PKCS5 padding to a block.


Constructor Summary
PKCS7Padding()
           
 
Method Summary
 int addPadding(byte[] in, int inOff)
          add the pad bytes to the passed in block, returning the number of bytes added.
 String getPaddingName()
          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.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PKCS7Padding

public PKCS7Padding()
Method Detail

init

public void init(SecureRandom random)
          throws IllegalArgumentException
Initialise the padder.

Specified by:
init in interface BlockCipherPadding
Parameters:
random - - a SecureRandom if available.
Throws:
IllegalArgumentException

getPaddingName

public 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.

Specified by:
addPadding in interface BlockCipherPadding

padCount

public int padCount(byte[] in)
             throws InvalidCipherTextException
return the number of pad bytes present in the block.

Specified by:
padCount in interface BlockCipherPadding
Throws:
InvalidCipherTextException - if the padding is badly formed or invalid.