aboutsummaryrefslogtreecommitdiff
path: root/bench/snippets/webcrypto.mjs
blob: 2d1256cf8fd28a86b7a6f95d719bd9eb1cedf896 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import { group } from "mitata";
import { bench, run } from "./runner.mjs";

const sizes = [
  ["small (63 bytes)", 63],
  ["medium (4096 bytes)", 4096],
  ["large (64 MB)", 64 * 1024 * 1024],
];
for (let [name, size] of sizes) {
  group(name, () => {
    var buf = new Uint8Array(size);
    for (let algorithm of ["SHA-1", "SHA-256", "SHA-384", "SHA-512"]) {
      bench(algorithm, async () => {
        await crypto.subtle.digest(algorithm, buf);
      });
    }
  });
}

await run();