UNPKG

1.21 kBJavaScriptView Raw
1// src/crypto.ts
2const { encode:n, toHEX:p } = require('worktop/utils');
3function i(e, t) {
4 return crypto.subtle.digest(e, n(t)).then(p);
5}
6var f = /* @__PURE__ */ i.bind(0, "SHA-1"), m = /* @__PURE__ */ i.bind(0, "SHA-256"), c = /* @__PURE__ */ i.bind(0, "SHA-384"), A = /* @__PURE__ */ i.bind(0, "SHA-512");
7function u(e, t, r) {
8 return crypto.subtle.importKey("raw", n(t), e, !1, r);
9}
10function b(e, t, r = !1) {
11 return crypto.subtle.generateKey(e, r, t);
12}
13function d(e, t, r) {
14 return crypto.subtle.sign(e, t, n(r));
15}
16function h(e, t, r, o) {
17 return crypto.subtle.verify(e, t, o, n(r));
18}
19function 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}
27async 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
37
38exports.PBKDF2 = x;
39exports.SHA1 = f;
40exports.SHA256 = m;
41exports.SHA384 = c;
42exports.SHA512 = A;
43exports.digest = i;
44exports.keygen = b;
45exports.keyload = u;
46exports.sign = d;
47exports.timingSafeEqual = K;
48exports.verify = h;
\No newline at end of file