ハッシュ値を計算するコード

以前調べていた、.netを使ってMD5SHA1を計算する方法でプログラムを書いた。急作りなのでコード内にファイルパスが入っている。
これを、hash.csなどの名前で保存して、

csc hash.cs

とすれば、MD5を計算するツールが完成する。たったこれっぽっちのソースでっ!?


using System;
using System.Security.Cryptography;
using System.Text;
using System.IO;

class HelloClass
{
static string ByteArrayToString(byte[] arrInput)
{
int i;
StringBuilder sOutput = new StringBuilder(arrInput.Length);
for (i=0;i < arrInput.Length; i++)
{
sOutput.Append(arrInput[i].ToString("x2"));
}
return sOutput.ToString();
}

static void Main()
{
string path = @"*************ファイルパス*****************";
FileStream fs = File.OpenRead(path);

MD5 md5 = new MD5CryptoServiceProvider();
SHA1 sha1 = new SHA1CryptoServiceProvider();

byte[] result = md5.ComputeHash(fs);
Console.Write("MD5: ");
Console.WriteLine(ByteArrayToString(result));
result = sha1.ComputeHash(fs);
Console.Write("SHA1: ");
Console.WriteLine(ByteArrayToString(result));
}
}