-
Notifications
You must be signed in to change notification settings - Fork 31
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
Range proof fails when value is maximum #27
Comments
Hi Mark, This was an intentional change to make the bounds uniform across all supported protocols. The upper bound (max) is exclusive, i.e. protocol enforces bound And I just published a newer version of that crate. Please use that. |
Thanks @lovesh. As far as I can tell, with this arrangement, there is no way to express a minimum value without imposing a maximum (other than the maximum representable value). In contrast, AnonCreds v2 can express this either explicitly or implicitly. For example, based on the tests here, the following additional tests all pass:
I don't think the last one can be expressed using DockNetwork crypto, due the changed interface. For us, wanting to abstract both libraries, this presents a bit of a challenge. I would welcome your thoughts. |
Happy New Year @lovesh. Any thoughts on the above comment (edited for freshness and clarity)? Thanks. |
Happy New Year @mark-moir and sorry for the late reply. I think the problem is not about the bounds being explicit or not (as we don't support implicit bounds) but being able to support a value of |
No problem, thanks for the response.
My point is not so much about
Thanks. Note that |
Hi
We've been updating some of our tests to use a later version of the DockNetwork crypto proof_system, specifically this one, which we believe is from this commit.
Our range proof tests include a case in which the signed value is the maximum value in the required range. This test passed with earlier versions and now fails. A simple way to reproduce this is to change this line to:
so that all of the values are the maximum of the range specified for the test, and then run:
which yields this failure:
Is this an intentional semantic change or a bug?
Thanks.
The text was updated successfully, but these errors were encountered: