System.Security.Cryptography.HashAlgorithm
Represents the base class from which all implementations of cryptographic
hash algorithms must derive.
namespace System.Security.Cryptography
{
public abstract class HashAlgorithm : IDisposable
{
public virtual int HashSize { get; }
public virtual int InputBlockSize { get; }
public virtual int OutputBlockSize { get; }
public virtual bool CanReuseTransform { get; }
public virtual bool CanTransformMultipleBlocks { get; }
public byte[] Hash { get; }
public byte[] ComputeHash(byte[] buffer);
public byte[] ComputeHash(byte[] buffer, int offset, int count);
public byte[] ComputeHash(Stream inputStream);
public void Dispose();
protected virtual void Dispose(bool disposing);
protected abstract void HashCore(byte[] array, int ibStart, int cbSize);
protected abstract byte[] HashFinal();
public abstract void Initialize();
public int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset);
public byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount);
protected HashAlgorithm();
}
}