net.i2p.crypto
public class ElGamalEngine extends Object
Constructor and Description |
---|
ElGamalEngine(I2PAppContext context)
The ElGamal engine should only be constructed and accessed through the
application context.
|
public ElGamalEngine(I2PAppContext context)
public byte[] encrypt(byte[] data, PublicKey publicKey)
publicKey
- public key encrypt todata
- data to encrypt, must be 222 bytes or less
As the encrypted data may contain a substantial number of zeros if the
cleartext is smaller than 222 bytes, it is recommended that the caller pad
the cleartext to 222 bytes with random data.public byte[] decrypt(byte[] encrypted, PrivateKey privateKey)
encrypted
- encrypted data, must be exactly 514 bytes
Contains the two-part encrypted data starting at bytes 0 and 257.
If the encrypted parts are smaller than 257 bytes, they must be
padded with leading zeros.privateKey
- private key to decrypt withpublic static void main(String[] args)