/
githubmirror
/
node
Обзор
Документация
Войти
/
githubmirror
/
node
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
benchmark/crypto/timingSafeEqual.js
22 строки
582 B
Tobias Nießen
crypto: make timingSafeEqual faster for Uint8Array
08 апр 2024, 14:36
Не верифицирован
08 апр 2024, 14:36
08609b5
Код
Авторство
О чём код?
'use strict'; const common = require('../common.js'); const assert = require('node:assert'); const { randomBytes, timingSafeEqual } = require('node:crypto'); const bench = common.createBenchmark(main, { n: [1e5], bufferSize: [10, 100, 200, 2_100, 22_023], }); function main({ n, bufferSize }) { const bufs = [randomBytes(bufferSize), randomBytes(bufferSize)]; bench.start(); let count = 0; for (let i = 0; i < n; i++) { const ret = timingSafeEqual(bufs[i % 2], bufs[1]); if (ret) count++; } bench.end(n); assert.strictEqual(count, Math.floor(n / 2)); }