Class BlockCipher
- Namespace
- Renci.SshNet.Security.Cryptography
- Assembly
- Renci.SshNet.dll
Base class for block cipher implementations.
public abstract class BlockCipher : SymmetricCipher
- Inheritance
-
BlockCipher
- Derived
- Inherited Members
Constructors
BlockCipher(byte[], byte, CipherMode, CipherPadding)
Initializes a new instance of the BlockCipher class.
protected BlockCipher(byte[] key, byte blockSize, CipherMode mode, CipherPadding padding)
Parameters
keybyte[]The key.
blockSizebyteSize of the block.
modeCipherModeCipher mode.
paddingCipherPaddingCipher padding.
Exceptions
- ArgumentNullException
keyis null.
Properties
BlockSize
Gets the size of the block.
public byte BlockSize { get; }
Property Value
- byte
The size of the block.
MinimumSize
Gets the minimum data size.
public override byte MinimumSize { get; }
Property Value
- byte
The minimum data size.
Methods
Decrypt(byte[], int, int)
Decrypts the specified input.
public override byte[] Decrypt(byte[] input, int offset, int length)
Parameters
inputbyte[]The input.
offsetintThe zero-based offset in
inputat which to begin decrypting.lengthintThe 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
inputBufferbyte[]The input data to decrypt.
inputOffsetintThe offset into the input byte array from which to begin using data.
inputCountintThe number of bytes in the input byte array to use as data.
outputBufferbyte[]The output to which to write decrypted data.
outputOffsetintThe 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
inputbyte[]The data.
offsetintThe zero-based offset in
inputat which to begin encrypting.lengthintThe 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
inputBufferbyte[]The input data to encrypt.
inputOffsetintThe offset into the input byte array from which to begin using data.
inputCountintThe number of bytes in the input byte array to use as data.
outputBufferbyte[]The output to which to write encrypted data.
outputOffsetintThe offset into the output byte array from which to begin writing data.
Returns
- int
The number of bytes encrypted.