org.bouncycastle.crypto.KeyEncapsulation Maven / Gradle / Ivy
package org.bouncycastle.crypto;
/**
* The basic interface for key encapsulation mechanisms.
*/
public interface KeyEncapsulation
{
/**
* Initialise the key encapsulation mechanism.
*/
public void init(CipherParameters param);
/**
* Encapsulate a randomly generated session key.
*/
public CipherParameters encrypt(byte[] out, int outOff, int keyLen);
/**
* Decapsulate an encapsulated session key.
*/
public CipherParameters decrypt(byte[] in, int inOff, int inLen, int keyLen);
}