#if !BESTHTTP_DISABLE_ALTERNATE_SSL && (!UNITY_WEBGL || UNITY_EDITOR) using System; namespace Org.BouncyCastle.Crypto { /// Base interface for a public/private key block cipher. public interface IAsymmetricBlockCipher { /// The name of the algorithm this cipher implements. string AlgorithmName { get; } /// Initialise the cipher. /// Initialise for encryption if true, for decryption if false. /// The key or other data required by the cipher. void Init(bool forEncryption, ICipherParameters parameters); /// The maximum size, in bytes, an input block may be. int GetInputBlockSize(); /// The maximum size, in bytes, an output block will be. int GetOutputBlockSize(); /// Process a block. /// The input buffer. /// The offset into inBuf that the input block begins. /// The length of the input block. /// Input decrypts improperly. /// Input is too large for the cipher. byte[] ProcessBlock(byte[] inBuf, int inOff, int inLen); } } #endif