You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The verifyProof() method currently does a little more that just proof verification - it store the nullifier in the contract (to prevent verifyProof being called again with same proof).
But there could be use cases where one would want to simply verify the proof - maybe even offchain, and also verify multiple time. Currently this is possible by calling the Verifier contract directly, but the caller would need to get group merkleRoot (and other data ) by calling Semaphore contract first. Additionally they will need to check if the proof was computed using an old merkleRoot themselves (which is already implemented in verifyProof).
We can add another method that does only verification without doing any state changes (saving the nullifier). In fact, this method could be called verifyProof, and the current verifyProof could be something like validateProof() (like validating a ticket which could be done only once).
The text was updated successfully, but these errors were encountered:
The
verifyProof()
method currently does a little more that just proof verification - it store the nullifier in the contract (to prevent verifyProof being called again with same proof).But there could be use cases where one would want to simply verify the proof - maybe even offchain, and also verify multiple time. Currently this is possible by calling the Verifier contract directly, but the caller would need to get group merkleRoot (and other data ) by calling Semaphore contract first. Additionally they will need to check if the proof was computed using an old merkleRoot themselves (which is already implemented in
verifyProof
).We can add another method that does only verification without doing any state changes (saving the nullifier). In fact, this method could be called
verifyProof
, and the currentverifyProof
could be something likevalidateProof()
(like validating a ticket which could be done only once).The text was updated successfully, but these errors were encountered: