Class BlockCipher
- Namespace
- Renci.SshNet.Security.Cryptography
- Assembly
- Renci.SshNet.dll
Base class for block cipher implementations.
public abstract class BlockCipher : SymmetricCipherInheritance
Derived
Inherited Members
Constructors
BlockCipher(byte[], byte, CipherMode, IBlockCipherPadding)
Initializes a new instance of the Renci.SshNet.Security.Cryptography.BlockCipher class.
protected BlockCipher(byte[] key, byte blockSize, CipherMode mode, IBlockCipherPadding padding)Parameters
keybyte[]-
The key.
blockSizebyte-
Size of the block.
modeCipherMode-
Cipher mode.
paddingIBlockCipherPadding-
Cipher padding.
Exceptions
- ArgumentNullException
-
keyis 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
inputbyte[]-
The input.
offsetint-
The zero-based offset in
inputat which to begin decrypting. lengthint-
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
inputBufferbyte[]-
The input data to decrypt.
inputOffsetint-
The offset into the input byte array from which to begin using data.
inputCountint-
The number of bytes in the input byte array to use as data.
outputBufferbyte[]-
The output to which to write decrypted data.
outputOffsetint-
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
inputbyte[]-
The data.
offsetint-
The zero-based offset in
inputat which to begin encrypting. lengthint-
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
inputBufferbyte[]-
The input data to encrypt.
inputOffsetint-
The offset into the input byte array from which to begin using data.
inputCountint-
The number of bytes in the input byte array to use as data.
outputBufferbyte[]-
The output to which to write encrypted data.
outputOffsetint-
The offset into the output byte array from which to begin writing data.
Returns
- int
-
The number of bytes encrypted.