Files
modernkeepass/ModernKeePassLib/Cryptography/Hash/DigestManaged.cs

27 lines
629 B
C#
Raw Normal View History

2017-10-22 16:44:17 -04:00
using System;
using Org.BouncyCastle.Crypto;
namespace ModernKeePassLib.Cryptography.Hash
{
public abstract class DigestManaged : IDisposable
{
protected IDigest _hash;
public byte[] ComputeHash(byte[] value, int offset, int length)
{
if (value == null) throw new ArgumentNullException(nameof(value));
byte[] resBuf = new byte[_hash.GetDigestSize()];
_hash.BlockUpdate(value, offset, length);
_hash.DoFinal(resBuf, 0);
return resBuf;
}
public void Dispose()
{
_hash.Reset();
}
}
}