KeePassLib 2.37 tentatively working!!

Replaced WinRt hash providers with BouncyCastle in CryptoUtil
This commit is contained in:
2017-10-24 14:39:06 +02:00
committed by BONNEVILLE Geoffroy
parent 5b31d3ff72
commit ad0d8d6c97
9 changed files with 161 additions and 86 deletions

View File

@@ -0,0 +1,31 @@
using System;
using Org.BouncyCastle.Crypto;
namespace ModernKeePassLib.Cryptography.Hash
{
public abstract class DigestManaged: IDisposable
{
protected IDigest Hash;
public byte[] ComputeHash(byte[] value)
{
return ComputeHash(value, 0, value.Length);
}
public byte[] ComputeHash(byte[] value, int offset, int length)
{
if (value == null) throw new ArgumentNullException(nameof(value));
byte[] resBuf = new byte[Hash.GetByteLength()];
Hash.BlockUpdate(value, 0, length);
Hash.DoFinal(resBuf, 0);
return resBuf;
}
public void Dispose()
{
Hash.Reset();
}
}
}