<PackageReference Include="BouncyCastle.Cryptography" Version="2.3.0" />

Org.BouncyCastle.Crypto.Modes.CcmBlockCipher

namespace Org.BouncyCastle.Crypto.Modes { public class CcmBlockCipher : IAeadBlockCipher, IAeadCipher { public virtual IBlockCipher UnderlyingCipher { get; } public virtual string AlgorithmName { get; } public CcmBlockCipher(IBlockCipher cipher); public virtual void Init(bool forEncryption, ICipherParameters parameters); public virtual int GetBlockSize(); public virtual void ProcessAadByte(byte input); public virtual void ProcessAadBytes(byte[] inBytes, int inOff, int len); public virtual int ProcessByte(byte input, byte[] outBytes, int outOff); public virtual int ProcessBytes(byte[] inBytes, int inOff, int inLen, byte[] outBytes, int outOff); public virtual int DoFinal(byte[] outBytes, int outOff); public virtual void Reset(); public virtual byte[] GetMac(); public virtual int GetUpdateOutputSize(int len); public virtual int GetOutputSize(int len); public virtual byte[] ProcessPacket(byte[] input, int inOff, int inLen); public virtual int ProcessPacket(byte[] input, int inOff, int inLen, byte[] output, int outOff); } }