Skip to content
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

Deserialization test failing for BLS12-381 #499

Closed
matteosz opened this issue Jun 6, 2024 · 1 comment · Fixed by #500
Closed

Deserialization test failing for BLS12-381 #499

matteosz opened this issue Jun 6, 2024 · 1 comment · Fixed by #500
Assignees
Labels
bug Something isn't working

Comments

@matteosz
Copy link

matteosz commented Jun 6, 2024

Hello,

I was working on Kyber library, a crypto library in Go, and we were using your implementation of BLS12-381.
We also leverage another implementation of BLS12-381 from Kilic.

We were then adding some deserialization tests (from this commit) and noticed that one in particular fails on the Circl implementation, while it succeeds on the Kilic one. Here's the deserialization test:

Filename: deserialization_fails_with_b_flag_and_a_flag_true.yaml

input: {signature: e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000}
output: null

Here's the test code for reproducibility (TestZKCryptoVectorsG1Compressed and TestZKCryptoVectorsG2Compressed tests).

@armfazh
Copy link
Contributor

armfazh commented Jun 10, 2024

Thanks @matteosz for reporting.

AnomalRoil added a commit to dedis/kyber that referenced this issue Jun 13, 2024
* Added circl and kilic implementation of bls12381 + benchmarks
* Added deserialization tests compressed vectors +more comments
* Fix IBE in the drand merge (#514)
* Add ByteOrder() function + constant from int.go
* Update circl_bls12381 and edwards25519 scalars
* Add Order() to the scalar interface
* Adapt IBE to make it general
* Fix dkg bug (#515)
* BugFix: use array index instead of node index
* Fix endianess bool
* Add tests for endianess
* Fixed deserialization tests + circl issue
* Removed groupchecker iface
* Added back circl deserialization test (cloudflare/circl#499)
* Since Go 1.21 go mod tidy require the go directive to match the highest of our dependencies

---------

Co-authored-by: Kilian <79536516+K1li4nL@users.noreply.github.com>
Co-authored-by: Yolan Romailler <anomalroil@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants