@relaycorp/webcrypto-kms
Version:
WebCrypto-compatible client for Key Management Services like GCP KMS
12 lines • 643 B
JavaScript
import { constants, createVerify } from 'crypto';
import { derSerializePublicKey } from '../testUtils/webcrypto';
import { derPublicKeyToPem } from '../testUtils/asn1';
export const PLAINTEXT = Buffer.from('this is the plaintext');
export async function verifyAsymmetricSignature(publicKey, signature, plaintext) {
const verify = createVerify('sha256');
verify.update(plaintext);
verify.end();
const publicKeyDer = await derSerializePublicKey(publicKey);
return verify.verify({ key: derPublicKeyToPem(publicKeyDer), padding: constants.RSA_PKCS1_PSS_PADDING }, new Uint8Array(signature));
}
//# sourceMappingURL=utils.js.map