@nfen/webcrypto-ts
Version:
Enforced Webcrypto wrapper
39 lines • 1.51 kB
JavaScript
/**
* Shared code for RSA
* @module
*/
import { getKeyUsagePairsByAlg } from "../key_usages.js";
import * as WebCrypto from "../webcrypto.js";
export var Alg;
(function (Alg) {
let Variant;
(function (Variant) {
Variant["RSA_OAEP"] = "RSA-OAEP";
Variant["RSA_PSS"] = "RSA-PSS";
Variant["RSASSA_PKCS1_v1_5"] = "RSASSA-PKCS1-v1_5";
})(Variant = Alg.Variant || (Alg.Variant = {}));
})(Alg || (Alg = {}));
export var RsaShared;
(function (RsaShared) {
async function generateKey(algorithm, extractable = true, keyUsages) {
return await WebCrypto.generateKey(algorithm, extractable, keyUsages ?? getKeyUsagePairsByAlg(algorithm.name));
}
RsaShared.generateKey = generateKey;
async function importKey(format, key, algorithm, extractable = true, keyUsages) {
return await WebCrypto.importKey(format, key, algorithm, extractable, keyUsages ?? getKeyUsagePairsByAlg(algorithm.name));
}
RsaShared.importKey = importKey;
async function exportKey(format, key) {
return await WebCrypto.exportKey(format, key);
}
RsaShared.exportKey = exportKey;
async function sign(algorithm, key, data) {
return await WebCrypto.sign(algorithm, key, data);
}
RsaShared.sign = sign;
async function verify(algorithm, key, signature, data) {
return await WebCrypto.verify(algorithm, key, signature, data);
}
RsaShared.verify = verify;
})(RsaShared || (RsaShared = {}));
//# sourceMappingURL=shared.js.map