Как я использую SHA1CryptoServiceProvider()
на файле для создания Контрольной суммы SHA1 файла?
Методом ComputeHash. Смотрите здесь:
Пример фрагмента:
using(var cryptoProvider = new SHA1CryptoServiceProvider())
{
string hash = BitConverter
.ToString(cryptoProvider.ComputeHash(buffer));
//do something with hash
}
Где буфер - содержимое вашего файла.
.using (FileStream fs = new FileStream(@"C:\file\location", FileMode.Open))
using (BufferedStream bs = new BufferedStream(fs))
{
using (SHA1Managed sha1 = new SHA1Managed())
{
byte[] hash = sha1.ComputeHash(bs);
StringBuilder formatted = new StringBuilder(2 * hash.Length);
foreach (byte b in hash)
{
formatted.AppendFormat("{0:X2}", b);
}
}
}
отформатировано
содержит строковое представление хэша SHA-1. Также, используя FileStream
вместо байтового буфера, ComputeHash
вычисляет хэш в кусках, так что вам не нужно загружать весь файл за один проход, что удобно для больших файлов.