发明名称 采用比例计算的基于组合编码的文件加密和解密的方法
摘要 采用比例计算的基于组合编码的文件加密和解密的方法,属于信息安全领域,本发明为解决现有对文件加密、解密方法的保密性能差的问题。本发明文件加密的方法:根据初始密钥求解所有的密钥序列,每轮加密都先对分组序列中的数据进行全排列,形成字典空间,计算出序数,然后按规则进行拼接新序列,该轮所有组的密钥序列进行循环拼接后与新序列进行异或,奇数轮时形成的加密文件前后置换元素,经过四轮加密形成最终加密文件;解密过程是加密的逆过程,遇奇数轮先前后置换元素,然后与循环拼接的密钥序列进行异或,采用穷举方法逐个解析分组序列的元素,将解析完毕的m个分组序列及余数进行拼接,作为待解密文件,经过四轮完成解密。
申请公布号 CN101895389A 申请公布日期 2010.11.24
申请号 CN201010228532.2 申请日期 2010.07.16
申请人 黑龙江大学 发明人 陆军;陈立岩;李培华;高扬;吕兴凤;王圣宏
分类号 H04L9/08(2006.01)I;H04L9/28(2006.01)I 主分类号 H04L9/08(2006.01)I
代理机构 哈尔滨市松花江专利商标事务所 23109 代理人 张果瑞
主权项 一种采用比例计算的基于组合编码的文件加密的方法,其特征在于,设定第一轮加密时,第1组分组序列的分组密钥为初始密钥K0,初始密钥K0的单位长度为k比特,每轮加密时都将待加密文件按组长度为n分成m组分组序列和一个余数,一种基于组合编码的文件加密的方法包括以下步骤:步骤一、根据所述初始密钥K0确定第一轮加密时所有组的分组密钥Km‑1,步骤二、根据分组密钥Km‑1确定该组所有轮加密时的子密钥K(m‑1)(w‑1),w为文件加密轮数,步骤三、初始化加密的轮数w=1,步骤四、将待加密文件按组长度为n进行分组,每组分组序列的元素数目为n,每个元素的单位长度为k比特,步骤五、找到密钥序列的第一个元素在与其对应的分组序列中最后一次出现的位置,并将分组序列中该位置的元素与分组序列的最后一个元素进行置换,形成新的分组序列,对新形成的每组分组序列的数据进行全排列,形成字典空间C(m‑1)(w‑1),然后按如下公式求取新形成的每组分组序列在各自字典空间中的序数N(m‑1)(w‑1): <mrow> <msub> <mi>N</mi> <mrow> <mrow> <mo>(</mo> <mi>m</mi> <mo>-</mo> <mn>1</mn> <mo>)</mo> </mrow> <mrow> <mo>(</mo> <mi>w</mi> <mo>-</mo> <mn>1</mn> <mo>)</mo> </mrow> </mrow> </msub> <mo>=</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>n</mi> </munderover> <munderover> <mi>&Sigma;</mi> <mrow> <mi>x</mi> <mo>=</mo> <mn>1</mn> </mrow> <mrow> <mi>i</mi> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <msub> <mi>S</mi> <mrow> <mi>j</mi> <mo>,</mo> <mi>x</mi> </mrow> </msub> <mo>,</mo> </mrow>其中,j表示当前被处理元素在分组序列中的位置,i表示当前被处理元素在当前组对应的密钥序列中的位置,密钥序列的前i‑1个元素中每个位置为x的元素占有分组序列第j位时应有的排列组合值用Sj,x表示,N(m‑1)(w‑1)≥0,步骤六、按分组序列中被置换到最后位置的元素的原始位置+分组序列含对应密钥各元素的数目+分组序列的序数的原则将当前轮各组序列进行重新拼接,结尾处加入余数长度,形成新的待加密文件,即,新的待加密文件拼接为:第1组分组序列中被置换到最后位置的元素的原始位置+第1组分组序列含对应密钥各元素的数目+第1组分组序列的序数N0(w‑1)+第2组分组序列中被置换到最后位置的元素的原始位置+第2组分组序列含对应密钥各元素的数目+第2组分组序列的序数N1(w‑1)+……+第m组分组序列中被置换到最后位置的元素的原始位置+第m组分组序列含对应密钥各元素的数目+第m组分组序列的序数N(m‑1)(w‑1)+余数长度,步骤七、将该轮所有组的密钥序列进行循环拼接,使其长度与步骤六形成的新的待加密文件的长度相同,然后与步骤六形成的新的待加密文件进行异或,结果作为下一轮的待加密文件,步骤八、判断w是否为奇数,判断结果为是,执行步骤九,判断结果为否,执行步骤十,步骤九、将步骤七形成的下一轮的待加密文件中所有元素的位置前后置换,作为该轮形成的加密文件,并作为下一轮待加密文件,步骤十、判断是否满足下述条件:w≥4,判断结果为否,令w=w+1,执行步骤四,判断结果为是,将本轮形成的加密文件作为最终结果,完成对文件的加密。
地址 150080 黑龙江省哈尔滨市南岗区学府路74号