Interface ICipher
- Namespace
- Org.BouncyCastle.Crypto
- Assembly
- BouncyCastle.Cryptography.dll
Base interface for a ciphers that do not require data to be block aligned.
Note: In cases where the underlying algorithm is block based, these ciphers may add or remove padding as needed.
public interface ICipher
Properties
Stream
Gets the stream for reading/writing data processed/to be processed.
Stream Stream { get; }
Property Value
- Stream
The stream associated with this cipher.
Methods
GetMaxOutputSize(int)
Return the size of the output buffer required for a Write() plus a close() with the write() being passed inputLen bytes.
The returned size may be dependent on the initialisation of this cipher and may not be accurate once subsequent input data is processed as the cipher may add, add or remove padding, as it sees fit.
int GetMaxOutputSize(int inputLen)
Parameters
inputLenintThe length of the expected input.
Returns
- int
The space required to accommodate a call to processBytes and doFinal with inputLen bytes of input.
GetUpdateOutputSize(int)
Return the size of the output buffer required for a write() with the write() being passed inputLen bytes and just updating the cipher output.
int GetUpdateOutputSize(int inputLen)
Parameters
inputLenintThe length of the expected input.
Returns
- int
The space required to accommodate a call to processBytes with inputLen bytes of input.