add test vectors of IETF draft bls signature scheme#630
Conversation
267c662 to
a0f1caa
Compare
a0f1caa to
3f78056
Compare
6ff24de to
472294a
Compare
|
This can be merged after #629 |
302e0d5 to
91032d9
Compare
472294a to
ee6d49d
Compare
lehins
left a comment
There was a problem hiding this comment.
Aside from issue with SECP256K1_ENABLED flag this PR looks good
| exposed-modules: | ||
| Test.Crypto.Vector.Secp256k1DSIGN | ||
| Test.Crypto.Vector.StringConstants | ||
| Test.Crypto.Vector.Vectors |
There was a problem hiding this comment.
Moving this module out of this cabal flag will cause it to fail compilation if DSECP256K1_ENABLED is turned off.
I am not quite sure why it was developed behind a cabal flag, but we don't want to break it all of a sudden. I suggest we investigate whether we can remove this flag and make secp256k a permanent feature without ability to opt-out.
Although, that will have to be done in a separate PR.
| let result = | ||
| case uncheckedAggregateVerKeysDSIGN vKeys of | ||
| Left err -> Left err | ||
| Right avk -> verifyDSIGN ctx avk msg sig |
There was a problem hiding this comment.
| let result = | |
| case uncheckedAggregateVerKeysDSIGN vKeys of | |
| Left err -> Left err | |
| Right avk -> verifyDSIGN ctx avk msg sig | |
| let result = do | |
| avk <- uncheckedAggregateVerKeysDSIGN vKeys | |
| verifyDSIGN ctx avk msg sig |
| BLS12381MinVerKeyDSIGN, | ||
| DSIGNAggregatable (PossessionProofDSIGN), | ||
| DSIGNAlgorithm (SigDSIGN, SignKeyDSIGN, VerKeyDSIGN), | ||
| EcdsaSecp256k1DSIGN, |
There was a problem hiding this comment.
If we want this module to be always visible, then we need to hide all secp256k functionality behind SECP256K1_ENABLED CPP flag
If we are to preserve this flag we should really have a separate CI build with it disabled
Closes #626
This PR adds test vectors for our BLS signature implementation.