原创 PlatON
导语:本课堂用通俗易懂的系列内容为大家呈现区块链与密码学领域相关知识。这里有知识也有故事,从感兴趣到有乐趣,全民课堂等你来学。这个系列中的课程内容首先从比特币着手进行入门介绍,再延伸至区块链的相关技术原理与发展趋势,然后深入浅出地依次介绍在区块链中应用的各类密码学技术。欢迎大家订阅本公众号,持续进行学习。
【本课堂内容全部选编自PlatON首席密码学家、武汉大学国家网络安全学院教授、博士生导师何德彪教授的《区块链与密码学》授课讲义、教材及互联网,版权归属其原作者所有,如有侵权请立即与我们联系,我们将及时处理。】
9.2 群签名的形式化定义
群签名方案流程:
- 系统建立Setup
- 加入Enroll(GIM,)
- 签名Sign(gpk,,m)
- 验证Verify(gpk,RL,m,s)
- 追踪Open(gtk,Y,m,s)
- 撤销Revoke(grk,)
1.系统建立Setup
这是由群加入管理者(GIM)和群追踪管理者(GTM)执行的随机算法,用来生成系统参数。算法输入一个安全参数1k,输出群公钥group public key(gpk),GIM的群用户加入密钥group issue key(gik),以及GTM的群用户追踪密钥group trace key(gtk),同时也输出一个初始为空的群用户撤销列表Revocation List(RL),用来记录已被撤销用户的一些必要信息。
2.加入Enroll
这是由群加入管理者GIM与用户Ui之间执行的一个交互协议。协议交互结束时,用户Ui加入了该群并获得他个人的群签名密钥user’s signing key(),而GIM对用户Ui这一新群成员做必要登记,登记的信息记为Yi,用来以后在群签名追踪和撤销时对用户身份的确认。
3.签名Sign
签名:群成员用自己的群签名私钥对消息m进行群签名,生成群签名s。
4.验证Verify
验证:验证者根据群公钥(gpk)验证消息m的签名s,同时必须验证签名s对应的群成员不在群用户撤销列表(RL)中,最后输出0或者1,表示群签名的正确与否。
5.追踪Open
追踪:对消息m的签名s,群追踪管理者(GTM)利用它的追踪密钥gtk以及所有群成员的登记信息Y,找到实际的签名者,并输出该群成员的身份。
6.撤销Rovoke
撤销:群追踪管理者撤销注册群成员身份,撤销后,该成员签署的消息将不再有效,关于该成员的撤销信息将加入到撤销列表(RL)中。
今天的课程就到这里啦,下节课我们将开始学习群签名的安全性与应用,敬请期待!
同学们可以关注PlatON公众号,持续学习哦。我们下节课见啦。
本文转载自https://mp.weixin.qq.com/s?__biz=MzUzNTg2ODg5MQ==&mid=2247495610&idx=1&sn=cb116fa638efa7afafcc9025433c3b10&chksm=fafc4b0ecd8bc218f9acc0cc05d615b2c6640be9e2f1c25414545afa7000d8dfd59bf6a99a67&scene=178&cur_album_id=1411898566347735044#rd