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
MinimumSize
Gets the minimum data size.
public override byte MinimumSize { get; }
Property Value
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.