
海量的数字签名没地方存储?试试聚合签名
海量数字签名数据如何进行高效存储和验证?能否对来自多个参与方的签名实现数据聚合压缩?如果每个参与方使用不同的签名私钥对不同消息进行签名,聚合签名技术是否依旧可以支持?聚合签名技术使用过程中又有哪些值得警惕的风险?
伴随着经济数字化转型深入,以区块链技术为代表的多方协作技术逐渐普及,如何验证承载着多样化价值的数据有效性早已成为全行业的普遍需求。满足这一需求的关键是引入各式各样数字化契约,而支持契约中数字签名高效验证则是关键中的关键。
海量数据带来了海量数字契约,海量数字契约也进一步带来了海量数字签名,由此难免遇到数字签名数据飞速增长、验证效率不断下降的困扰。
以区块链应用为例,一般情况下,在区块链节点共识过程中,所有节点都需要对整个区块进行签名,并将相关数据,如区块数据、节点公钥、签名数据存储在区块中。随着应用使用量增加,签名相关存储数据也会不停增长。不同于传统应用,链上数据在理论上只增不减,而海量签名带来的海量数据,对于数据存储、网络传输、签名验证都是巨大负担。
在保证海量签名数据可验证的前提下,对数字签名数据进行聚合压缩,其具体技术如何实现?聚合签名在提升系统效率的同时,有没有带来额外风险?且看本文对此逐一解析。
聚合签名的高效性
一个典型的数字契约一般包括消息原数据、公钥、签名三部分。用户通过公钥确认签名者身份,通过数据确认契约内容,从而来认证数字契约的有效性。
对应地,聚合签名的主要设计目标是将多个签名数据压缩合并成单个聚合签名。验证者通过所有签名相关的数据和公钥组成的列表对单个聚合签名进行验证,若验证通过,其效果等同于对所有相关签名进行独立验证且全部通过。
一般情况下,聚合签名产生的签名数据(不包括消息原数据和公钥列表)具有大小固定的特性,即无论有多少原始签名,聚合后签名数据的大小总是恒定的。
聚合签名可以有效降低存储空间和验证过程中网络流量成本,尤其对签名频次较低但验证频次较高的业务场景有显著效果。
回到区块链节点共识应用场景,当前大多数联盟链共识采用ECDSA签名算法。针对区块数据,每个节点用自身私钥生成独立的数字签名,并广播给其他节点。其他节点会验证该签名,并将其写入下一区块数据中。
使用这种方式,当共识节点数较多时,会导致每轮共识区块存储的签名数据不断增加,占用存储空间。每当新节点加入网络,需要同步历史区块时,大量签名数据会对网络带宽造成不小的挑战。
聚合签名方案可以在一定程度上解决以上问题。相比直接保存多个独立签名,使用聚合签名技术后,每个节点会收集其他节点广播的聚合签名分片,然后将签名分片聚合保存。这样,当新节点加入时,同步历史区块只需下载聚合后的签名数据,大大减少对网络带宽的占用。
除了数据存储和传输效率提高,当被聚合的数字签名数量足够大,理论上也能提高签名验证的计算效率。聚合签名方案的实际性能与其具体构造方式密不可分,下面我们将以目前最常用的Schnorr与BLS聚合签名为例,介绍其构造细节。
Schnorr和BLS聚合签名构造
根据不同聚合能力,以及是否支持对不同消息产生签名进行聚合,常见的聚合签名方案可以分成以下两类:
-
只能对同一个消息使用的不同签名进行聚合,即甲、乙、丙三方对同一份合同A签名,期间产生的三个签名可以合并成一个聚合签名。其典型的构造方案是Schnorr聚合签名,此类构造方案也常被称为多重签名方案。
-
可以对不同消息使用的不同签名进行聚合,即甲对合同A签名、乙对合同B签名、丙对合同C签名,三个不相干的签名可以合并成一个聚合签名。其典型的构造方案是BLS聚合签名。
Schnorr聚合签名
Schnorr聚合签名可以看作一类椭圆曲线上数字签名方案的扩展,其基本构造方式如下:
使用Schnorr聚合签名的交互过程如下:
值得注意的是,相比经典数字签名,Schnorr聚合签名多了交互随机数和聚合签名过程,同时这里所有签名均是对同一个消息进行签署。
BLS聚合签名
有别于Schnorr聚合签名,BLS聚合签名额外引入了双线性映射,其具备以下特性:
该特性是BLS聚合签名实现对多个不相关的数字签名聚合的关键,其基本构造方式如下:
使用BLS聚合签名的交互过程如下:
通过引入双线性映射,BLS聚合签名打破了签名所对应的消息必须是同一个的限制,由此可灵活地支持各类签名聚合需求。同时BLS在聚合过程中交互较少,无需交换随机数的过程,可以有效减少网络传输带来的性能损耗。
但是,双线性映射带来神奇特性的同时,也提升了计算成本。但目前已知的双线性映射构造复杂,计算性能在工程实现上慢了几个数量级。
Schnorr聚合签名和BLS聚合签名各有所长。在聚合能力上,BLS占优,在计算性能上,Schnorr占优,两者具体比较与使用注意事项将在下节中展开。
聚合签名的使用注意事项
聚合签名的性能
聚合签名的首要设计目标是压缩签名数据,节省数据存储和网络传输成本。对现有计算机系统,I/O耗时通常是关键性能瓶颈,所以此项优化通常可以提升验证海量签名数据的整体吞吐量。
一般情况下,假定安全参数(参见第3论)为256位,对于Schnorr聚合签名,其典型的签名数据为一个聚合后的点和数,大小恒定为64字节,对于BLS聚合签名,其典型的签名数据为椭圆曲线上压缩后的一个点,大小恒定为33字节。
除了吞吐量之外,验证数字签名的延时通常也是重要性能指标,但这不是聚合签名的强项,以下给出一些基于开源代码实现的实测性能比较结果。
对于Schnorr聚合签名,尽管其验签的理论复杂度比ECDSA签名低,但由于在验证时需要使用公钥列表进行聚合,其性能并没有明显提升;另一方面,在签名过程中,Schnorr聚合签名多了一些交互流程,性能接近但也不及ECDSA签名。
对于BLS聚合签名,由于使用了构造复杂的双线性映射,各项计算性能均显著低于ECDSA签名。同时,双线性映射目前缺乏对应的硬件加速,软件优化也不是很成熟,这种状况可能在未来会得到改善。
聚合签名的国密化
国密化支持是当前密码技术应用的热点方向,然而我国密码行业标准化技术委员会目前发布的标准,尚未明确规定建议使用的聚合签名算法。
我们需要根据现有的国密技术规范,提炼出聚合签名所需的密码学原语,基于标准方案进行适配构造,具体如下:
-
椭圆曲线公钥密码算法:GM/T 0003.5-2012《SM2 椭圆曲线公钥密码算法第4部分:公钥加密算法》
-
消息摘要算法:GM/T 0004-2012《SM3密码杂凑算法》
-
双线性映射:GM/T 0044.5-2016《SM9 标识密码算法 第5部分:参数定义》
聚合签名的安全风险
无论是Schnorr还是BLS聚合签名,在设计过程中都提供了理论证明——即便聚合了海量签名,最终产生单个聚合签名的安全性,都与聚合前的经典数字签名安全性相当。
但是,相比原来只有单方计算的经典数字签名,聚合签名计算过程涉及多方交互,一旦参与聚合的任一方有意作恶,恰逢不安全的工程实现,难免会引发额外的安全风险。
以Schnorr聚合签名为例,一些工程实现为了减少交互成本,在关键的随机数交互过程中,采用预计算方式初始化随机数。然而,如果攻击者不遵守协议约定,构造恶意的特殊数据作为随机数,可能会造成其他用户的密钥泄露。
类似地,对于BLS聚合签名,一些工程实现为了提升计算效率,使用不安全的曲线组合来构造双线性映射,从而破坏了聚合签名算法的整体安全性,进而泄露用户密钥。
预防这些安全风险的关键在于,聚合签名的工程实现应严格按照论文或标准中的算法流程和推荐参数设置,切记不要为了优化性能而引入严重的安全风险。
总体而言,聚合签名为多方协作场景提供了一种节省存储空间和验证过程中的网络流量、提升批量数字签名验证性能的解决方案。
不同的聚合签名针对不同规模的数据量、不同业务领域均具备独特优势,其基础技术选型可以参考下图:
正是:海量契约验证难胜任,聚合签名一键理万机!
通过对多个用户生成的签名进行聚合压缩,聚合签名大幅提升数字签名存储、传输、验证效率,使得海量数字契约中的海量数字签名得以高效验证。
除了本文介绍的Schnorr和BLS聚合签名,基于双线性映射、同态加密或同态性等密码学原语,还可以构造出其他聚合签名方案,比较知名的方案有CL聚合签名、IBAS基于身份的聚合签名等。根据具体的业务需求,选用合适方案,可以显著提升数字签名的使用效率和系统的整体扩展性。
来源:微众银行区块链
比推快讯
更多 >>- 巨鲸 James Wynn 发布账户数据:总体盈利 5000 万美元,最大回撤达 84.34%
- 马斯克的 DOGE 团队在美国政府推广 Grok AI 引发担忧
- 慢雾 CISO:警惕 “提现验证码”骗局,已有受害者损失 1110 万美元
- Sui:支持 Cetus 升级协议但将放弃投票,要求 Cetus 必须全额赔付用户
- 以太坊现货 ETF 昨日总净流入 5862.95 万美元,持续 6 日净流入
- Cathie Wood:股市将成为特朗普总统政策的最大受益者
- 特朗普在 $TRUMP 晚宴上使用总统印章,引发争议
- 日方有意在 6 月 G7 峰会前与美国达成关税协议
- RootData:GUN 将于一周后解锁价值约 401 万美元的代币
- 投资银行 Clear Street 扩大区块链与数字资产部门
- 某巨鲸/机构今日通过 Wintermute 加仓买入价值 1500 万美元的 AAVE
- 国家网信办持续深入整治网上金融信息乱象
- Roam 发布 Premium eSIM,集成语音通话、短信与流量功能
- 数据:Hyperliquid 平台鲸鱼当前持仓 68.41 亿美元,多空持仓比为 0.98
- ai16z 创始人:为个人代理项目招聘一名 Solana 程序开发人员,合作期 1-2 个月
- 纽约时报披露特朗普晚宴宾客:含 Wintermute、Delphi Digital 等公司创始人
- 美国 30 多名众议院议员呼吁对特朗普的 Meme 币晚宴进行调查
- 某新建地址 13 小时前买入 123 万枚 SPX
- Stacks 网络区块生成延迟,Upbit 暂停 STX 充提业务
- 大多数 TRUMP 晚宴参与者在赴宴时已不再持有 TRUMP
- 跨境电商 DDC Enterprise 已购入首批 21 枚 BTC,拟未来几天再次购入 79 枚 BTC
- 数据:特斯拉的比特币持仓价值已升至约 12.4 亿美元
- ZachXBT:无法接受 Cetus 只愿意悬赏 500 万美元寻找黑客
- 过去 24 小时全网爆仓 6.76 亿美元,主爆多单
- 蚂蚁国际成为香港首个使用汇丰银行代币化存款服务的企业客户
- 巨鲸 James Wynn 割肉平仓 ETH 与 SUI,继续加仓 BTC
- 昨日富达 FBTC 净流出 7370 万美元,灰度 GBTC 净流出 8920 万美元
- 美股收盘:三大股指均收低
- SEC 正审查关于上市和交易纳斯达克 Bitcoin 指数期权提议
- 策略师:关税威胁再起,市场这回比较淡定了
- Polygon联合创始人Mihailo Bjelic宣布退出项目,称愿景分歧
- 数据:今日现货比特币 ETF 总交易量超过 45 亿美元
- WalletConnect 代币扩展到 Solana,并将空投 500 万枚 WCT
- 特朗普宣布对欧盟加征50%关税,推动产业回流
- 特朗普:若欧盟开始转向美国,可能会讨论推迟对其征税
- 预测市场 Kalshi 增加对 Solana 存款的支持
- 金融时报:甲骨文将斥资400亿美元购买英伟达芯片,用于OpenAI在美国的新数据中心
- Celestia 宣布集成 Hyperlane 为其原生互操作性解决方案
- 2025 年内企业比特币购买量 205,507 枚,超新增供应量 3 倍
- 综合格斗运动员 Conor McGregor 暗示将竞选总统,承诺将比特币纳入欧洲资产负债表
- David Sacks 将出席 Bitcoin 2025 大会,与 Winklevoss 兄弟同台
- 美国财长:主权财富基金计划已暂停
- Ledn 转向完全托管、仅支持比特币的贷款模式,消除客户资产借贷风险
- Alchemy 收购无代码 NFT 启动平台 HeyMint,本月内完成第二次收购
- 某鲸鱼清仓 TRUMP 和 FARTCOIN,获利 20 万美元
- 美国财长:预计接下来几周将达成几项重大贸易协议
- 美乌矿产协议正式启动
- 市场消息:预测市场 Kalshi 将支持加密货币存款
- 分析师:特朗普声明可能仅是“谈判策略”而非实际政策,但比特币对宏观消息十分敏感
- TokenFi 推出符合监管要求的 RWA 代币化平台
比推专栏
更多 >>观点
比推热门文章
- 马斯克的 DOGE 团队在美国政府推广 Grok AI 引发担忧
- 慢雾 CISO:警惕 “提现验证码”骗局,已有受害者损失 1110 万美元
- Sui:支持 Cetus 升级协议但将放弃投票,要求 Cetus 必须全额赔付用户
- 以太坊现货 ETF 昨日总净流入 5862.95 万美元,持续 6 日净流入
- Cathie Wood:股市将成为特朗普总统政策的最大受益者
- 特朗普在 $TRUMP 晚宴上使用总统印章,引发争议
- 日方有意在 6 月 G7 峰会前与美国达成关税协议
- RootData:GUN 将于一周后解锁价值约 401 万美元的代币
- 投资银行 Clear Street 扩大区块链与数字资产部门
- 某巨鲸/机构今日通过 Wintermute 加仓买入价值 1500 万美元的 AAVE