环签名指的是在r个公钥中隐藏自己拥有私钥的那个公钥,支持在区块链上隐藏交易发送人(地址/公钥)。
环签名
假定要签名的消息为m,s为签名者,其公钥为
计算环签名
- 获取对称加密秘钥:首先,签名者计算对称密钥k,即是要签名的消息m的散列:
(一个更复杂的计算k=h(m,,…,
);然而,上面更简单的计算也是安全的。)
- 选择一个随机的粘合值v:其次,签名者从{0,1}
中随机均匀地取v值。
- 选择随机数
:
,并且
- 计算
:
通过假设,给定其它输入的任意值,对于满足方程的有一个唯一的值,该值可以有效地计算出来。
- 计算
:
- 计算得到环签名:
消息m的环签名,是一个2r+1元组
验证
- 首先,对于i = 1,2,…,r为验证者计算
- 获取对称加密秘钥:首先,签名者计算对称密钥k,即是要签名的消息m的散列:
3.验证环签名