欢迎来到天天文库
浏览记录
ID:57164417
大小:1.30 MB
页数:18页
时间:2020-08-02
《离散椭圆曲线加密介绍课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、离散椭圆曲线加密分享1、椭圆曲线基础2、SM2国密算法3、ECIES椭圆曲线集成加密策略小强2017、03、27椭圆曲线基础椭圆曲线上的加法选择两个不同坐标点A和B,画一条直线过A和B,交椭圆曲线于一点,记为-C,这一点关于X轴对称点记为C。那么A+B=C。如果是两个相同的点相加,则过该点作切线,也会交椭圆曲线与一点-C。这一点关于X轴对称点记为C。得A+A=2A=C。当AB与X轴垂直时,除AB外就没有交点了,但我们还是认为有一个交点,称为无穷远点,记为O。得A+O=A,A+(-A)=O。离散椭圆曲线椭圆曲线离散对数问题(ECDLP
2、)公钥密码学算法总是基于某个数学上的难题,比如RSA是基于整数分解问题(IFP)设计的。这里我们引出一个新的难题(ECDLP)。椭圆曲线点乘(标量乘)概念:kP=P+P+…+P,k个P相加。可以看出如果给定整数k和点P,比较容易求出kP。比如前面的方程,若P=(5,5),k=3,则3P=2P+P=(22,13)+(5,5)=(8,22)。但是相反,若知道Q和P两点满足Q=kP,要求出整数k,还那么容易吗?答案不但不容易,还是非常困难。这就是著名的椭圆曲线离散对数问题(ECDLP)椭圆曲线离散对数问题(ECDLP)数据类型数据数据转换
3、SM2的KDFSM2国密算法“简单的数学原理”:若S=rQ,Q=dG,则S=r(dG)=rdG。令R=rG。则有S=dR=rQ=d(rG)=r(dG)=rdG设加密者为Alice,解密者为Bob。若d为Bob的私钥,Q为公钥。则Alice可以利用Q,一个随机数r,计算S=rQ,并且计算R=rG。把R发送给Bob,Bob利用自己的私钥d,计算S=dR。这样他们就可以共同得到S了。回顾这过程可知,d和r仅仅是他们产生的随机数,并且没有透露给任何人,再根据不同坐标点Q和R,计算出相同的S=dR=rQ。这样他们就可以在不信任的信道上传输共享
4、的信息S了,利用S便可产生共享密钥。SM2加密算法设需要发送的消息为比特串M,klen为M的比特长度。为了对明文M进行加密,作为加密者的用户A应实现以下运算步骤:A1:用随机数发生器产生随机数r∈[1,P-1];A2:计算椭圆曲线点C1=[r]G=(x1,y1),将C1的数据类型转换为比特串;A3:计算椭圆曲线点[r]Q=(x2,y2),将坐标x2、y2的数据类型转换为比特串;A4:计算t=KDF(x2∥y2,klen),若t为全0比特串,则返回A1;A5:计算C2=M⊕t;A6:计算C3=Hash(x2∥M∥y2),一般是SM3算
5、法作为哈希算法;A7:输出密文C=C1∥C2∥C3。SM2解密算法设klen为密文中C2的比特长度。为了对密文C=C1∥C2∥C3进行解密,作为解密者的用户B应实现以下运算步骤:B1:从C中取出比特串C1,将C1的数据类型转换为椭圆曲线上的点,验证C1是否满足椭圆曲线方程,若不满足则报错并退出;B2:计算[d]C1=(x2,y2),将坐标x2、y2的数据类型转换为比特串;B3:计算t=KDF(x2∥y2,klen),若t为全0比特串,则报错并退出;B4:从C中取出比特串C2,计算M′=C2⊕t;B5:计算u=Hash(x2∥M′∥y
6、2),从C中取出比特串C3,若u̸=C3,则报错并退出;B6:输出明文M′EllipticCurveIntegratedEncryptionScheme椭圆曲线集成加密策略KDF作用:根据参数生成MAC密钥Km和对称加密密钥KeKDF一般有四种:ANSI-X9.63-KDFIKEv2-KDFTLS-KDFNIST-800-56-Concatenation-KDFMAC一般支持以下:HMAC–SHA-1–160with20octetor160bitkeysHMAC–SHA-1–80with20octetor160bitkeysHMAC
7、–SHA-224–112with28octetor224bitkeysHMAC–SHA-224–224with28octetor224bitkeysHMAC–SHA-256–128with32octetor256bitkeysHMAC–SHA-256–256with32octetor256bitkeysHMAC–SHA-384–192with48octetor384bitkeysHMAC–SHA-384–284with48octetor384bitkeysHMAC–SHA-512–256with64octetor512bitkeys
8、HMAC–SHA-512–512with64octetor512bitkeysCMAC–AES–128CMAC–AES–192CMAC–AES–256《StandardsforEfficientCryptography》ECIES加密
此文档下载收益归作者所有