前言
在密码学中,环签名是一种数字签名,其可以由每个具有密钥的一组用户的任何成员完成。因此,使用环签名签名的消息由特定人群中的某一人签署。环签名的一个安全属性是若要确定哪个组成员的密钥用于产生签名在计算上是不可行的。环签名与群签名类似,但在两个关键方面有所不同:
1. 无法撤销单个签名的匿名性;
2. 任何用户组都可以作为一个组使用,无需额外设置。
环签名技术由Ron Rivest, Adi Shamir, 和 Yael Tauman发明的,于2001发表出来的。环签名得名于其环状结构签名算法。
对于区块链方面多技术,我还是建议大家多看英文文档,多利用Google来搜索技术文章。
怎么搭建自己专属V-P-N来访问Google,请看我之前发的文章: 新人如何快速搭建自己的个人网站以及自己专属V-P-N代理
定义
假设有一组用户,每个人都有公钥和私钥对,(P1, S1), (P2, S2), …, (Pn, Sn)。用户i可以基于消息m计算一个环签名σ ,输入参数为(m, Si, P1, …, Pn)。如果给定参数σ, m以及所有的公钥(P1, …, Pn),任何人都可以检查该环签名的合法性。如果环签名是正确的,那么它应该可以通过刚才的验证。另外,如果没有当前用户组中任何一个用户的私钥,任何人应该是不太可能基于任何组消息来创建一个合法的环签名。

环签名满足的性质
无条件匿名性:攻-击-者者无法确定签名是由环中哪个成员生成,即使在获得环成员私钥的情况下,概率也不超过1/n。
正确性:签名必需能被所有其他人验证。
不可伪造性:环中其他成员不能伪造真实签名者签名,外部攻-击-者者即使在获得某个有效环签名的基础上,也不能为消息m伪造一个签名。
环签名实现:
(1)密钥生成。为环中每个成员产生一个密钥对(公钥PK

环签名是一种数字签名技术,允许一组用户中任意一人进行签名,而难以追踪到具体签名者。本文介绍了环签名的概念、特性,以及Python实现环签名的步骤,强调了其在区块链中的应用和匿名性的重要性。
最低0.47元/天 解锁文章
2101

被折叠的 条评论
为什么被折叠?



