Методы ускорения ша 512 хэширования? - PullRequest
1 голос
/ 14 апреля 2019

Благодаря использованию алгоритма sha 512 в openssl, я в настоящее время могу вычислить хэш файла 2 Гб в диапазоне от 3 до 3,3 секунд (мой процессор i7-5820k) - включая время, необходимое для открытия, записи ви закройте файлы (откройте хэш ввода и записи в текстовый файл).

Я задался вопросом, существуют ли какие-либо известные методы для ускорения этого процесса, или же мой жесткий диск полностью неисправен, создавая узкое место (Seagate BarraCuda Green, 2 ТБ, 5900 об / мин, SATA, 6 Гбит / с, 64 МБ, кэш-память).

            FILE *ftest=fopen(hashInBuf, "rb");
            FILE *ftest2=fopen(hashOutBuf, "wt");
            //HASH FUNCTION
            SHA512_Init (&mdContext);
            while ((bytes = fread (data, 1, 1024, ftest)) != 0)
            SHA512_Update (&mdContext, data, bytes);
            SHA512_Final (c,&mdContext);
            for(i = 0; i < SHA512_DIGEST_LENGTH; i++){
              fprintf(ftest2, "%02x", c[i]);
              printf("%02x", c[i]);

(код, который я сейчас использую для вычисления ша 512)

...