一种基于SM9数字签名的批量验证方法和系统

    公开(公告)号:CN112241526A

    公开(公告)日:2021-01-19

    申请号:CN202011156041.1

    申请日:2020-10-26

    IPC分类号: G06F21/46 G06F21/64

    摘要: 本申请提供了一种基于SM9数字签名的批量验证方法和系统,该方法包括:获取待签名消息以及待签名消息对应的签名者的身份标识;基于可信密钥生成中心获取系统公钥和签名者私钥;基于系统公钥、身份标识和签名者私钥生成待签名消息的数字签名,并将数字签名以消息签名对的形式表示;验证者对消息签名对进行批量验证。其中,验证者可以一次性完成多个SM9数字签名的有效性验证,极大地提高了SM9数字签名验证效率。

    攻击密钥的方法及装置

    公开(公告)号:CN103560877A

    公开(公告)日:2014-02-05

    申请号:CN201310535334.4

    申请日:2013-11-01

    IPC分类号: H04L9/30 H04L12/26

    摘要: 本发明的实施例中公开了一种攻击密钥的方法和装置,所述方法包括:设置RSA密码运算的长度为t,采用被攻击的密钥对数据进行RSA密码运算,得到被攻击的密钥进行模幂运算的第一功耗曲线;通过简单能量攻击/分析SPA的方法分析所述第一功耗曲线中的RSA密码运算是否全部为硬件实现,若全部为硬件实现,则攻击失败;否则,根据所述第一功耗曲线中模乘的执行次数获取测试密钥,用所述测试密钥和被攻击的密钥对相同的随机数据进行RSA密码运算,判断结果是否一致,若一致,则攻击成功;其中,所述RSA密码运算为采用模幂运算实现的标准RSA解密运算或签名运算。

    ECC协处理器
    13.
    发明公开

    公开(公告)号:CN102609239A

    公开(公告)日:2012-07-25

    申请号:CN201110426633.5

    申请日:2011-12-19

    发明人: 李政东 汪朝晖

    IPC分类号: G06F7/72

    摘要: 本发明提供了一种ECC协处理器,内部包括命令/状态寄存器,译码控制单元,数据寄存器,双端口SRAM,点加控制单元,点倍控制单元,模幂控制单元,模乘控制单元、模加/模减控制单元,基本运算单元。本发明的ECC协处理器实现并对外提供大整数模乘、模加/模减、模幂和椭圆曲线点加/点倍运算功能,点加和点倍运算的对外接口中椭圆曲线点的坐标采用投影坐标或混合坐标,可以支持外部控制器灵活实现多种点乘运算。

    高安全性的椭圆曲线加解密方法和装置

    公开(公告)号:CN101079701B

    公开(公告)日:2011-02-02

    申请号:CN200610082459.6

    申请日:2006-05-22

    IPC分类号: H04L9/30

    摘要: 本发明涉及椭圆曲线加解密方法和装置,本发明椭圆曲线加密方法,包含步骤:a.获取或生成椭圆曲线加解密参数E、G、n、H()、F()、Enc(,)、Dec(,),其中选择有限域上的椭圆曲线E及其上的一点G,使得由G生成的点群 上的椭圆曲线离散对数问题是计算上不可解的,设 的阶为n,H()为一个安全的消息验证码产生函数,F()为任何安全的Hash函数或密钥派生函数,Enc(,)为加密函数和Dec(,)为解密函数,并对于任意明文m和密钥Key满足:m=Dec(Enc(m,Key),Key);b.获取明文m和解密方的公钥Y;c.生成随机数r(其中1≤r≤n-1),计算S←rY;d.计算Key←F(S);e.判断Key=0是否成立,若成立则返回步骤c,否则进入下一个步骤f;f.计算P←rG;g.对于明文m,计算Q←Enc(m,Key);h.计算R←H(m,S);i.输出密文c=(P,Q,R)。本发明克服ElGamal加密方法和MV加密方法在安全性上的不足,安全性达到IND_CCA2。

    高安全性的椭圆曲线加解密方法和装置

    公开(公告)号:CN101079701A

    公开(公告)日:2007-11-28

    申请号:CN200610082459.6

    申请日:2006-05-22

    IPC分类号: H04L9/30

    摘要: 本发明涉及椭圆曲线加解密方法和装置,本发明椭圆曲线加密方法,包含步骤:a.获取或生成椭圆曲线加解密参数E、G、n、H()、F()、Enc(,)、Dec(,),其中选择有限域上的椭圆曲线E及其上的一点G,使得由G生成的点群 上的椭圆曲线离散对数问题是计算上不可解的,设 的阶为n,H()为一个安全的消息验证码产生函数,F()为任何安全的Hash函数或密钥派生函数,Enc(,)为加密函数和Dec(,)为解密函数,并对于任意明文m和密钥Key满足:m=Dec(Enc(m,Key),Key);b.获取明文m和解密方的公钥Y;c.生成随机数r(其中1≤r≤n-1),计算S←rY;d.计算Key←F(S);e.判断Key=0是否成立,若成立则返回步骤c,否则进入下一个步骤f;f.计算P←rG;g.对于明文m,计算Q←Enc(m,Key);h.计算R←H(m,S);i.输出密文c=(P,Q,R)。本发明克服ElGamal加密方法和MV加密方法在安全性上的不足,安全性达到IND_CCA2。

    一种基于SM9数字签名的批量验证方法和系统

    公开(公告)号:CN112241526B

    公开(公告)日:2024-03-19

    申请号:CN202011156041.1

    申请日:2020-10-26

    IPC分类号: G06F21/46 G06F21/64

    摘要: 本申请提供了一种基于SM9数字签名的批量验证方法和系统,该方法包括:获取待签名消息以及待签名消息对应的签名者的身份标识;基于可信密钥生成中心获取系统公钥和签名者私钥;基于系统公钥、身份标识和签名者私钥生成待签名消息的数字签名,并将数字签名以消息签名对的形式表示;验证者对消息签名对进行批量验证。其中,验证者可以一次性完成多个SM9数字签名的有效性验证,极大地提高了SM9数字签名验证效率。

    一种高效的基于SM9公钥加密算法的线上线下加密方法

    公开(公告)号:CN111585759B

    公开(公告)日:2023-06-09

    申请号:CN202010399431.5

    申请日:2020-05-12

    IPC分类号: H04L9/08 H04L9/30 H04L9/40

    摘要: 本申请提供一种高效的基于SM9公钥加密算法的线上线下加密方法,在不改变SM9公钥加密算法整体架构的基础上,对数据加密过程中密文生成算法进行优化,分解成两个子算法:线下和线上加密算法。在不需要知道加密数据和接收者标识的情况下,发送者可以通过线下加密算法提前计算部分加密操作,完成大部分大开销的运算并生成线下密文。当知道加密数据和接收者标识后,发送者通过线上加密算法,利用线下密文对数据进行快速加密,生成SM9公钥加密密文。此过程只要求少量的轻量级计算,对计算资源的要求较低。该方法不仅能够保证传输数据的安全性,而且对发送者的计算资源要求较低,特别适用于计算资源有限的应用环境,有效的促进了SM9公钥加密算法在实际中的应用。

    一种对数据进行RSA安全签名的方法、装置及安全芯片

    公开(公告)号:CN103326861B

    公开(公告)日:2016-12-28

    申请号:CN201310218390.5

    申请日:2013-06-04

    发明人: 汪朝晖 裴超

    IPC分类号: H04L9/32 H04L9/30

    摘要: 本发明实施例公开了一种对数据进行RSA安全签名的方法、装置及安全芯片,该方法包括:预先确定RSA安全签名所使用的RSA私钥,并且,预先产生n个原始随机数,计算每个所述原始随机数的逆元;n为1或2;存储所述RSA私钥、所述n个原始随机数及其逆元;当需要对数据进行RSA安全签名时,根据存储的所述RSA私钥、所述n个原始随机数及其逆元对所述数据进行RSA安全签名。本发明实施例能够缩短对数据进行RSA安全签名的运算时间,提高对数据进行RSA安全签名的运算性能。

    攻击密钥的方法及装置

    公开(公告)号:CN103560877B

    公开(公告)日:2016-11-23

    申请号:CN201310535334.4

    申请日:2013-11-01

    IPC分类号: H04L9/30 H04L12/26

    摘要: 本发明的实施例中公开了一种攻击密钥的方法和装置,所述方法包括:设置RSA密码运算的长度为t,采用被攻击的密钥对数据进行RSA密码运算,得到被攻击的密钥进行模幂运算的第一功耗曲线;通过简单能量攻击/分析SPA的方法分析所述第一功耗曲线中的RSA密码运算是否全部为硬件实现,若全部为硬件实现,则攻击失败;否则,根据所述第一功耗曲线中模乘的执行次数获取测试密钥,用所述测试密钥和被攻击的密钥对相同的随机数据进行RSA密码运算,判断结果是否一致,若一致,则攻击成功;其中,所述RSA密码运算为采用模幂运算实现的标准RSA解密运算或签名运算。

    RSA算法私钥元素获取方法及获取装置

    公开(公告)号:CN103580858A

    公开(公告)日:2014-02-12

    申请号:CN201310547494.0

    申请日:2013-11-06

    IPC分类号: H04L9/30

    摘要: 本发明实施例公开了安全芯片中的RSA算法私钥元素获取方法及RSA算法私钥元素获取装置。所述方法包括:设置测试码;利用测试码获取基准功耗曲线;为测试码设置预设值;对测试码低半部分的最高比特位进行修正;从高到低依次对测试码的低半部分比特位的值进行修正;在除第0比特位之外的其他比特位的值修正完成后,对测试码中的数据进行验证;当测试码中的数据通过验证时,获取测试码中的数据,测试码中的数据即为所述被测安全芯片中的一个RSA算法私钥元素。所述装置包括:设置单元,获取单元,预设单元,第一修正单元,第二修正单元,验证单元,确定单元。本发明提供的方法可以获得安全芯片中的RSA算法私钥元素。