Files
SuperVPN/output/Libraries/BouncyCastle.Crypto/Org/BouncyCastle/Crypto/Digests/NullDigest.cs
2025-10-09 09:57:24 +09:00

49 lines
708 B
C#

using System.IO;
using Org.BouncyCastle.Utilities.IO;
namespace Org.BouncyCastle.Crypto.Digests;
public class NullDigest : IDigest
{
private readonly MemoryStream bOut = new MemoryStream();
public string AlgorithmName => "NULL";
public int GetByteLength()
{
return 0;
}
public int GetDigestSize()
{
return (int)bOut.Length;
}
public void Update(byte b)
{
bOut.WriteByte(b);
}
public void BlockUpdate(byte[] inBytes, int inOff, int len)
{
bOut.Write(inBytes, inOff, len);
}
public int DoFinal(byte[] outBytes, int outOff)
{
try
{
return Streams.WriteBufTo(bOut, outBytes, outOff);
}
finally
{
Reset();
}
}
public void Reset()
{
bOut.SetLength(0L);
}
}