zk-email-light
Version:
ZkEmail only for Header
33 lines • 1.56 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.gmailRsaCircuitInputs = exports.rsaCircuitInputs = void 0;
const dkim_verifier_1 = require("dkim-verifier");
const input_1 = require("./input");
const sha_1 = require("./sha");
const rsaCircuitInputs = async (emailRaw) => {
const { canonicalizedHeaders, dkim } = (0, dkim_verifier_1.parseEmailToCanonicalized)(emailRaw);
const { n } = await (0, dkim_verifier_1.getDkimPublicKeyN)(dkim);
const signature = (0, dkim_verifier_1.getSignature)(dkim);
const sha = (0, sha_1.sha256)(canonicalizedHeaders);
const shaBigint = BigInt(`0x${sha}`);
return {
modulus: (0, input_1.bigintToCircomInputs)(n),
signature: (0, input_1.bigintToCircomInputs)(signature),
message: (0, input_1.bigintToCircomInputs)(shaBigint),
};
};
exports.rsaCircuitInputs = rsaCircuitInputs;
const gmailRsaCircuitInputs = (emailRaw) => {
const { canonicalizedHeaders, dkim } = (0, dkim_verifier_1.parseEmailToCanonicalized)(emailRaw);
const { n } = (0, dkim_verifier_1.getGmailDkimPublicKeyN)();
const signature = (0, dkim_verifier_1.getSignature)(dkim);
const sha = (0, sha_1.sha256)(canonicalizedHeaders);
const shaBigint = BigInt(`0x${sha}`);
return {
modulus: (0, input_1.bigintToCircomInputs)(n),
signature: (0, input_1.bigintToCircomInputs)(signature),
message: (0, input_1.bigintToCircomInputs)(shaBigint),
};
};
exports.gmailRsaCircuitInputs = gmailRsaCircuitInputs;
//# sourceMappingURL=rsa.js.map