Mono.Helper.HashStream C# (CSharp) Method

HashStream() static private method

static private HashStream ( Stream stream, int length ) : byte[]
stream Stream
length int
return byte[]
		static byte [] HashStream (Stream stream, int length)
		{
			stream.Position = 0;
			byte [] buffer = new byte [BlockSize];
			using (SHA1Managed digest = new SHA1Managed ()) {
				while (length > 0) {
					int len = stream.Read (buffer, 0, System.Math.Min (length, BlockSize));
					if (len == length)
						digest.TransformFinalBlock (buffer, 0, len);
					else
						digest.TransformBlock (buffer, 0, len, null, 0);
					length -= len;
				}
				return digest.Hash;
			}
		}