1. 引言
见Dan Boneh等人2023年论文《Accountable Multi-Signatures with Constant Size Public Keys》。
多签方案用于,将多方对同一消息 m m m的多个签名,聚合为对 m m m的单个短签名。
多签方案应用广泛,尤其是在proof-of-stake共识协议中。
现有的多签方案中,Verifier需要所有签名者的公钥,以验证这些签名者中任意子集的多签签名。
本文中构建了一种具有如下3大属性的新的实用责任制多签方案:
- 1)属性一:Verifier仅需要存储某constant size 公钥,就可验证所有签名者任意子集的多签签名。
- 2)属性二:聚合后的签名大小为constant,与参与签名的签名者集合大小无关。
- 3)属性三:签名者在本地生成其签名私钥,无需引入分布式密钥生成协议。
现有的责任制多签签名方案可满足属性二和三。而新引入的属性一,可将Verifier所需的内存,由原来的与所有可能签名者数量呈线性关系,大幅降低为,constant。
本文提供了2个基于pairing的实现方案:
- 1)方案一:基于random oracle model的满足以上3个属性的责任制多签签名方案。
- 2)方案二:基于plain model的满足以上3个属性的责任制多签签名方案。
若可放松对属性三的要求,即引入简单的分布式密钥生成协议,可进一步改进满足属性一和二 前提下的方案性能。对于对属性三放松要求的情况下,本文提供了2个方案:【即“relaxed 属性三”为:签名者在本地生成其签名私钥,需引入一个简单的分布式密钥生成协议。】
- 1)方案一:基于pairing的满足以上属性一和二,以及“relaxed 属性三” 的责任制多签签名方案。
- 2)方案二:基于lattice的满足以上属性一和二,以及“relaxed 属性三” 的责任制多签签名方案。
所谓accountable multi-signature(责任制多签签名)方案,主要包含:Setup、LocalKeyGen、KeyAgg、Sign、SigAgg、Vf、Trace这几个算法:
现有的基于pairing的多签签名方案对比为: