发明名称 一种基于混沌和RSA算法的公钥加密方法
摘要 本发明涉及一种基于混沌和RSA算法的公钥加密方法。制作者随意选定长度较短并且有规律的一组初始值数字,初始值数字通过混沌迭代公式迭代运算n次和n+1次后分别得到第n组和第n+1组输出值,如果第n组输出值不是素数,对其反复进行加1运算,直到得到一个素数,设其为p。如果第n+1组输出值不是素数,也对其反复进行加1运算,直到得到一个素数,设其为q。由两个素数p和q,按照RSA密钥计算公式通过运算得到加密密钥和解密公钥。加密时:制作者通过事前选定的长度较短并且有规律的一组初始值数字,通过运算再一次产生加密密钥加密文件原文得到密文,检验人用已经公开的解密密钥解密密文还原出文件原文。
申请公布号 CN102724037B 申请公布日期 2015.07.22
申请号 CN201110079811.1 申请日期 2011.03.31
申请人 燕山大学 发明人 刘剑鸣
分类号 H04L9/30(2006.01)I;H04L9/08(2006.01)I 主分类号 H04L9/30(2006.01)I
代理机构 代理人
主权项 一种基于混沌和RSA算法的公钥加密方法,系一种用于RSA算法中加、解密密钥的产生方法,包括产生、制作和检验加密密钥,其特征在于其具体的产生、制作过程包括:a、制作者选定一个混沌迭代运算公式,然后随意选定长度较短并且有规律的一组数字作为混沌迭代运算的初始值数字同时设定迭代次数n,将选定的该初始值数字和迭代次数n作为制作者的生产加密密钥用的种子密钥保密保管;b、将步骤a选定的初始值数字通过混沌迭代运算公式反复迭代运算n次和n+1次,分别获得第n次和第n+1次混沌迭代运算的输出值数字;c、判断通过步骤b得到的第n次混沌迭代运算的输出值数字是否为素数,如果不是,对该数字反复进行加1运算,直到得到的数字是一个素数,将该素数用p表示;d、判断通过步骤b得到的第n+1次混沌迭代运算的输出值数字是否是素数,如果不是,对该数字反复进行加1运算,直到得到的数字是一个素数,将该素数用q表示;e、将通过步骤c、d得到的素数p和q输入RSA算法,按照RSA密钥计算公式通过运算得到加密密钥和解密密钥,将该加密密钥用e表示,将该解密密钥用d表示;f、制作者用通过步骤e得到的加密密钥经由RSA加密算法加密文件原文得到密文,将该密文和通过步骤e得到的解密密钥d向社会公开供检验时使用;其检验过程是:(1)检验者获取制作者公开的解密密钥和密文,并用该解密密钥经由RSA解密算法解密该密文还原出文件原文;(2)检验者检查通过步骤(1)还原出的文件原文,如果该文件原文是有实际意义的一段文字,表示该文件原文是由制作者发布的。
地址 066004 河北省秦皇岛市海港区河北大街西168号