org.bouncycastle.crypto.paddings
Class ISO7816d4Padding

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

public class ISO7816d4Padding
extends java.lang.Object
implements BlockCipherPadding

A padder that adds the padding according to the scheme referenced in ISO 7814-4 - scheme 2 from ISO 9797-1. The first byte is 0x80, rest is 0x00


Constructor Summary
ISO7816d4Padding()
           
 
Method Summary
 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

ISO7816d4Padding

public ISO7816d4Padding()
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.

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.