Closed
Description
Issue
We need to factorize the code that implements the protocol operations: key registration, clerk generation, ...
To do
- Create a common
Protocol Key Registration Builder
- Create a common
Protocol Clerk Builder
(compute avk, create multi-signature, verify single signature) - Create a common
Protocol Initializer Builder
(create single signature) - Use these new builders in:
- Aggregator: multi-signer
- Signer: single-signer
- Common: test setup of crypto helpers
- Common: MithrilStakeDistribution of entities (compute
next_aggregate_verification_key
) (see RefactorMithrilStakeDistribution
entity #967)
Ideas
Identify parts of crypto code that can be factorized between signer / aggregator / tests (see https://github.com/input-output-hk/mithril/blob/main/mithril-common/src/crypto_helper/tests_setup.rs#L105)