BlockstreamResearch / bip-frost-dkg

49 stars 14 forks source link

Optimizations in recover() #18

Closed real-or-random closed 9 months ago

real-or-random commented 9 months ago

Currently, chilldkg_recover really just replays the transcript, i.e., it calls _round1, _round2, etc. This is simple, but it does many redundant computations.

We could instead write a specialized recover that computes only what's necessary. In particular, PoKs don't need to be checked (or even included in the transcript).

Before we go that route, we'd probably need to factor out some more routines out of the _round1, _round2, etc. to avoid code duplication.