区块链中的数学(六十一)---BLS m of n门限签名

欢迎关注“blocksight”公众号,获取更多内容。原文链接https://mp.weixin.qq.com/s/Vm9v3Jd_sy82yNleVatQWQ
CSDN Markdown显示有点问题。

写在前面

本文接着前一篇BLS密钥聚合,讲下原始的聚合密钥签名可能出现的问题,需要一些背景知识铺垫,以Schnorr签名为例来说明,对此不熟悉的可先参考相关文章:Schnorr签名与椭圆曲线Schnorr密钥聚合

密钥消除攻击

Schnorr密钥聚合一文中,是最简单的聚合方式,现在可以进一步说下了。
这种方式的前提是要求参与者都是诚实的,实际实现中要加入额外的公钥验证,否则会出现安全问题。
下面说下可能的安全问题:
假设有两个参与者A和B,P_A, P_B分别是二者的公钥。
假设B不诚实,参与密钥聚合过程中,提供假的公钥P_{FB} = P_B - P_A, 导致聚合公钥:
P = P_A + P_{FB} = P_A + P_B - P_A = P_B
这样就控制了聚合公钥成为自己的公钥,从而只用B自己的签名来覆盖A的签名,本来需要A,B共同签名的交易,现在只要B单独签名(伪造聚合签名)就可以了。
这种攻击可称为“密钥消除攻击”,亦属于“Rogue Key Attacks”。

简单的解决方案是在密钥聚合操作中,参与者提供公钥所有权证明,即签署任意消息,但这会增加交互过程,如果这个所有权证明也放到区块链上,增

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值