AsymmetricBlockCipher
public class PKCS1Encoding extends java.lang.Object implements AsymmetricBlockCipher
Modifier and Type | Field | Description |
---|---|---|
static java.lang.String |
NOT_STRICT_LENGTH_ENABLED_PROPERTY |
some providers fail to include the leading zero in PKCS1 encoded blocks.
|
static java.lang.String |
STRICT_LENGTH_ENABLED_PROPERTY |
Deprecated.
use NOT_STRICT_LENGTH_ENABLED_PROPERTY
|
Constructor | Description |
---|---|
PKCS1Encoding(AsymmetricBlockCipher cipher) |
Basic constructor.
|
PKCS1Encoding(AsymmetricBlockCipher cipher,
byte[] fallback) |
Constructor for decryption with a fixed plaintext length and a fallback
value that is returned, if the padding is incorrect.
|
PKCS1Encoding(AsymmetricBlockCipher cipher,
int pLen) |
Constructor for decryption with a fixed plaintext length.
|
Modifier and Type | Method | Description |
---|---|---|
int |
getInputBlockSize() |
returns the largest size an input block can be.
|
int |
getOutputBlockSize() |
returns the maximum size of the block produced by this cipher.
|
AsymmetricBlockCipher |
getUnderlyingCipher() |
|
void |
init(boolean forEncryption,
CipherParameters param) |
initialise the cipher.
|
byte[] |
processBlock(byte[] in,
int inOff,
int inLen) |
process the block of len bytes stored in in from offset inOff.
|
public static final java.lang.String STRICT_LENGTH_ENABLED_PROPERTY
public static final java.lang.String NOT_STRICT_LENGTH_ENABLED_PROPERTY
The system property is checked during construction of the encoding object, it is set to false by default.
public PKCS1Encoding(AsymmetricBlockCipher cipher)
cipher
- public PKCS1Encoding(AsymmetricBlockCipher cipher, int pLen)
cipher
- The cipher to use for cryptographic operation.pLen
- Length of the expected plaintext.public PKCS1Encoding(AsymmetricBlockCipher cipher, byte[] fallback)
cipher
- The cipher to use for cryptographic operation.fallback
- The fallback value, we don't do an arraycopy here.public AsymmetricBlockCipher getUnderlyingCipher()
public void init(boolean forEncryption, CipherParameters param)
AsymmetricBlockCipher
init
in interface AsymmetricBlockCipher
forEncryption
- if true the cipher is initialised for
encryption, if false for decryption.param
- the key and other data required by the cipher.public int getInputBlockSize()
AsymmetricBlockCipher
getInputBlockSize
in interface AsymmetricBlockCipher
public int getOutputBlockSize()
AsymmetricBlockCipher
getOutputBlockSize
in interface AsymmetricBlockCipher
public byte[] processBlock(byte[] in, int inOff, int inLen) throws InvalidCipherTextException
AsymmetricBlockCipher
processBlock
in interface AsymmetricBlockCipher
in
- the input datainOff
- offset into the in array where the data startsinLen
- the length of the block to be processed.InvalidCipherTextException
- data decrypts improperly.