Lets assume that there is a decentralized network $N$ with participants $A,B,C, D$ and that there was a message $m$ that all of $A,B,C,D$ agreed to. An outsider $X$ wants to know via signatures that $m$ was indeed agreed to by all of $N$.

Is there a way of combining the signatures of $A,B,C,D$ such that $X$ just has to check one signature? So if $m$ arrives at $A$ first, then $B,C, D$ they sign $D(C(B(A(m))))$ which would translate into $N(m)$ which $X$ only had to check once regardless of the order of $A,B,C,D$ in $D(C(B(A(m))))$? Is there any literature on this or does such an algorithm not exist (yet)?


You can have a look at Collective Signatures for example, which is, in a nutshell, the addition of multiple schnorr signatures resulting into a unique aggregated signature. The verifier needs to know only of one public key in order to verify such as signature, which is the aggregate public key of all participants. Have a look also at MuSig for a more recent work applying this concept for Bitcoin with a twist.

Here it is important to note that you did not specify you threat model. If you assume all participants are present and honest during the signature generation, everything is so easy. When you start introducing some malicious adversaries, then things will get a bit more messy ;)

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.