电梯中SM-21是安全词什么意思 sm
来源:蜘蛛抓取(WebSpider)
时间:2020-11-25 08:32
标签:
安全词什么意思 sm
SM9算法C++实现系列目录:
SM9标识密码算法是由国密局发布的一种IBE(Identity-Based Encryption)算法IBE算法以用户的身份标识作为公钥,不依赖于数字证书国密SM9算法标准包括5个文档,分别为:
《GMT SM9标识密码算法:第1部分 总则》
《GMT SM9标识密码算法:第2部分 数字签名算法》
《GMT SM9标识密码算法:第3部分 密钥交换协议》
《GMT SM9标识密码算法:第4部分 密钥封装机淛和公钥加密算法》
《GMT SM9标识密码算法:第5部分 参数定义》
Fp2双线性对使用R-ate。曲线参数主要包括:
详细参数可参考国密局SM9文档
SM9算法主要包括密钥部分部分和算法部分。
-
密钥部分:包括主密钥对(公钥和私钥)和用户私钥
-
算法部分:包括签名验签算法、密钥封装解封算法、加密解密算法和密钥交换算法
SM9算法的密钥由KGC(密钥生成中心)产生主要包括KGC的主密钥对和用户的私钥。
主密钥对分为签名主密钥对和加密主密钥对
-
签名主密钥对:其私钥是一个在[1,N-1]范围内的随机数;公钥是G2群的基点P2的倍点,倍数为私钥
-
加密主密钥对:其私钥是一个在[1,N-1]范围内的随机數;公钥是G1群的基点P1的倍点,倍数为私钥
主密钥对的公私钥用在不同场景,其中主私钥仅用于计算用户私钥;主公钥则由KGC公开并用在其怹部分同时,签名主公钥仅用于签名和验签算法;加密主公钥则用于密钥封装、加密和密钥交换中
用户私钥由KGC产生,包括签名私钥和加密私钥
-
签名私钥:是G1群的基点P1的倍点。签名私钥仅用于签名中
-
加密私钥:是G2群的基点P2的倍点加密私钥用于密钥解封、解密和密钥交換中私钥
KGC使用主私钥和用户身份标识(以下简称ID)生成用户的私钥。
SM9算法包括签名验签、密钥封装解封、加密解密和密钥交换四大部分
-
签名算法:使用签名主公钥和签名者的签名私钥给数据签名
-
验签算法:使用签名主公钥和签名者ID验证签名
-
密钥封装算法:使用加密主公钥和密鑰解封者(使用对称密钥的另一方)ID封装一个对称密钥
-
密钥解封算法:使用加密主公钥和密钥解封者ID解出封装了的对称密钥
-
加密算法:使用加密主公钥和解密者ID加密数据
-
解密算法:使用解密者的加密私钥和解密者ID解密数据
-
密钥交换算法:密钥交换双方使用加密主公钥、自己的加密私钥和双方的ID协商出一个共享密钥
总结上述描述,可见在SM9算法中的用户身份标识ID主要用于用于私钥生成、验签、密钥封装解封、加密解密封和密钥交换各部分的ID描述如下:
-
私钥生成:ID是私钥属主的ID
-
验签:ID是签名者的ID
-
密钥封装解封:ID是解封者的ID
-
加密解密:ID是解密者的ID
-
密钥茭换:发起方和响应方都需要自己的ID和对方的ID
SM9算法的简介就介绍到这里,具体的算法描述和数学理论课参考SM9算法标准以及后续文章。
SM9算法C++实现系列目录:
SM9标识密码算法是由国密局发布的一种IBE(Identity-Based Encryption)算法IBE算法以用户的身份标识作为公钥,不依赖于数字证书国密SM9算法标准包括5个文档,分别为:
《GMT SM9标识密码算法:第1部分 总则》
《GMT SM9标识密码算法:第2部分 数字签名算法》
《GMT SM9标识密码算法:第3部分 密钥交换协议》
《GMT SM9标识密码算法:第4部分 密钥封装机淛和公钥加密算法》
《GMT SM9标识密码算法:第5部分 参数定义》
Fp2双线性对使用R-ate。曲线参数主要包括:
详细参数可参考国密局SM9文档
SM9算法主要包括密钥部分部分和算法部分。
-
密钥部分:包括主密钥对(公钥和私钥)和用户私钥
-
算法部分:包括签名验签算法、密钥封装解封算法、加密解密算法和密钥交换算法
SM9算法的密钥由KGC(密钥生成中心)产生主要包括KGC的主密钥对和用户的私钥。
主密钥对分为签名主密钥对和加密主密钥对
-
签名主密钥对:其私钥是一个在[1,N-1]范围内的随机数;公钥是G2群的基点P2的倍点,倍数为私钥
-
加密主密钥对:其私钥是一个在[1,N-1]范围内的随机數;公钥是G1群的基点P1的倍点,倍数为私钥
主密钥对的公私钥用在不同场景,其中主私钥仅用于计算用户私钥;主公钥则由KGC公开并用在其怹部分同时,签名主公钥仅用于签名和验签算法;加密主公钥则用于密钥封装、加密和密钥交换中
用户私钥由KGC产生,包括签名私钥和加密私钥
-
签名私钥:是G1群的基点P1的倍点。签名私钥仅用于签名中
-
加密私钥:是G2群的基点P2的倍点加密私钥用于密钥解封、解密和密钥交換中私钥
KGC使用主私钥和用户身份标识(以下简称ID)生成用户的私钥。
SM9算法包括签名验签、密钥封装解封、加密解密和密钥交换四大部分
-
签名算法:使用签名主公钥和签名者的签名私钥给数据签名
-
验签算法:使用签名主公钥和签名者ID验证签名
-
密钥封装算法:使用加密主公钥和密鑰解封者(使用对称密钥的另一方)ID封装一个对称密钥
-
密钥解封算法:使用加密主公钥和密钥解封者ID解出封装了的对称密钥
-
加密算法:使用加密主公钥和解密者ID加密数据
-
解密算法:使用解密者的加密私钥和解密者ID解密数据
-
密钥交换算法:密钥交换双方使用加密主公钥、自己的加密私钥和双方的ID协商出一个共享密钥
总结上述描述,可见在SM9算法中的用户身份标识ID主要用于用于私钥生成、验签、密钥封装解封、加密解密封和密钥交换各部分的ID描述如下:
-
私钥生成:ID是私钥属主的ID
-
验签:ID是签名者的ID
-
密钥封装解封:ID是解封者的ID
-
加密解密:ID是解密者的ID
-
密钥茭换:发起方和响应方都需要自己的ID和对方的ID
SM9算法的简介就介绍到这里,具体的算法描述和数学理论课参考SM9算法标准以及后续文章。
加密方案不可避免要用到随机数一般的加密都需要随机数参与运算。
先在加密芯片SMEC98SP中实现以下程序;
这样就可以读出8个字节随机数开头90 00 属于状态字,后面8个字节是随機数
对于单片机不能生成真随机数的问题,可以先读取加密芯片SE98的随机数通过与单片机的ID好,自由密钥参数通过一些多重算法实现。