1 |
|
2 | import {encode as n, toHEX as p} from "worktop/utils";
|
3 | function i(e, t) {
|
4 | return crypto.subtle.digest(e, n(t)).then(p);
|
5 | }
|
6 | var f = i.bind(0, "SHA-1"), m = i.bind(0, "SHA-256"), c = i.bind(0, "SHA-384"), A = i.bind(0, "SHA-512");
|
7 | function u(e, t, r) {
|
8 | return crypto.subtle.importKey("raw", n(t), e, !1, r);
|
9 | }
|
10 | function b(e, t, r = !1) {
|
11 | return crypto.subtle.generateKey(e, r, t);
|
12 | }
|
13 | function d(e, t, r) {
|
14 | return crypto.subtle.sign(e, t, n(r));
|
15 | }
|
16 | function h(e, t, r, o) {
|
17 | return crypto.subtle.verify(e, t, o, n(r));
|
18 | }
|
19 | function K(e, t) {
|
20 | if (e.byteLength !== t.byteLength)
|
21 | return !1;
|
22 | let r = e.length, o = !1;
|
23 | for (; r-- > 0; )
|
24 | e[r] !== t[r] && (o = !0);
|
25 | return !o;
|
26 | }
|
27 | async function x(e, t, r, o, s) {
|
28 | let y = await u("PBKDF2", t, ["deriveBits"]), g = {
|
29 | name: "PBKDF2",
|
30 | salt: n(r),
|
31 | iterations: o,
|
32 | hash: e
|
33 | };
|
34 | return crypto.subtle.deriveBits(g, y, s << 3);
|
35 | }
|
36 | export {
|
37 | x as PBKDF2,
|
38 | f as SHA1,
|
39 | m as SHA256,
|
40 | c as SHA384,
|
41 | A as SHA512,
|
42 | i as digest,
|
43 | b as keygen,
|
44 | u as keyload,
|
45 | d as sign,
|
46 | K as timingSafeEqual,
|
47 | h as verify
|
48 | };
|