IHasher
Interface to wrap either a HashAlgorithm or a NonCryptographicHashAlgorithm
to provide a common interface for hashing a stream.
using System;
using System.IO;
using System.Threading;
using System.Threading.Tasks;
namespace Azure.Storage
{
internal interface IHasher : IDisposable
{
int HashSizeInBytes { get; }
Task<byte[]> ComputeHashInternal(Stream stream, bool async, CancellationToken cancellationToken);
void AppendHash(ReadOnlySpan<byte> content);
int GetFinalHash(Span<byte> hashDestination);
}
}