Повышение производительности SHA-1 ComputeHash

Я использую следующий код для вычисления контрольной суммы файла, который отлично работает. Но когда я генерирую хеш для большого файла, скажем 2 ГБ, это довольно медленно. Как я могу улучшить производительность этого кода?

fs = new FileStream(txtFile.Text, FileMode.Open);
        formatted = string.Empty;
        using (SHA1Managed sha1 = new SHA1Managed())
        {
            byte[] hash = sha1.ComputeHash(fs);

            foreach (byte b in hash)
            {
                formatted += b.ToString("X2");
            }
        }
        fs.Close();

Обновление:

Система:

ОС: Win 7 64bit, CPU: I5 750, RAM: 4GB, HDD: 7200rpm

Тесты:

Test1 = 59,895 секунд

Test2 = 59,94 секунды

6
задан Bruce Adams 10 September 2013 в 09:29
поделиться