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

Bug in BLS fast_aggregate_verify test vector #1618

Closed
mratsim opened this issue Feb 13, 2020 · 2 comments
Closed

Bug in BLS fast_aggregate_verify test vector #1618

mratsim opened this issue Feb 13, 2020 · 2 comments

Comments

@mratsim
Copy link
Contributor

mratsim commented Feb 13, 2020

There is a doctored fast_aggregate_verify BLS test that is actually valid, probably the extra pubkey from here:

https://github.com/ethereum/eth2.0-specs/blob/8d9541e45e08b59d02c424d39893f16157ec0f85/tests/generators/bls/main.py#L116-L158

image

@mratsim
Copy link
Contributor Author

mratsim commented Feb 13, 2020

Similar to #1597

@mratsim
Copy link
Contributor Author

mratsim commented Feb 13, 2020

Actually looking into master it might already have been fixed, was confused about the re-release of v10.1 vectors from 2 weeks ago.

@mratsim mratsim closed this as completed Feb 13, 2020
mratsim added a commit to status-im/nim-blscurve that referenced this issue Mar 1, 2020
…ture scheme to draft standard (#36)

* Rework the readme

* Prepare transitioning to the new IETF API

* Delete obsolete README, add Cipher suite ID (BLS_SIG_BLS12381G2-SHA256-SSWU-RO-_NUL_)

* Stash BLS keygen implementation

* Implement CoreSign, CoreVerify and signature aggregation

* Implement CoreAggregateVerify

* Implement message signing/verification, proof-of-possession generation/verification, aggregate verification/fast aggregate verification

* add aggregate verify. Enforce proper usage of proofs at the API level for signature validation

* Implement key pair generator

* Move old test vectors, add Eth2 v0.10.0 test vectors

* Fix paths for the moved old test suite

* Add the spec overload that don't enforce proof-of-possessions usage. Needed for test vectors

* Prevent non constant-time comparison of secret-key (and comparison altogether)

* Add IO + fix types/API issues

* IO: include to allow accessing private fields

* Add (failing) signing test vectors

* Add hex dumps - the hex dumps are the same! (but comparison fails for unknown reason)

* Fix sign test by exporting an `==` proc

* Factor out common part of the tests

* Properly handle tampered signature in the test vector

* Add signature aggregation tests

* Add fast aggregate verify test (failing to wrong test - ethereum/consensus-specs#1618)

* Switch coreAggregateVerify to a streaming API to accomodate AoS SoA and interleaving proofs of possessions

* Add AggregateVerify test for both SoA and AoS API

* Comment out internal tests, skip buggy upstream test, add to nimble

* don't export init/update

* Add yaml testing dependency to CI

* Use NimYAML fork (flyx/NimYAML#77)

* YAML fix was not fully applied

* NimYAML update lost in the rebase/force push

* Hopefully fix NimYAML build issues

* same NimYAML fix on POSIX
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant