After considering some problems detailed in #36, it became apparent that full identifiable aborts will require all messages to be broadcast.
This PR changes the frost and cmp protocols to use broadcast when available
In particular this addresses #60.
The issue of having the BroadcastRound interface be inherited by subsequent round is not an issue, since we actually need to broadcast a message in all rounds now. In the future, it may be a good idea to embed round.BroadcastRound inside of round.Round directly.
We also fix a bug that could have occurred when messages were put in the queue.
After considering some problems detailed in #36, it became apparent that full identifiable aborts will require all messages to be broadcast. This PR changes the
frost
andcmp
protocols to use broadcast when availableIn particular this addresses #60.
The issue of having the
BroadcastRound
interface be inherited by subsequent round is not an issue, since we actually need to broadcast a message in all rounds now. In the future, it may be a good idea to embedround.BroadcastRound
inside ofround.Round
directly.We also fix a bug that could have occurred when messages were put in the queue.