UNPKG

dte-signer-sv

Version:

Sign Digital Tax Documents (DTE) for El Salvador's Ministry of Finance

19 lines 727 B
import crypto from "crypto"; import jose from "node-jose"; export const HASH_ALGORITHM = "sha512"; export const PRIVATE_KEY_HASH_ALGORITHM = "pkcs8"; export const SIGNATURE_ALGORITHM = "RS512"; export const hash = (data) => { return crypto.createHash(HASH_ALGORITHM).update(data).digest("hex"); }; export const createJwk = async (privateKey) => { const jwk = await jose.JWK.asKey(Buffer.from(privateKey, 'base64'), PRIVATE_KEY_HASH_ALGORITHM, { alg: SIGNATURE_ALGORITHM }); return jwk; }; export const sign = async (data, privateKey) => await jose.JWS.createSign({ alg: SIGNATURE_ALGORITHM, format: "compact", }, privateKey) .update(JSON.stringify(data)) .final(); //# sourceMappingURL=crypto.js.map