@nfen/webcrypto-ts
Version:
Enforced Webcrypto wrapper
26 lines • 1.18 kB
JavaScript
import { DeriveKeyUsagePair, getKeyUsagePairsByAlg } from "../key_usages.js";
import * as WebCrypto from "../webcrypto.js";
export var Alg;
(function (Alg) {
let Variant;
(function (Variant) {
Variant["PBKDF2"] = "PBKDF2";
Variant["HKDF"] = "HKDF";
})(Variant = Alg.Variant || (Alg.Variant = {}));
})(Alg || (Alg = {}));
export var KdfShared;
(function (KdfShared) {
async function generateKeyMaterial(format, key, algorithm, extractable = false) {
return await WebCrypto.importKey(format, key, algorithm, extractable, DeriveKeyUsagePair);
}
KdfShared.generateKeyMaterial = generateKeyMaterial;
async function deriveKey(algorithm, baseKey, derivedKeyType, extractable = true, keyUsages) {
return await WebCrypto.deriveKey(algorithm, baseKey, derivedKeyType, extractable, keyUsages ?? getKeyUsagePairsByAlg(derivedKeyType.name));
}
KdfShared.deriveKey = deriveKey;
async function deriveBits(algorithm, baseKey, length) {
return await WebCrypto.deriveBits(algorithm, baseKey, length);
}
KdfShared.deriveBits = deriveBits;
})(KdfShared || (KdfShared = {}));
//# sourceMappingURL=shared.js.map