Uh oh!
There was an error while loading. Please reload this page.
VRF crate - #1794
Conversation
tarcieri
commented
Mar 13, 2025
For a crate name, |
newpavlov
commented
Mar 13, 2025
We could ask in the |
carloskiki
commented
Mar 13, 2025
Yes, the maintainers seem active on github. If we decide to try getting the name |
carloskiki
commented
Mar 16, 2025
Otherwise, we could abuse the |
| @@ -0,0 +1,26 @@ | |||
| use digest::{Output, OutputSizeUser}; | |||
| pub trait Proof<H> | |||
There was a problem hiding this comment.
If this is intended to be pi in RFC9381 parlance it would be nice to note that in the rustdoc and also, what about serializing/deserializing pi itself?
There was a problem hiding this comment.
Yes, I did not write any doc comments yet, because I'm not sure about the design and I want my ideas to mature a bit. But indeed, this is pi, which means we should be able to serialize and deserialize it. This would be similar to SignatureEncoding in the signature crate.
Having both crates being so similar makes we wonder whether we really need a new crate for this. Using the Signer trait to serve as a Prover is an abuse of language, but both traits are the same semantically and the Verifier trait would be identical in both crates. SignatureEncoding also maps to vrfs because we need encoding/decoding for the proof. The only thing we are missing from the signature crate would be a way of hashing the proof (VRF_proof_to_hash in RFC9381).
tarcieri
commented
Mar 18, 2025
Yes, traits from the The nice thing about a separate crate is it could have stricter bounds which would make things a bit easier to use. Instead of having to bound on |
After some time off, I think what we should do is use the A question I would like answered: should we add VRFs as a module in |
tarcieri
commented
Apr 24, 2025
Since |
tarcieri
commented
Jul 20, 2025
FYI: the |
carloskiki
commented
Jul 20, 2025
Indeed. I was thinking we could group vrf, oprf, voprf, etc. under a |
carloskiki
commented
Jan 3, 2026
I will close this for the moment, as I don't have plans to make this move forward in the immediate future. |
tarcieri
commented
Jan 3, 2026
@carloskiki FWIW I have intended to eventually get around to this, but probably some time after we've done new stable releases of everything else |
Adding traits for Verifiable Random Functions. See #1728.
The
vrfname oncrates.iois taken. The current crate under this name seems unmaintained, the last commit being 3 years ago.The exact structure of the traits is not defined yet, I'm mostly looking for some input until we resolve the crate name and have some confidence that we have a good interface.