赞
踩
SM9算法C++实现系列目录:
SM9标识密码算法是由国密局发布的一种IBE(Identity-Based Encryption)算法。IBE算法以用户的身份标识作为公钥,不依赖于数字证书。国密SM9算法标准包括5个文档,分别为:
《GMT 0044-2016 SM9标识密码算法:第1部分 总则》
《GMT 0044-2016 SM9标识密码算法:第2部分 数字签名算法》
《GMT 0044-2016 SM9标识密码算法:第3部分 密钥交换协议》
《GMT 0044-2016 SM9标识密码算法:第4部分 密钥封装机制和公钥加密算法》
《GMT 0044-2016 SM9标识密码算法:第5部分 参数定义》
SM9是基于256位的BN椭圆曲线的,使用素域 F p Fp Fp 和有限域 F p 2 Fp^2 Fp2,双线性对使用R-ate。曲线参数主要包括:
详细参数可参考国密局SM9文档。
SM9算法主要包括密钥部分部分和算法部分。
SM9算法的密钥由KGC(密钥生成中心)产生,主要包括KGC的主密钥对和用户的私钥。
主密钥对分为签名主密钥对和加密主密钥对。
主密钥对的公私钥用在不同场景,其中主私钥仅用于计算用户私钥;主公钥则由KGC公开并用在其他部分。同时,签名主公钥仅用于签名和验签算法;加密主公钥则用于密钥封装、加密和密钥交换中。
用户私钥由KGC产生,包括签名私钥和加密私钥。
KGC使用主私钥和用户身份标识(以下简称ID)生成用户的私钥。
SM9算法包括签名验签、密钥封装解封、加密解密和密钥交换四大部分。
总结上述描述,可见在SM9算法中的用户身份标识ID主要用于用于私钥生成、验签、密钥封装解封、加密解密封和密钥交换。各部分的ID描述如下:
SM9算法的简介就介绍到这里,具体的算法描述和数学理论课参考SM9算法标准,以及后续文章。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。