Conversation
davxy
left a comment
There was a problem hiding this comment.
Given that:
ark-vrf0.3 will not be published to crates.io until the research team delivers a proof for the implemented schemes.- As a result, if this PR is merged,
verifiablecannot be published to crates.io either, since it depends on a GitHub source.
It would be preferable to delay merging this until point (1) is resolved and the target branch is main. In the meantime, this work can remain on a separate branch (e.g., multi-io-proof) until it is ready to be merged.
| #[derive(CanonicalSerialize, CanonicalDeserialize)] | ||
| struct RingVrfMultiContextSignature<S: RingSuiteExt> { | ||
| outputs: Vec<ark_vrf::Output<S>>, | ||
| proof: ark_vrf::ring::Proof<S>, | ||
| } |
There was a problem hiding this comment.
Perhaps - before merge - we can think about using the MultiContextSignature for normal proofs as well. In the end a normal proof is just a multi proof with len = 1 and we avoid repeating al the code
There was a problem hiding this comment.
Was there a reason why the RingProof and Signature are enforced to be arrays of the constant length?
There was a problem hiding this comment.
If it's ok to have Vec then I'd agree that it'd be cleaner and then create might just reuse create_multi_context and validate will reuse validate_mutli_context impl
There was a problem hiding this comment.
Was there a reason why the RingProof and Signature are enforced to be arrays of the constant length?
The reason is that these types have fixed length when encoded. So, I'd say simplicity? I also imagine to avoid allocating in the heap
There was a problem hiding this comment.
So should I replace the RingVrfSignature with RingVrfMultiContextSignature? I think it's for you to decide as I'm far less familiar with the requirements for this library
There was a problem hiding this comment.
I think that for now we can keep these separated. We'll need to decide before merge and we have time
|
As we discussed today, we can:
For Crates-io release it is possible to publish a Release Candidate, if you append |
Integrates davxy/ark-vrf#79
Resolves #33