一种基于动态授权码的平台数据加密方法和装置制造方法及图纸

技术编号:16132154 阅读:20 留言:0更新日期:2017-09-01 22:26
本发明专利技术提出了一种基于动态授权码的平台数据加密方法和装置,所述方法包括:获取待加密的平台数据,作为明文M;明文M经过预处理P后,生成待加密明文DM;根据密钥K由加密指令产生器G生成动态加密算法的指令序列A;指令序列A按照加密器R指定的规则对DM进行加密,得到最终的密文C。本发明专利技术提出的基于动态授权码的平台数据加密方法和装置,提高了平台数据的安全性。

【技术实现步骤摘要】
一种基于动态授权码的平台数据加密方法和装置
本专利技术涉及安全验证领域,具体涉及一种基于动态授权码的平台数据加密方法和装置。
技术介绍
随着计算机应用的普及和Internet的迅速发展,社会机密和财富越来越高度地集中于计算机系统,使所有这些计算机互联成为一个全球的通信网络。由于Internet的前身是以政府机关、研究所和大学等科研机构为主构成的局域网,它上面的应用程序在安全性方面考虑很少,所以这种建立在TCP/IP标准协议上的开放性网络在安全方面存在着先天不足。因为在网络中很容易进行信息的截取、监听和伪造,人们不愿意在网络中传输有关金融或者法律方面的敏感信息。随着WWW、JAVA等技术的推动,Internet越来越具有商业价值,越来越多的公司和个人希望能通过Internet进行网上电子商务和电子金融,这也对网络的安全性提出了更高的要求,所以只有在技术上先解决了安全性问题,才有可能实现家中购物、无纸商贸等理想,Internet本身也才能更加迅速、健康地发展。因此计算机系统和计算机网络成了犯罪分子进性破坏活动的主要目标之一。对数据进行加密处理使得犯罪分子无法理解和利用机密数据,是防止破坏活动的有效手段,因此,密码学近二十年获得迅速发展,成了计算机科学的一个重要分支。密码学的发展历史大致可划分为三个阶段:第一个阶段为从古代到1949年。这一时期可看作是密码学的前夜阶段,这段时期的密码技术可以说是一种艺术,而不是一种学科,密码学专家常常是凭借直觉和信念来进行密码设计和分析,而不是推理证明。第二阶段为从1949年到1975年。1949年Shannon发表的“保密系统的信息理论”一文为私钥密码系统建立了理论基础,从此密码学成为一门学科,但密码学直到今天仍具有艺术性,是具有艺术性的一门学科。第三阶段为1976年到至今。1976年美国斯坦福大学的博士生W.Diffie和他的导师M.E.Hellman发表的论文“密码学的新方向”引起了密码学上的一场革命。他们首次证明了在发送端和接收端无密钥传输的保密通信是可能的,从而开创了公钥密码学的新纪元。由信息科学、计算机科学和量子力学结合而成的新的量子信息科学正在建立,量子技术在信息科学方面的应用导致了量子计算机、量子通信和量子密码研究热潮的兴起。量子密码的基本依据是量子力学的不确定性原理和量子态的不可克隆原理,它是基于非数学原理的密码。量子密码具有可证明的安全性,同时还能对窃听行为方便地进行检测。这些特性使得量子密码具有其他密码所没有的优势,因而量子密码引起国际密码学界和物理学界的高度重视。混沌“chaos”是一种复杂的非线性非平衡动力学过程。由于混沌序列是一种具有良好随机性的非线性序列,有可能构成新的序列密码,因此引起各国密码学者高度重视。随着计算机硬件性能的不断提升,现有的密码体系将受到强大的冲击。因此,对加密算法的研究和改进,具有很重大的现实意义。
技术实现思路
至少部分的解决现有技术中存在的问题,本专利技术提出了一种基于动态授权码的平台数据加密方法,包括:获取待加密的平台数据,作为明文M;明文M经过预处理P后,生成待加密明文DM;根据密钥K由加密指令产生器G生成动态加密算法的指令序列A;指令序列A按照加密器R指定的规则对DM进行加密,得到最终的密文C。其中,明文M经过预处理P后,生成待加密明文DM具体包括:P1:用伪随机数发生器R_N,生成两段随机序列RS和S,R_N的随机种子的共同决定因素包括:密钥K、系统时间T和明文M;其中RS的长度由M决定,作为动态授权码;S是随机标志位,用作分界标识;P2:将S追加到M;P3:将带有标志位的明文与RS做异或运算,打乱明文的规律,运算后得到的随机明文RS_M;P4:将RS_M、S、RS、S顺次连接,组成待加密明文DM,预处理过程结束;其中,根据密钥K由加密指令产生器G生成动态加密算法的指令序列A具体包括:G1:用密钥K初始化伪随机数发生器R_N,用所产生的伪随机序列1决定满秩矩阵集中每一个满秩矩阵的尺寸;G2:重新用密钥K初始化R_N,得到随机序列2,根据步骤G1初始化的满秩矩阵尺寸,用随机序列2逐个地构造矩阵;每构造一个矩阵,先用密钥K对其做异或运算,然后对所得结果进行判定,如果不是满秩矩阵,则进行重新构造,重复这一过程,直到判定结果为真,将构造的满秩矩阵加入到动态加密算法的满秩矩阵集EM_SET中,继续构造下一个满秩矩阵;不断重复上述过程,直到EM_SET中的所有满秩矩阵都已经构造完毕;G3:由密钥*K初始化伪随机数发生器R_N,得到随机序列3,由R_N产生的随机序列3、EM_SET和待加密明文共同作用,生成加密指令序列A;其中,指令序列A按照加密器R指定的规则对DM进行加密,得到最终的密文C具体包括:R0:由密钥*K计算指令的变换规则,变换规则即进行多少次幂运算,按照变换规则对A中指令进行幂运算,运算后的指令序列AJ(code.1,code.2,…,code.n)就是真正用于加密的指令;R1:将预处理后的待加密明文DM首尾相接形成环状,将首位置标记为Head,明文排列方向标记为Direction;R2:按指令Code.1的大小CL1将待加密明文DM进行分块,分块的起始位置标记为Start1,Start1的位置从Head开始,分块时,从Start1位置开始,沿着Direction方向,以Start1为目标,按照CL1的大小将DM进行等长分块,最后一块明文的首元素标记为End1,End1和Start1之间沿Direction方向上的明文段标记为Remain1,长度为RL1,End1和Start1之间反方向上的明文段标记为Encrypt1,长度为EL1,EL1是CL1的整数倍,Encrypt1是第一轮用于加密的明文段;当明文长度ML不是CL1的整数倍时,Remain1作为明文的最后一块,长度小于CL1;当ML是CL1的整数倍时,Remain1的长度等于CL1,因此有0<RL1≤CL1;R3:使用K对Remain1做异或运算,从所得结果中随机选择一个元素R1作为Code.1的变换规则,具体方法是将R1、Remain1和K通过一个映射,映射到Code.1的周期空间中,然后用该映射值对Code.1进行幂运算,所得结果为RC1;R4:在Remain1的后面添加一个指定值D1;R5:使用RC1对已经分块的Encrypt1进行加密,RC1的大小和Code.1是相同的,对于第i块明文mi加密后的结果为Q11miQ12(Q11,Q12∈RC1),第一轮加密结束;R6:开始第二轮加密,加密的起始位置为Start2;Start2由Start1和步长L共同决定,方法是从Start1开始沿Direction方向向后移L个元素,该位置就是Start2;确定Start2之后,进行分块加密,方法和1~5步是相同的;R7:不断重复上述过程,直到第n轮加密完成。之后将加密后的明文从Head开始沿着Direction方向展开,得到的就是加密后的密文C。其中,对R1的随机选择方法是:用系统时间T初始化伪随机数发生器R_N,选取由R_N产生的第一个随机数N1,将N1按照RL1的大小进行模运算,按照所得结果对R1进行选择;对于Ri的选择,同样先用T初始化R_N,之本文档来自技高网
...
一种基于动态授权码的平台数据加密方法和装置

