多重数字签名算法

本文介绍了数字签名的概念,包括Hash函数、公钥私钥的原理。重点讲解了数字签名的过程,以及多重数字签名技术如何实现多人对同一资产的签名权。文中提到了近期密码学领域的多重签名算法研究进展,如MuSig、DG-CoSi和BLS短签名算法,这些方案提高了签名效率和区块链的容量。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

什么是数字签名?

数字签名就是附加在数据单元上的一些数据,或是对数据单元所作的密码变换。

这里的数字签名,不是简单的把纸质的签名改为电子签名,我们需要知道的是,数字签名包含两点:一是保证信息传输的完整性,防止其在途中被篡改;二是保证发送者的身份认证,防止其抵赖。在学习数字签名之前,我们先介绍几个概念:

Hash(哈希)函数

Hash函数,音译为哈希函数,又叫散列函数或杂凑函数。它可以将任意长度的消息M映射为固定长度的摘要H(M),也叫散列值,哈希值或杂凑值。哈希函数有三大特点:

1. M1不等于M2,则H(M1)不等于H(M2);

2.单向性,即已知H和H(M),反推出M在计算上是不可行的;

3.无碰撞性,即对于M1和H(M1),找到M2使H(M2)=H(M1)在计算上不可行(弱碰撞性);任意两个M1,M2(不相等),使得H(M1)=H(M2)在计算上不可行(强碰撞性)。

所谓计算上不可行,是由计算复杂度理论来说的,即对于该运算不存在一个多项式时间算法,计算不可行是哈希函数的安全性基础。

公钥(私钥)

公钥与私钥是通过某种密码学算法得到的一个密钥对(即一个公钥和一个私钥),公钥是密钥对中公开的部分,私钥则是非公开的部分,通过这种算法得到的密钥对能保证在世界范围内是唯一的。使用这个密钥对的时候,如果用其中一个密钥加密一段数据,必须用另一个密钥解密。

数字签名算法

接下来,我们再来看数字签名的过程:由发送者把要签名的信息作哈希运算,得到一段别人无法伪造的并且长度固定的数据摘要。发送者用自己的私钥把数据摘要加密成数字签名,并将其与信息一起发送给接收者。接收者收到信息和数字签名后,对信息作Hash运算得到报文的数据摘要,用公钥把数字签名解密为数据摘要。比较这两份数据摘要,如果相同则签名有效,否则签名无效,这样就可以确定信息的真实来源。

多重数字签名算法

多重签名技术(multisi

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值