SM2椭圆曲线公钥密码算法

名词解释

SM2椭圆曲线公钥密码算法

本部分适用于基域为素域和二元扩域的椭圆曲线公钥密码算法。(ECC椭圆曲线算法)
《 SM2椭圆曲线公钥密码算法》分为四个部分:
──第1部分:总则
──第2部分:数字签名算法
──第3部分:密钥交换协议
──第4部分:公钥加密算法

参考文献

<< 国密算法SM2-1>>
<< GB/T 15843.1-1999 信息技术安全技术实体鉴别第1部分:>>


椭圆曲线图

射影

离散

SM2椭圆曲线公钥密码算法推荐曲线参数

推使用素数域256位椭圆曲线。
椭圆曲线方程: y2 = x3 + ax + b。
曲线参数:
p=FFFFFFFE FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF 00000000 FFFFFFFF FFFFFFFF
a=FFFFFFFE FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF 00000000 FFFFFFFF FFFFFFFC
b=28E9FA9E 9D9F5E34 4D5A9E4B CF6509A7 F39789F5 15AB8F92 DDBCBD41 4D940E93
n=FFFFFFFE FFFFFFFF FFFFFFFF FFFFFFFF 7203DF6B 21C6052B 53BBF409 39D54123
Gx=32C4AE2C 1F198119 5F990446 6A39C994 8FE30BBF F2660BE1 715A4589 334C74C7
Gy=BC3736A2 F4F6779C 59BDCEE3 6B692153 D0A9877C C62A4740 02DF32E5 2139F0A0

SM2算法实现:

SM2算法关键为ECC算法,ECC椭圆曲线算法其已经在openssl协议中实现;

OpenSSL一共提供了8种对称加密算法,其中7种是分组加密算法,仅有的一种流加密算法是RC4。这7种分组加密算法分别是AES、DES、Blowfish、CAST、IDEA、RC2、RC5,都支持电子密码本模式(ECB)、加密分组链接模式(CBC)、加密反馈模式(CFB)和输出反馈模式(OFB)四种常用的分组密码加密模式。其中,AES使用的加密反馈模式(CFB)和输出反馈模式(OFB)分组长度是128位,其它算法使用的则是64位。事实上,DES算法里面不仅仅是常用的DES算法,还支持三个密钥和两个密钥3DES算法。

OpenSSL一共实现了4种非对称加密算法,包括DH算法、RSA算法、DSA算法和椭圆曲线算法(EC)。DH算法一般用于密钥交换。RSA算法既可以用于密钥交换,也可以用于数字签名,当然,如果你能够忍受其缓慢的速度,那么也可以用于数据加密。DSA算法则一般只用于数字签名。

延伸阅读

  • OpenSSL : OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用

results matching ""

    No results matching ""