EcVrfSigner trait support consumable preproofs #77
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
We make the EcVrfSinger trait consume
self
instead of borrow&self
, so then in future it can work on preprepared proof types, where the proof should be consumed and destroyed once used.We have a problem if we want to do this with the proofs generated elsewhere though: How do you ensure deletion of something serializable? We'd maybe compute the blinding factor using a key exchange run before the proof is generated, so then the signer device enforces the limit.
We maybe do not care though since parity vault always runs on fairly hefty devises, like androids or iphones, so then this change alone permits a direct implementation of session types that prevent reuse. It's only maybe kampela that's problematic here.