【技术保护点】
一种基于动态授权码的平台数据加密方法,包括:获取待加密的平台数据,作为明文M;明文M经过预处理P后,生成待加密明文DM;根据密钥K由加密指令产生器G生成动态加密算法的指令序列A;指令序列A按照加密器R指定的规则对DM进行加密,得到最终的密文C。其中,明文M经过预处理P后,生成待加密明文DM具体包括:P1:用伪随机数发生器R_N,生成两段随机序列RS和S,R_N的随机种子的共同决定因素包括:密钥K、系统时间T和明文M;其中RS的长度由M决定,作为动态授权码;S是随机标志位,用作分界标识;P2:将S追加到M;P3:将带有标志位的明文与RS做异或运算,打乱明文的规律,运算后得到的随机明文RS_M;P4:将RS_M、S、RS、S顺次连接,组成待加密明文DM,预处理过程结束;其中,根据密钥K由加密指令产生器G生成动态加密算法的指令序列A具体包括:G1:用密钥K初始化伪随机数发生器R_N,用所产生的伪随机序列1决定满秩矩阵集中每一个满秩矩阵的尺寸;G2:重新用密钥K初始化R_N,得到随机序列2,根据步骤G1初始化的满秩矩阵尺寸,用随机序列2逐个地构造矩阵;每构造一个矩阵,先用密钥K对其做异或运算,然后对所得结果进行判定,如果不是满秩矩阵,则进行重新构造,重复这一过程,直到判定结果为真,将构造的满秩矩阵加入到动态加密算法的满秩矩阵集EM_SET中,继续构造下一个满秩矩阵;不断重复上述过程,直到EM_SET中的所有满秩矩阵都已经构造完毕;G3:由密钥*K初始化伪随机数发生器R_N,得到随机序列3,由R_N产生的随机序列3、EM_SET和待加密明文共同作用,生成加密指令序列A;其中,指令序列A按照加密器R指定的规则对DM进行加密,得到最终的密文C具体包括:R0:由密钥*K计算指令的变换规则,变换规则即进行多少次幂运算,按照变换规则对A中指令进行幂运算,运算后的指令序列AJ(code.1,code.2,…,code.n)就是真正用于加密的指令;R1:将预处理后的待加密明文DM首尾相接形成环状,将首位置标记为Head,明文排列方向标记为Direction;R2:按指令Code.1的大小CL1将待加密明文DM进行分块,分块的起始位置标记为Start1,Start1的位置从Head开始,分块时,从Start1位置开始,沿着Direction方向,以Start1为目标,按照CL1的大小将DM进行等长分块,最后一块明文的首元素标记为End1,End1和Start1之间沿Direction方向上的明文段标记为Remain1,长度为RL1,End1和Start1之间反方向上的明文段标记为Encrypt1,长度为EL1,EL1是CL1的整数倍,Encrypt1是第一轮用于加密的明文段;当明文长度ML不是CL1的整数倍时,Remain1作为明文的最后一块,长度小于CL1;当ML是CL1的整数倍时,Remain1的长度等于CL1,因此有0<RL1≤CL1;R3:使用K对Remain1做异或运算,从所得结果中随机选择一个元素R1作为Code.1的变换规则,具体方法是将R1、Remain1和K通过一个映射,映射到Code.1的周期空间中,然后用该映射值对Code.1进行幂运算,所得结果为RC1;R4:在Remain1的后面添加一个指定值D1;R5:使用RC1对已经分块的Encrypt1进行加密,RC1的大小和Code.1是相同的,对于第i块明文mi加密后的结果为Q11miQ12(Q11,Q12∈RC1),第一轮加密结束;R6:开始第二轮加密,加密的起始位置为Start2;Start2由Start1和步长L共同决定,方法是从Start1开始沿Direction方向向后移L个元素,该位置就是Start2;确定Start2之后,进行分块加密,方法和1~5步是相同的;R7:不断重复上述过程,直到第n轮加密完成。之后将加密后的明文从Head开始沿着Direction方向展开,得到的就是加密后的密文C。...

