zkrepl icon indicating copy to clipboard operation
zkrepl copied to clipboard

Could not use the `main.groth16.sol` file to verify proofs onchain

Open guha-rahul opened this issue 4 months ago • 0 comments

I am using this circuit

pragma circom 2.1.6;

include "circomlib/poseidon.circom";
// include "https://github.com/0xPARC/circom-secp256k1/blob/master/circuits/bigint.circom";

template Example () {
    signal input a;
    signal input b;
    signal output c;
    
    var unused = 4;
    c <== a * b;
    assert(a > 2);
    
    component hash = Poseidon(2);
    hash.inputs[0] <== a;
    hash.inputs[1] <== b;

    log("hash", hash.out);
}

component main { public [ a ] } = Example();

/* INPUT = {
    "a": "5",
    "b": "77"
} */

To generate the solidity file. But after deploying the verifier contract on arbitrum and passing the proof as for a

[
  10622158196877865121877713611525022885915988417182296750128290186139937037027,
  16478714069833533228070200325996780088555143231546859872854222309546100106500
]

for b

[
  [1129140144456440190691928934438230385581758680041682541619370755748278506727, 11184670809589587112782463563801414667319499449768660601411105022943508216188],
  [17696644816791146362502523112365793372500291315203098134699313949248509174223, 13224845834321254369217598872475509019366136442744091737333149022704415972706]
]

for c

[
  5382502169795826486251237715553339639936016987116632097956637772015505052032,
  19353096893889661884641700853402914860625789699165720125737051159210340834334
]

for input

[5,7]

Its showing me this error

invalid opcode: INVALID	
	The execution might have thrown OR the EVM version used by the selected environment is not compatible with the compiler EVM version.

guha-rahul avatar Oct 16 '24 18:10 guha-rahul