SnarkJS verify smart contract for rollups
- aakash4devOP
I got stuck in snarkjs.groth16.verify() function in smart contract in typescript.
we wanna make verify function on NEAR smart contract for ZK snarks (growth16).import { NearBindgen, view } from "near-sdk-js"; // , call,initialize import {groth16} from 'snarkjs'; @NearBindgen({}) class ZKRollup { @view({}) verifyProof(proof: string, publicInputs: string[]): boolean { // Parse the proof and public inputs from strings const parsedProof = JSON.parse(proof); const parsedPublicInputs = publicInputs.map((input) => BigInt(input)); // Verify the proof using snarkjs const result = groth16.verify( parsedProof.vk, parsedPublicInputs, parsedProof.pi ); // Return the result return result; } }