SHA256
Computes the SHA256 hash for input data.
using System.Security.Cryptography;
namespace SshNet.Security.Cryptography
{
public class SHA256 : HashAlgorithm
{
private IHashProvider _hashProvider;
public override int HashSize => _hashProvider.HashSize;
public SHA256()
{
_hashProvider = new SHA256HashProvider();
}
protected override void HashCore(byte[] array, int ibStart, int cbSize)
{
_hashProvider.HashCore(array, ibStart, cbSize);
}
protected override byte[] HashFinal()
{
return _hashProvider.HashFinal();
}
public override void Initialize()
{
_hashProvider.Reset();
}
protected override void Dispose(bool disposing)
{
base.Dispose(disposing);
if (disposing) {
_hashProvider.Dispose();
_hashProvider = null;
}
}
}
}