System.Security.Cryptography.HashAlgorithm
namespace System.Security.Cryptography
{
public abstract class HashAlgorithm : IDisposable, ICryptoTransform
{
protected int HashSizeValue;
protected int State;
public virtual bool CanReuseTransform { get; }
public virtual bool CanTransformMultipleBlocks { get; }
public virtual byte[] Hash { get; }
public virtual int HashSize { get; }
public virtual int InputBlockSize { get; }
public virtual int OutputBlockSize { get; }
protected HashAlgorithm();
public void Clear();
public byte[] ComputeHash(byte[] buffer);
public byte[] ComputeHash(byte[] buffer, int offset, int count);
public byte[] ComputeHash(Stream inputStream);
public static HashAlgorithm Create();
public static HashAlgorithm Create(string hashName);
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);
}
}