C# Class Org.BouncyCastle.Crypto.Modes.GcmBlockCipher

Implements the Galois/Counter mode (GCM) detailed in NIST Special Publication 800-38D.
Inheritance: IAeadBlockCipher
Show file Open project: red-gate/iTextSharp-4.1.6 Class Usage Examples

Public Methods

Method Description
DoFinal ( byte output, int outOff ) : int
GcmBlockCipher ( IBlockCipher c ) : System
GetBlockSize ( ) : int
GetMac ( ) : byte[]
GetOutputSize ( int len ) : int
GetUpdateOutputSize ( int len ) : int
Init ( bool forEncryption, ICipherParameters parameters ) : void
ProcessByte ( byte input, byte output, int outOff ) : int
ProcessBytes ( byte input, int inOff, int len, byte output, int outOff ) : int
Reset ( ) : void

Private Methods

Method Description
Process ( byte input, byte output, int outOff ) : int
Reset ( bool clearMac ) : void
asBlock ( BigInteger bi ) : byte[]
gCTRBlock ( byte buf, int bufCount, byte output, int outOff ) : void
gHASH ( byte b, bool nonce ) : BigInteger
gHASHBlock ( byte block ) : void
inc ( byte block ) : void
multiply ( BigInteger X, BigInteger Y ) : BigInteger

Method Details

DoFinal() public method

public DoFinal ( byte output, int outOff ) : int
output byte
outOff int
return int

GcmBlockCipher() public method

public GcmBlockCipher ( IBlockCipher c ) : System
c IBlockCipher
return System

GetBlockSize() public method

public GetBlockSize ( ) : int
return int

GetMac() public method

public GetMac ( ) : byte[]
return byte[]

GetOutputSize() public method

public GetOutputSize ( int len ) : int
len int
return int

GetUpdateOutputSize() public method

public GetUpdateOutputSize ( int len ) : int
len int
return int

Init() public method

public Init ( bool forEncryption, ICipherParameters parameters ) : void
forEncryption bool
parameters ICipherParameters
return void

ProcessByte() public method

public ProcessByte ( byte input, byte output, int outOff ) : int
input byte
output byte
outOff int
return int

ProcessBytes() public method

public ProcessBytes ( byte input, int inOff, int len, byte output, int outOff ) : int
input byte
inOff int
len int
output byte
outOff int
return int

Reset() public method

public Reset ( ) : void
return void