【技术特征摘要】
1.一种基于动态授权码的平台数据加密方法,包括:获取待加密的平台数据,作为明文M;明文M经过预处理P后,生成待加密明文DM;根据密钥K由加密指令产生器G生成动态加密算法的指令序列A;指令序列A按照加密器R指定的规则对DM进行加密,得到最终的密文C。其中,明文M经过预处理P后,生成待加密明文DM具体包括:P1:用伪随机数发生器R_N,生成两段随机序列RS和S,R_N的随机种子的共同决定因素包括:密钥K、系统时间T和明文M;其中RS的长度由M决定,作为动态授权码;S是随机标志位,用作分界标识;P2:将S追加到M;P3:将带有标志位的明文与RS做异或运算,打乱明文的规律,运算后得到的随机明文RS_M;P4:将RS_M、S、RS、S顺次连接,组成待加密明文DM,预处理过程结束;其中,根据密钥K由加密指令产生器G生成动态加密算法的指令序列A具体包括:G1:用密钥K初始化伪随机数发生器R_N,用所产生的伪随机序列1决定满秩矩阵集中每一个满秩矩阵的尺寸;G2:重新用密钥K初始化R_N,得到随机序列2,根据步骤G1初始化的满秩矩阵尺寸,用随机序列2逐个地构造矩阵;每构造一个矩阵,先用密钥K对其做异或运算,然后对所得结果进行判定,如果不是满秩矩阵,则进行重新构造,重复这一过程,直到判定结果为真,将构造的满秩矩阵加入到动态加密算法的满秩矩阵集EM_SET中,继续构造下一个满秩矩阵;不断重复上述过程,直到EM_SET中的所有满秩矩阵都已经构造完毕;G3:由密钥*K初始化伪随机数发生器R_N,得到随机序列3,由R_N产生的随机序列3、EM_SET和待加密明文共同作用,生成加密指令序列A;其中,指令序列A按照加密器R指定的规则对DM进行加密,得到最终的密文C具体包括:R0:由密钥*K计算指令的变换规则,变换规则即进行多少次幂运算,按照变换规则对A中指令进行幂运算,运算后的指令序列AJ(code.1,code.2,…,code.n)就是真正用于加密的指令;R1:将预处理后的待加密明文DM首尾相接形成环状,将首位置标记为Head,明文排列方向标记为Direction;R2:按指令Code.1的大小CL1将待加密明文DM进行分块,分块的起始位置标记为Start1,Start1的位置从Head开始,分块时,从Start1位置开始,沿着Direction方向,以Start1为目标,按照CL1的大小将DM进行等长分块,最后一块明文的首元素标记为End1,End1和Start1之间沿Direction方向上的明文段标记为Remain1,长度为RL1,End1和Start1之间反方向上的明文段标记为Encrypt1,长度为EL1,EL1是CL1的整数倍,Encrypt1是第一轮用于加密的明文段;当明文长度ML不是CL1的整数倍时,Remain1作为明文的最后一块,长度小于CL1;当ML是CL1的整数倍时,Remain1的长度等于CL1,因此有0<RL1≤CL1;R3:使用K对Remain1做异或运算,从所得结果中随机选择一个元素R1作为Code.1的变换规则,具体方法是将R1、Remain1和K通过一个映射,映射到Code.1的周期空间中,然后用该映射值对Code.1进行幂运算,所得结果为RC1;R4:在Remain1的后面添加一个指定值D1;R5:使用RC1对已经分块的Encrypt1进行加密,RC1的大小和Code.1是相同的,对于第i块明文mi加密后的结果为Q11miQ12(Q11,Q12∈RC1),第一轮加密结束;R6:开始第二轮加密,加密的起始位置为Start2;Start2由Start1和步长L共同决定,方法是从Start1开始沿Direction方向向后移L个元素,该位置就是Start2;确定Start2之后,进行分块加密,方法和1~5步是相同的;R7:不断重复上述过程,直到第n轮加密完成。之后将加密后的明文从Head开始沿着Direction方向展开,得到的就是加密后的密文C。2.如权利要求1所述的方法,其中,对R1的随机选择方法是:用系统时间T初始化伪随机数发生器R_N,选取由R_N产生的第一个随机数N1,将N1按照RL1的大小进行模运算,按照所得结果对R1进行选择;对于Ri的选择,同样先用T初始化R_N,之后选取R_N产生的第i个随机数Ni,将Ni按照RLi的大小进行模运算,按照所得结果选择Ri。3.如权利要求1所述的方法,其中,D1的计算方法是:用R1初始化R_N,按照R1在Remain1中的位置RP,选择R_N所产生序列的第RP个元素d1,D1是d1与K进行异或运算后的结果。4.一种基于动态授权码的平台数据加密装置,包括:明文获取单元,用于获取待加密的平台数据,作为明文M;...

【专利技术属性】
技术研发人员:张然高雪花
申请(专利权)人:成都课迪科技有限公司
类型:发明
国别省市:四川,51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1