@sybil-center/zkc-o1js
Version:
Work with sybil-center ZKC & MINA protocol
15 lines • 1.57 kB
JavaScript
import { o1jsPreparator } from "./preparator.js";
import { Poseidon } from "o1js";
export async function verify(args) {
const { cred, attributeSelector, signSelector } = args;
try {
const preparedAttr = o1jsPreparator.getPreparedAttributes(cred, attributeSelector);
const [sign, _, isr_id_k] = o1jsPreparator.getPreparedSign(cred, signSelector ? signSelector : attributeSelector);
const hash = Poseidon.hash(preparedAttr);
return sign.verify(isr_id_k, [hash]).toBoolean();
}
catch (e) {
return false;
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyaWZ5LnprYy5qcyIsInNvdXJjZVJvb3QiOiIuL3NyYy8iLCJzb3VyY2VzIjpbInZlcmlmeS56a2MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pELE9BQU8sRUFBUyxRQUFRLEVBQXdCLE1BQU0sTUFBTSxDQUFDO0FBSTdELE1BQU0sQ0FBQyxLQUFLLFVBQVUsTUFBTSxDQUcxQixJQUlDO0lBRUQsTUFBTSxFQUNKLElBQUksRUFDSixpQkFBaUIsRUFDakIsWUFBWSxFQUNiLEdBQUcsSUFBSSxDQUFDO0lBQ1QsSUFBSTtRQUNGLE1BQU0sWUFBWSxHQUFHLGNBQWMsQ0FBQyxxQkFBcUIsQ0FBVSxJQUFJLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztRQUM1RixNQUFNLENBQ0osSUFBSSxFQUNKLENBQUMsRUFDRCxRQUFRLENBQ1QsR0FBRyxjQUFjLENBQUMsZUFBZSxDQUNoQyxJQUFJLEVBQ0osWUFBWSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLGlCQUFpQixDQUNoRCxDQUFDO1FBQ0YsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUN6QyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztLQUNsRDtJQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQ1YsT0FBTyxLQUFLLENBQUM7S0FDZDtBQUNILENBQUMifQ==