org.bouncycastle.crypto.engines
Class CramerShoupCoreEngine
java.lang.Object
|
+--org.bouncycastle.crypto.engines.CramerShoupCoreEngine
- public class CramerShoupCoreEngine
- extends java.lang.Object
Essentially the Cramer-Shoup encryption / decryption algorithms according to
"A practical public key cryptosystem provably secure against adaptive chosen ciphertext attack." (Crypto 1998)
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
CramerShoupCoreEngine
public CramerShoupCoreEngine()
init
public void init(boolean forEncryption,
CipherParameters param,
java.lang.String label)
- initialise the CramerShoup engine.
- Parameters:
forEncryption
- whether this engine should encrypt or decryptparam
- the necessary CramerShoup key parameters.label
- the label for labelled CS as String
init
public void init(boolean forEncryption,
CipherParameters param)
- initialise the CramerShoup engine.
- Parameters:
forEncryption
- whether this engine should encrypt or decryptparam
- the necessary CramerShoup key parameters.
getInputBlockSize
public int getInputBlockSize()
- Return the maximum size for an input block to this engine. For Cramer
Shoup this is always one byte less than the key size on encryption, and
the same length as the key size on decryption.
TODO: correct?
- Returns:
- maximum size for an input block.
getOutputBlockSize
public int getOutputBlockSize()
- Return the maximum size for an output block to this engine. For Cramer
Shoup this is always one byte less than the key size on decryption, and
the same length as the key size on encryption.
TODO: correct?
- Returns:
- maximum size for an output block.
convertInput
public java.math.BigInteger convertInput(byte[] in,
int inOff,
int inLen)
convertOutput
public byte[] convertOutput(java.math.BigInteger result)
encryptBlock
public CramerShoupCiphertext encryptBlock(java.math.BigInteger input)
decryptBlock
public java.math.BigInteger decryptBlock(CramerShoupCiphertext input)
throws CramerShoupCoreEngine.CramerShoupCiphertextException
initSecureRandom
protected java.security.SecureRandom initSecureRandom(boolean needed,
java.security.SecureRandom provided)