Skip to main content
. 2017 Sep 14;17(9):2117. doi: 10.3390/s17092117
Algorithm 2: The MSign algorithm in IBMSCR−2.
Input: the master public key mpk, the private key sk, the identity set IDSet, the message to be signed m;
Output: a multi-signature mσ.
  1. Each MSi randomly selects riZN* and calculates Ri=ri3(modN) and ti=h2(Ri).
  2. Each MSi broadcasts ti to co-signers MSj (ji).
  3. After obtaining ti from MSi, MS1 broadcasts R1 to other MSi.
  4. After receiving Ri from other signers, MS1 checks whether ti=h2(Ri) for 2in is satisfied.
  5. If one of these fails, the algorithm stops, which means the attackers have mixed invalid partial signatures. Otherwise, MS1 sets R=i=1nRi(modN), w=h3(RIDSetm), and u1=r1·sk1w(modN).
  6. S1 broadcasts u1 to other MSi.
  7. After receiving ui from MSi, MS1 aggregates these by u=i=1nui(modN).
  8. Each MSi locally generates a multi-signature mσ=(w,u).
Return mσ;