Table of Contents

Class BlockCipher

Namespace
Renci.SshNet.Security.Cryptography
Assembly
Renci.SshNet.dll

Base class for block cipher implementations.

public abstract class BlockCipher : SymmetricCipher

Inheritance

Derived

Inherited Members

Constructors

BlockCipher(byte[], byte, CipherMode, CipherPadding)

Initializes a new instance of the Renci.SshNet.Security.Cryptography.BlockCipher class.

protected BlockCipher(byte[] key, byte blockSize, CipherMode mode, CipherPadding padding)

Parameters

key byte[]

The key.

blockSize byte

Size of the block.

mode CipherMode

Cipher mode.

padding CipherPadding

Cipher padding.

Exceptions

ArgumentNullException

key is null.

Properties

BlockSize

Gets the size of the block.

public byte BlockSize { get; }

Property Value

byte

MinimumSize

Gets the minimum data size.

public override byte MinimumSize { get; }

Property Value

byte

Methods

Decrypt(byte[], int, int)

Decrypts the specified input.

public override byte[] Decrypt(byte[] input, int offset, int length)

Parameters

input byte[]

The input.

offset int

The zero-based offset in input at which to begin decrypting.

length int

The number of bytes to decrypt from input.

Returns

byte[]

The decrypted data.

DecryptBlock(byte[], int, int, byte[], int)

Decrypts the specified region of the input byte array and copies the decrypted data to the specified region of the output byte array.

public abstract int DecryptBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset)

Parameters

inputBuffer byte[]

The input data to decrypt.

inputOffset int

The offset into the input byte array from which to begin using data.

inputCount int

The number of bytes in the input byte array to use as data.

outputBuffer byte[]

The output to which to write decrypted data.

outputOffset int

The offset into the output byte array from which to begin writing data.

Returns

int

The number of bytes decrypted.

Encrypt(byte[], int, int)

Encrypts the specified data.

public override byte[] Encrypt(byte[] input, int offset, int length)

Parameters

input byte[]

The data.

offset int

The zero-based offset in input at which to begin encrypting.

length int

The number of bytes to encrypt from input.

Returns

byte[]

The encrypted data.

EncryptBlock(byte[], int, int, byte[], int)

Encrypts the specified region of the input byte array and copies the encrypted data to the specified region of the output byte array.

public abstract int EncryptBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset)

Parameters

inputBuffer byte[]

The input data to encrypt.

inputOffset int

The offset into the input byte array from which to begin using data.

inputCount int

The number of bytes in the input byte array to use as data.

outputBuffer byte[]

The output to which to write encrypted data.

outputOffset int

The offset into the output byte array from which to begin writing data.

Returns

int

The number of bytes encrypted.