UNPKG

@relaycorp/webcrypto-kms

Version:

WebCrypto-compatible client for Key Management Services like GCP KMS

16 lines 854 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.verifyAsymmetricSignature = exports.PLAINTEXT = void 0; const crypto_1 = require("crypto"); const webcrypto_1 = require("../testUtils/webcrypto"); const asn1_1 = require("../testUtils/asn1"); exports.PLAINTEXT = Buffer.from('this is the plaintext'); async function verifyAsymmetricSignature(publicKey, signature, plaintext) { const verify = (0, crypto_1.createVerify)('sha256'); verify.update(plaintext); verify.end(); const publicKeyDer = await (0, webcrypto_1.derSerializePublicKey)(publicKey); return verify.verify({ key: (0, asn1_1.derPublicKeyToPem)(publicKeyDer), padding: crypto_1.constants.RSA_PKCS1_PSS_PADDING }, new Uint8Array(signature)); } exports.verifyAsymmetricSignature = verifyAsymmetricSignature; //# sourceMappingURL=utils.js.map