-
Notifications
You must be signed in to change notification settings - Fork 308
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
chore: uncomment asserts in oink rec verifier #8316
Changes from 6 commits
ab3fe75
c931abc
d5bb84f
6b7ff6a
d0cbf9e
41e5441
6862c41
4c6464a
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -128,13 +128,9 @@ TEST_F(ClientIVCTests, BasicFailure) | |
break; | ||
} | ||
} | ||
|
||
// Accumulate another circuit; this involves recursive folding verification of the bad proof | ||
Builder circuit_2 = create_mock_circuit(ivc); | ||
ivc.accumulate(circuit_2); | ||
|
||
// The bad fold proof should result in an invalid witness in the final circuit and the IVC should fail to verify | ||
EXPECT_FALSE(prove_and_verify(ivc)); | ||
EXPECT_ANY_THROW(ivc.accumulate(circuit_2)); | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. now that these tests don't fail at prove_and_verify, maybe could make new tests that do, but not sure if that's possible anymore. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I'm a bit confused why that's the case, can you clarify There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. they fail at accumulate now because the proof has bad data so the recursive verifier throws an error. |
||
}; | ||
|
||
/** | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
can you add a comment to explain why this is a special case please
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm also a bit confused how this is related to the tampered fold proof
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
the 4th circuit (idx == 3) is the kernel circuit that calls the recursive folding verifier with the folding proofs of the 2nd and 3rd instances. Since we're tampering with the first proof, this circuit now throws an error from the oink checks added in this PR
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
to be more clear, on line 191, there's an if statement for idx == 2 that tampers the proof.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thanks for explaining! would you be able to add a comment about this and then I think it's a pretty good failing test. Will approve