hydra
hydra copied to clipboard
Aggregated multi-signatures (using musig2)
What & Why
In our first implementation of the on-chain verification (https://github.com/input-output-hk/hydra-poc/issues/145), we did use non-aggregated signatures. That is, a list of signatures of each Head participant is used to certify correctness of the Head state. This is more verbose than necessary and scales bad with a growing number of participants, so closing and finalizing a Head is more expensive.
To address this, we have looked into various aggregated multi-signature schemes and decided to go with musig2 of which a proof-of-concept implementation was done at IOG: https://github.com/input-output-hk/musig2. While this requires some additional coordination work when creating signatures, verifying these signatures is possible off-the-shelf already with current versions of cardano-node and plutus.
Technical requirements
- Create a musig2 library
- Exchange nonces on off-chain network
- TBD: Do key registration interaction
TBD
- Wager this against other limitations