导语:本课堂用通俗易懂的系列内容为大家呈现区块链与密码学领域相关知识。这里有知识也有故事,从感兴趣到有乐趣,全民课堂等你来学。这个系列中的课程内容首先从比特币着手进行入门介绍,再延伸至区块链的相关技术原理与发展趋势,然后深入浅出地依次介绍在区块链中应用的各类密码学技术。欢迎大家订阅本公众号,持续进行学习。
【本课堂内容全部选编自PlatON首席密码学家、武汉大学国家网络安全学院教授、博士生导师何德彪教授的《区块链与密码学》授课讲义、教材及互联网,版权归属其原作者所有,如有侵权请立即与我们联系,我们将及时处理。】
8.6 基于SM9签名算法的环签名
– 统参数生成 –
密钥生成中心(Key Generation Center,KGC)执行以下步骤生成系统参数和主私钥:
1. KGC生成随机数sk做为主私钥,这里0<sk<q-1;
2. KGC计算系统公钥Ppub=sk∙P2;
3. KGC保存私钥sk,公布系统公钥。
注意:
1. SM9算法使用BN曲线,G1和G2分别是椭圆曲线E(Fp)和E(Fp2)的加法群,GT是乘法群E(Fp12),群G2中元素尺寸是群G1中元素尺寸的2倍。
2. 选择系统公钥为G2中的元素,那么就可以使得用户私钥和签名中一部分是G1中元素,降低了用户私钥和签名的尺寸。
– 用户私钥生成 –
– 签名算法 –
– 验证算法 –
– 环签名算法 –
– 环验证算法 –
今天的课程就到这里啦,下节课我们将开始学习环签名算法在区块链中的应用,敬请期待!
同学们可以关注PlatONWorld,持续学习哦。我们下节课见啦。
本文转载自https://mp.weixin.qq.com/s?__biz=MzUzNTg2ODg5MQ==&mid=2247494975&idx=1&sn=fb43aae10c38f6310062c8d332be5a99&chksm=fafc498bcd8bc09d975da41d0bce6b2bce616431de5c71613ce3f20d9711ff455fe7d4862493&scene=178&cur_album_id=1411898566347735044#rd