You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
36 lines
928 B
36 lines
928 B
// System.Security.Cryptography.ICryptoTransform
|
|
|
|
#if NET20 || NET40 || NET461
|
|
|
|
using System;
|
|
using System.Runtime.InteropServices;
|
|
|
|
namespace System.Security.Cryptography
|
|
{
|
|
|
|
internal class IncrementalHash : HMACSHA1
|
|
{
|
|
bool _finalised;
|
|
public IncrementalHash(byte[] key) : base(key) { }
|
|
public static IncrementalHash CreateHMAC(string n, byte[] key) => new IncrementalHash(key);
|
|
public void AppendData(byte[] buffer, int offset, int count) => TransformBlock(buffer, offset, count, buffer, offset);
|
|
public byte[] GetHashAndReset()
|
|
{
|
|
if (!_finalised)
|
|
{
|
|
byte[] dummy = new byte[0];
|
|
TransformFinalBlock(dummy, 0, 0);
|
|
_finalised = true;
|
|
}
|
|
return Hash;
|
|
}
|
|
}
|
|
|
|
internal static class HashAlgorithmName
|
|
{
|
|
public static string SHA1 = null;
|
|
}
|
|
|
|
}
|
|
|
|
#endif
|
|
|