【区块链与密码学】第8-1讲:什么是环签名?

环签名(Ring signature) 参考自 环签名指的是在n个公钥中隐藏自己拥有私钥的那个公钥,具体应用就在于区块链上隐藏交易发送人(地址/公钥)。 准备 首先定义以下函数,其中EkE_{k}Ek​为对称加密算法,k为EkE_{k}Ek​对应的对称密钥 Ck,v(y1,y2,…,yn)=Ek(yn⊕Ek(yn−1⊕Ek(⋯⊕Ek(y1⊕v)… )))=v{\displaystyle C_{k,v}(y_... 阅读详情

【本课堂内容全部选编自PlatON首席密码学家、武汉大学国家网络安全学院教授、博士生导师何德彪教授的《区块链与密码学》授课讲义、教材及互联网,版权归属其原作者所有,如有侵权请立即与我们联系,我们将及时处理。】

8.1环签名的概念

问题的提出

2001年,Rivest、Shamir和Tauman在How to Leak a Secret一文中提出了如下问题:

Bob是一个内阁成员,他想向记者揭露首相贪污的情况,他要使记者确信此消息来自一个内阁成员,同时又不想泄露自己的身份(保证匿名性),以免遭到首相报复。

Bob不能通过用一般的数字签名把消息传给记者,因为虽然记者会相信这个消息来自内阁成员,但同时会暴露B的身份。

Bob也不能通过一般的匿名方式把消息传给记者,因为虽然Bob的身份不会暴露,但记者不能确信消息来自一个内阁成员,没有理由相信消息是真实的。

群签名也不能解决这个问题,因为群签名的生成需要群成员的合作, 群管理者可以打开签名。如果群管理者受到首相的控制, Bob的身份就会暴露。

在此背景下,Rivest, Shamir和Tauman提出了环签名的概念,并提出一种新型的基于RSA的环签名算法,通常被视为第一个环签名算法。

环签名可以很好地解决以上问题,所有的内阁成员构成一个环,Bob把消息经过环签名后传给记者,在不暴露Bob身份的前提下记者可以通过验证环签名的正确性,确信签名来自一个内阁成员。

环签名的定义

环签名的概念是2001年Rivest,Shamir和Tauman三人提出的签名者模糊的数字签名。

在环签名生成过程中,真正的签名者任意选取一组成员(包含它自身)作为可能的签名者,用自己的私钥和其他成员的公钥对文件进行签名。签名者选取的这组成员称作环(Ring),生成的签名称作环签名(Ring Signature) .环签名主要包含以下三个算法:

密钥生成Gen(PPT算法):输入安全参数κ,为每一用户生成公私钥对(,),1 ≤ i ≤n;

签名Sign (PPT算法):输入消息m,一组公钥L={,,…,}及签名者的私钥,输出对m的签名R;

验证Verify (确定性算法):输入(m,R),输出「True」或「False」。

环签名特点

签名者利用自己的私钥可以将签名中的一系列值首尾相连,环签名因其签名值由一定的规则组成一个环而得名;

没有群体建立过程,也无特殊的管理者; 

不需要预先加入和撤出单个群体,群体的形成根据需要在签名前由签名人自己指定,是一种自组织结构; 

不能追踪签名人身份,能通过验证确定签名者是其中某一人,但无人能指出具体是哪一位成员。

环签名的安全性

正确性:按照正确的签名步骤对消息进行签名,并且传播过程签名不被篡改,则环签名满足验证等式。

无条件匿名性:攻击者即便非法获取了所有环成员的私钥,他能确定出真正签名者的概率不超过1⁄r,r是环中成员(可能的签名者)的个数。

不可伪造性:环中其他成员不能伪造真实签名者的签名,攻击者即使在获得某个有效环签名的基础上也不能以不可忽略的优势成功伪造一个新消息的合法签名。

环签名与群签名的比较

管理系统:环签名中没有管理者,环中成员地位平等;群签名有一个群管理者,为群中其他成员分发密钥。

匿名性:两者都是一种个体代表群体签名的体制,达到签名者匿名的作用。环签名具有无条件匿名性,任何人都不知道真正的签名者是谁;群签名中,签名可以由群管理者打开,确定真正的签名者,保证了签名的可追踪性。

组织结构:环签名是一种自组织结构,真实签名者使用其他环成员的公钥时不需要他们的同意,环成员可以任意离开、加入;群签名中成员相对固定,群成员离开、加入群时密钥需要改变。

今天的课程就到这里啦,下节课我们将开始学习经典的环签名算法,敬请期待!

同学们可以关注点宽学园,每周持续更新区块链系列课程,小宽带你进入区块链世界。我们下节课见啦。

【区块链与密码学】课堂回顾:

区块链与密码学系列文章合集

 

环签名技术 AOS/Borromean 环签名技术 环签名是一种签名技术,直白来说,通常是有一组公钥,签名方知道一组公钥中某一公钥所对应的私钥(只需知道一个即可)。这样,他就可以使用这一组公钥和那个对应的私钥生成一个环签名。验证者可以验证确实是这组公钥中某个私钥的拥有者生成的环签名,但是却不知道是哪个公钥对应的私钥。 环签名的一个典型的应用场景是匿名举报。在一个组织内,组织内的举报人可以使用其他成员的公钥联合自己的公私钥对一次举报进行签... 阅读详情

相关推荐

区块链技术之环签名

密码学中,环签名是一种数字签名,其可以由每个具有密钥的一组用户的任何成员完成。因此,使用环签名签名的消息由特定人群中的某一人签署。环签名的一个安全属性是若要确定哪个组成员的密钥用于产生签名在计算上是不可行的。环签名群签名类似,但在两个关键方面有所不同: 1. 无法撤销单个签名的匿名性; 2. 任何用户组都可以作为一个组使用,无需额外设置。 环签名技术由Ron Rivest, Adi...

yuxinqingge的博客 4534

一文读懂区块链隐私技术系列之环签名

在匿名币中隐私保护方案中,使用到的密码学技术有环签名Ring Signature)、同态加密、零知识证明、其他签名等等技术。

FeelTouch Labs 2991

解密区块链中的密码学

在这片文章中,我们总结了区块链会用到的一些密码学原语,那什么是密码学“原语”? 不同于操作系统的“原语”概念,(注:操作系统原语是操作系统或计算机网络用语范畴。是由若干条指令组成的,用于完成一定功能的一个过程,具有不可分割性。)密码学原语强调的是“动机”,可以简单理解为:你想做什么事情?比如“加密”、“签名”是个原语,“密钥交换”、“零知识证明”也是个原语。 位于第一层阶层的原语可能一共有十...

宽客在线的博客 6818

环签名学习笔记

①一般的数字签名会暴露成员身份。②一般的匿名方式不能确定来自成员。③ 群签名中,如果被控制,成员的身份会被暴露。在传统的数字签名中,签名者使用自己的私钥对消息进行签名,然后其他人可以使用签名者的公钥验证签名的有效性。但是,这种方法会暴露签名者的身份信息。环签名通过引入"环"的概念来解决这个问题。当一个人使用环中的某个成员的私钥来签名时,其他人可以使用该成员的公钥和环签名来验证签名的有效性,但无法确定具体是哪个成员进行了签名。

qq_54223524的博客 3429

环签名原理详解

环签名原理详解 预备阶段 ​ 假设签名者拥有某私钥 sk 和公钥 pk,其中 pk = sk·g,这里 g 是 椭圆曲线上的 基点(base point),也被称为生成元(generator)。而 “ · ” 这里是倍乘,sk · g 表示 sk 个 g 点在椭圆曲线上进行加法运算。 ​ 首先定义一个 hash 函数,这个 hash 函数的输入是 待签名的消息 m 和 椭圆曲线上的一个点 A,即 Hash(m, A)。该 hash 函数和椭圆曲线一样,是这个签名和验签体系的前提。 第一步: ​ 签名

MG 5703

区块链密码学】第8-2:RST环签名算法

【本课堂内容全部选编自PlatON首席密码学家、武汉大学国家网络安全学院教授、博士生导师何德彪教授的《区块链密码学》授课义、教材及互联网,版权归属其原作者所有,如有侵权请立即我们联系,我们将及时处理。】 8.2RST环签名算法 2001-2002年,以Rivest等人提出的环签名定义为标志,这一阶段的工作主要参考Rivest等人的方案提出的签名方案。 2003-2004年,经过两年对环签名的概念和意义的认识和理解后,许多密码界人士开始对环签名进行深入研究,涌现了很多新思想、新模型..

Digquant的博客 663

区块链密码学】第8-5:基于SM2签名算法的环签名

【本课堂内容全部选编自PlatON首席密码学家、武汉大学国家网络安全学院教授、博士生导师何德彪教授的《区块链密码学》授课义、教材及互联网,版权归属其原作者所有,如有侵权请立即我们联系,我们将及时处理。】 8.5基于SM2签名算法的环签名 首先,我们来回顾一下SM2签名算法 曲线参数 SM2标准推荐使用256位素域Fp上的椭圆曲线y2=x3+ax+b,其中: 密钥生成算法 签名算法 验证算法 接收到的消息为M′,签...

Digquant的博客 797

区块链密码学】第8-3:AOS环签名算法

【本课堂内容全部选编自PlatON首席密码学家、武汉大学国家网络安全学院教授、博士生导师何德彪教授的《区块链密码学》授课义、教材及互联网,版权归属其原作者所有,如有侵权请立即我们联系,我们将及时处理。】 8.3AOS环签名算法 2002年,Abe等基于离散对数问题开发了一种新型的环签名,他们使用因果环来达到效果。早期的环签名相比,这种因果环的使用使签名的大小显著减少了(50%左右)。Abe等给出了一种通用环签名构造方法,利用该方法可以把任意数字签名转换为环签名,这里只介绍他们提出...

Digquant的博客 722

区块链密码学】第8-6:基于SM9签名算法的环签名

【本课堂内容全部选编自PlatON首席密码学家、武汉大学国家网络安全学院教授、博士生导师何德彪教授的《区块链密码学》授课义、教材及互联网,版权归属其原作者所有,如有侵权请立即我们联系,我们将及时处理。】 8.6基于SM9签名算法的环签名 统参数生成 密钥生成中心(Key Generation Center,KGC)执行以下步骤生成系统参数和主私钥: 1. KGC生成随机数sk做为主私钥,这里0<sk<q-1; 2. KGC计算系统公钥Ppub=sk∙p2;...

Digquant的博客 926

隐私交易环签名技术:原理、实现区块链应用

本文介绍了隐私交易中的环签名技术原理、实现及其区块链应用。环签名是一种强匿名性数字签名方案,允许签名者在组成员中隐藏身份,具有无条件匿名性、自发性等特性。文章详细阐述了环签名密码学基础(离散对数、椭圆曲线等)和核心算法,包括密钥镜像生成和签名验证流程,并提供了Python实现代码。在区块链应用方面,重点分析了门罗币隐私交易架构和Solidity验证合约实现方案,展示了环签名如何为加密货币交易提供隐私保护。

闲人编程的博客 622

【源码阅读】用Go语言实现环签名的签名和验证(一)

环签名区块链中保护用户隐私的方法之一,今天起更新环签名的实现,顺带一下原理。源码是MIT的开源代码,用go语言编写,由于我也是go语言小白,所以一边读一边学语法。 import ( "bytes" "crypto/elliptic" "crypto/sha256" "fmt" "io" "math/big" "syn

反之亦然 4602

区块链探秘:从基础到深度,全面解读区块链技术应用

区块链探秘:从基础到深度,全面解读区块链技术应用

qq_51447436的博客 3万+

环签名原理隐私保护

隐私是用户最关心的问题之一,也是 PPIO 研究的重点。区块链世界涉及隐私保护的技术很多,前不久 PPIO Code Talks 的李星老师 给我们分享的“零知识证明 zk-SNARKs”技术 就是 隐私保护的典型代表,今天我们再来分析一下另一个用于隐私保护的技术——环签名 Ring Signature。 零知识证明解决的问题是,我有一个秘密,我需要向你证明我知道这个秘密,但是我又不能让你知道这个秘密。而环签名解决的问题是,我对你说了一句话,但是你只知道是某一群人中有人对你说了这句话,而不知道这群人里具体哪

跨链技术践行者 3087

区块链密码学

在学完大概了密码学的知识,其实也只是看完了Dan Boneh的那本密码学的书,现在开始密码学区块链的结合学习,因为我自己是主要针对密码学区块链的,但是去学习密码学区块链上面的一些应用,就可以使得对密码学有更深刻的了解,因为密码学拥有很庞大的体系,所以我只能这样去慢慢摸索。 这个部分的内容,大概的内容如下:这个目录下面会给出其内容的链接。 目录@xyi区块链密码学第一章 区块链密码学第二章 区块链技术原理第三章 区块链技术架构发展趋势第四章 区块链应用发展趋势第五章 哈希函数以及其在

qq_43479839的博客 1240

群签名环签名总结

文章目录**1、群签名(group signature)**2、环签名(ring signature)3、群签名和环签名主要特性对比4、签名流程5、sig-service-client 基本功能5.1 群签名5.2 环签名6、应用场景6.1 群签名场景6.2 环签名场景 1、群签名(group signature) 群签名(group signature)即某个群组内一个成员可以代表群组进行匿名签名。签名可以验证来自于该群组,却无法准确追踪到签名的是哪个成员。群签名需要存在一个群管理员来添加新的群成员,因

yhc166188的博客 4332

区块链加密技术之环签名(2)

隐私是用户最关心的问题之一,也是 PPIO 研究的重点。区块链世界涉及隐私保护的技术很多,前不久 PPIO Code Talks 的李星老师 给我们分享的“零知识证明 zk-SNARKs”技术 就是 隐私保护的典型代表,今天我们再来分析一下另一个用于隐私保护的技术——环签名 Ring Signature。 零知识证明解决的问题是,我有一个秘密,我需要向你证明我知道这个秘密,但是我又不能让你知道这个...

yuxinqingge的博客 2152

区块链密码学:原理、技术演进未来发展趋势

区块链技术依赖于密码学来保障数据的安全性、完整性和不可篡改性。

小宝哥Code的专栏 1706

区块链技术系列(2) - 环形签名

前言 在密码学中,环签名是一种数字签名,其可以由每个具有密钥的一组用户的任何成员完成。因此,使用环签名签名的消息由特定人群中的某一人签署。环签名的一个安全属性是若要确定哪个组成员的密钥用于产生签名在计算上是不可行的。环签名群签名类似,但在两个关键方面有所不同: 1. 无法撤销单个签名的匿名性; 2. 任何用户组都可以作为一个组使用,无需额外设置。 环签名技术由Ron Rivest, Ad...

iamhuihua的博客 5144
上一篇: 第7-5讲:盲签名算法在区块链中的应用
下一篇: 【区块链与密码学】第8-2讲:RST环签名算法
Dig Quant
博客等级 码龄6年 124粉丝 53原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值