supranational / supra_seal

Apache License 2.0
32 stars 21 forks source link

C2: move subversion-CRS attack check into SupraSeal code #4

Closed vmx closed 1 year ago

vmx commented 1 year ago

In the C2 code base the bellperson patch currently contains a check for a subversion-CRS attachk. This check is currently based on the parameters that are read in on the Rust side.

Instead this check should be on the parameters that are actually used for the proof. Hence this check should be moved into this code base.

dot-asm commented 1 year ago

This kind of asks for the following question. If the input is not considered trustworthy at this stage, then how come just check for infinity is sufficient? I mean wouldn't it be as appropriate to verify that the corresponding points are in the [pairing-friendly] group? In other words, there seem to be a contradiction, input is either already trusted, in which case no check should be necessary, or it's untrusted, in which case the referred check is arguably insufficient.

vmx commented 1 year ago

I checked with the team. Indeed it doesn't make sense to only have this check => We don't need it on the C++ side of things.