UNPKG

@relaycorp/webcrypto-kms

Version:

WebCrypto-compatible client for Key Management Services like GCP KMS

21 lines 822 B
import { Crypto } from '@peculiar/webcrypto'; export const NODEJS_CRYPTO = new Crypto(); export const HASHING_ALGORITHM_NAME = 'SHA-256'; export const HASHING_ALGORITHM = { name: HASHING_ALGORITHM_NAME }; export const RSA_PSS_IMPORT_ALGORITHM = { name: 'RSA-PSS', hash: HASHING_ALGORITHM, }; export const RSA_PSS_CREATION_ALGORITHM = { ...RSA_PSS_IMPORT_ALGORITHM, modulusLength: 2048, publicExponent: new Uint8Array([1, 0, 1]), }; export const RSA_PSS_SIGN_ALGORITHM = { name: 'RSA-PSS', saltLength: 32 }; export async function derSerializePublicKey(publicKey) { const publicKeyDer = await NODEJS_CRYPTO.subtle.exportKey('spki', publicKey); return Buffer.from(publicKeyDer); } // tslint:disable-next-line:readonly-array export const KEY_USAGES = ['sign']; //# sourceMappingURL=webcrypto.js.map