У меня есть этот код:md5 хэш, используя хэш-функцию с #
...
private void bBrowse_Click(object sender, EventArgs e)
{
OpenFileDialog ofd = new OpenFileDialog();
if (ofd.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
string FileName = ofd.FileName;
tbKeyFile.Text = FileName;
}
if (!String.IsNullOrEmpty(tbKeyFile.Text))
{
FileStream fs = new FileStream(tbKeyFile.Text, FileMode.Open);
MD5 hashFunction = MD5.Create();
byte[] computedHashCode = hashFunction.ComputeHash(fs);
string HashInString = Convert.ToBase64String(computedHashCode);
lHash.Text = HashInString;
}
}
...
Но это не вычисления хэш md5. Он вычисляет контрольную сумму SHA1. Что я делаю неправильно?
Это звучит маловероятно. Как вы проверяете выход? – SLaks
'MD5.Create(). ComputeHash()' конечно не вернет хэш SHA1. – ken2k
Он вычисляет хэш MD5 с выводом Base64 с кодировкой Base64. Вы ожидали выхода с шестнадцатеричным кодированием? 'BitConverter.ToString (hash) .Replace (" - "," ")' можно использовать для получения хэш-кодировки с шестнадцатеричным кодированием. – CodesInChaos