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

文档序号:12039392阅读:来源:国知局
一种对数据进行RSA安全签名的方法、装置及安全芯片与流程

技术特征:
1.一种对数据进行RSA安全签名的方法,其特征在于,包括:利用RSA密钥生成算法预先确定RSA安全签名所使用的RSA私钥,并且,利用随机数发生器预先产生n个原始随机数,计算每个所述原始随机数的逆元;n为1或2;存储所述RSA私钥、n个原始随机数及其逆元;当需要对数据进行RSA安全签名时,根据存储的所述RSA私钥、n个原始随机数及其逆元对所述数据进行RSA安全签名。2.根据权利要求1所述的方法,其特征在于,当所述RSA安全签名是不采用中国剩余定理CRT的RSA安全签名时,所述n的取值为1;根据存储的所述RSA私钥、n个原始随机数及其逆元对所述数据进行RSA安全签名包括:产生一个第一小随机数,所述第一小随机数是比特数小于n个原始随机数中每个原始随机数的比特数的随机数;计算所述原始随机数的第一小随机数次幂,得到签名所需随机数;计算所述原始随机数的逆元的第一小随机数次幂,得到所述签名所需随机数的逆元;根据所述RSA私钥、所述签名所需随机数及其逆元对所述数据进行RSA安全签名。3.根据权利要求1所述的方法,其特征在于,当所述RSA安全签名是不采用CRT的RSA安全签名时,所述n的取值为1;根据存储的所述RSA私钥、n个原始随机数及其逆元对所述数据进行RSA安全签名包括:计算所述原始随机数的m1次幂,得到签名所需随机数;计算所述原始随机数的逆元的m1次幂,得到所述签名所需随机数的逆元;m1为大于1的自然数;根据所述RSA私钥、所述签名所需随机数及其逆元对所述数据进行RSA安全签名。4.根据权利要求1所述的方法,其特征在于,当所述RSA安全签名是采用CRT的RSA安全签名时,所述n的取值为2;2个原始随机数分别为第一原始随机数和第二原始随机数;所述根据存储的所述RSA私钥、n个原始随机数及其逆元对所述数据进行RSA安全签名包括:产生第二小随机数和第三小随机数,所述第二小随机数和第三小随机数均是比特数小于n个原始随机数中每个原始随机数的比特数的随机数;计算第一原始随机数的第二小随机数次幂,得到签名所需第一随机数;计算第一原始随机数的逆元的第二小随机数次幂,得到所述签名所需第一随机数的逆元;计算第二原始随机数的第三小随机数次幂,得到签名所需第二随机数;计算第二原始随机数的逆元的第三小随机数次幂,得到所述签名所需第二随机数的逆元;根据所述RSA私钥、所述签名所需第一随机数及其逆元、所述签名所需第二随机数及其逆元对所述数据进行RSA安全签名。5.根据权利要求1所述的方法,其特征在于,当所述RSA安全签名是采用CRT的RSA安全签名时,所述n的取值为2;2个原始随机数分别为第一原始随机数和第二原始随机数;所述根据存储的所述RSA私钥、n个原始随机数及其逆元对所述数据进行RSA安全签名包括:计算第一原始随机数的m2次幂,得到签名所需第一随机数;计算第一原始随机数的逆元的m2次幂,得到所述签名所需第一随机数的逆元;计算第二原始随机数的m3次幂,得到签名所需第二随机数;计算第二原始随机数的逆元的m3次幂,得到所述签名所需第二随机数的逆元,m2、m3为大于1的自然数;根据所述RSA私钥、所述签名所需第一随机数及其逆元、所述签名所需第二随机数及其逆元对所述数据进行RSA安全签名。6.根据权利要求1至5任一项所述的方法,其特征在于,还包括:更新存储的n个原始随机数及其逆元。7.根据权利要求6所述的方法,其特征在于,所述更新存储的n个原始随机数及其逆元包括:重新产生n个原始随机数,并计算重新产生的n个原始随机数中每个随机数的逆元;将存储的n个原始随机数及其逆元替换为重新产生的n个原始随机数及其逆元。8.根据权利要求6所述的方法,其特征在于,所述更新存储的n个原始随机数及其逆元包括:产生第四小随机数,所述第四小随机数是比特数小于n个原始随机数中每个原始随机数的比特数的随机数;对于每个原始随机数及其逆元,计算该原始随机数的第四小随机数次幂作为新的原始随机数,计算该原始随机数的逆元的第四小随机数次幂作为所述新的原始随机数的逆元;使用计算得到的所述新的原始随机数及其逆元替换存储的n个原始随机数及其逆元。9.根据权利要求1至4任一项所述的方法,其特征在于,存储所述RSA私钥、n个随机数及其逆元包括:将所述RSA私钥、n个随机数及其逆元存储在非易失性存储器中。10.一种对数据进行RSA安全签名的装置,其特征在于,包括:预处理单元,用于利用RSA密钥生成算法预先确定RSA安全签名所使用的RSA 私钥,并且,利用随机数发生器预先产生n个原始随机数,计算每个所述原始随机数的逆元;n为1或2;存储单元,用于存储所述RSA私钥、n个原始随机数及其逆元;签名单元,用于当需要对数据进行RSA安全签名时,根据存储的所述RSA私钥、n个原始随机数及其逆元对所述数据进行RSA安全签名。11.根据权利要求10所述的装置,其特征在于,当所述RSA安全签名是不采用CRT的RSA安全签名时,所述n的取值为1;所述签名单元具体用于:产生一个第一小随机数,所述第一小随机数是比特数小于n个原始随机数中每个原始随机数的比特数的随机数;计算所述原始随机数的第一小随机数次幂,得到签名所需随机数;计算所述原始随机数的逆元的第一小随机数次幂,得到所述签名所需随机数的逆元;根据所述RSA私钥、所述签名所需随机数及其逆元对所述数据进行RSA安全签名。12.根据权利要求10所述的装置,其特征在于,当所述RSA安全签名是不采用CRT的RSA安全签名时,所述n的取值为1;所述签名单元具体用于:计算所述原始随机数的m1次幂,得到签名所需随机数;计算所述原始随机数的逆元的m1次幂,得到所述签名所需随机数的逆元;m1为大于1的自然数;根据所述RSA私钥、所述签名所需随机数及其逆元对所述数据进行RSA安全签名。13.根据权利要求10所述的装置,其特征在于,当所述RSA安全签名是采用CRT的RSA安全签名时,所述n的取值为2;2个原始随机数分别为第一原始随机数和第二原始随机数;所述签名单元具体用于:产生第二小随机数和第三小随机数,所述第二小随机数和第三小随机数均是比特数小于n个原始随机数中每个原始随机数的比特数的随机数;计算第一原始随机数的第二小随机数次幂,得到签名所需第一随机数;计算第一原始随机数的逆元的第二小随机数次幂,得到所述签名所需第一随机数的逆元;计算第二原始随机数的第三小随机数次幂,得到签名所需第二随机数;计算第二原始随机数的逆元的第三小随机数次幂,得到所述签名所需第二随机数的逆元;根据所述RSA私钥、所述签名所需第一随机数及其逆元、所述签名所需第二随机数及其逆元对所述数据进行RSA安全签名。14.根据权利要求10所述的装置,其特征在于,当所述RSA安全签名是采用CRT的RSA安全签名时,所述n的取值为2;2个原始随机数分别为第一原始随机数和第二原始随机数;所述签名单元具体用于:计算第一原始随机数的m2次幂,得到签名所需第一随机数;计算第一原始随机数的逆元的m2次幂,得到所述签名所需第一随机数的逆元;计算第二原始随机数的m3次幂,得到签名所需第二随机数;计算第二原始随机数的逆元的m3次幂,得到所述签 名所需第二随机数的逆元,m2、m3为大于1的自然数;根据所述RSA私钥、所述签名所需第一随机数及其逆元、所述签名所需第二随机数及其逆元对所述数据进行RSA安全签名。15.根据权利要求10至14任一项所述的装置,其特征在于,还包括:更新单元,用于更新所述存储单元存储的n个原始随机数及其逆元。16.根据权利要求15所述的装置,其特征在于,所述更新单元具体用于:重新产生n个原始随机数,并计算重新产生的n个原始随机数中每个随机数的逆元;将存储的n个原始随机数及其逆元替换为重新产生的n个原始随机数及其逆元。17.根据权利要求15所述的装置,其特征在于,所述更新单元具体用于:产生第四小随机数,所述第四小随机数是比特数小于n个原始随机数中每个原始随机数的比特数的随机数;对于每个原始随机数及其逆元,计算该原始随机数的第四小随机数次幂作为新的原始随机数,计算该原始随机数的逆元的第四小随机数次幂作为所述新的原始随机数的逆元;使用计算得到的所述新的原始随机数及其逆元替换存储的n个原始随机数及其逆元。18.根据权利要求10至14、16至17任一项所述的装置,其特征在于,所述存储单元通过非易失性存储器实现。19.一种安全芯片,其特征在于,包括权利要求10至18任一项所述的对数据进行RSA安全签名的装置。
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1