发明名称 一种随机化的文档分块加密方法
摘要 本发明提供一种随机化的文档分块加密方法,先对文档进行分块,再对分块文档进行随机排列,通过随机化选取加密算法和加密密钥,并随机对分块文档、加密算法和加密密钥进行配对,然后再在配对的情况下,对文档块进行加密。解密时,只有知道相关匹配信息,才能够容易的解密。通过上面的过程来增加入侵者对文档解密和恢复的难度,从而提高文档在存储和传输过程中的安全性。
申请公布号 CN102710414B 申请公布日期 2015.07.08
申请号 CN201210175519.4 申请日期 2012.05.30
申请人 中国电力科学研究院;国家电网公司 发明人 汪晨;邓松;张涛;林为民;马嫒嫒;时坚;李伟伟;周诚;管小娟;朱其君
分类号 G06F21/62(2013.01)I;H04L9/06(2006.01)I 主分类号 G06F21/62(2013.01)I
代理机构 北京安博达知识产权代理有限公司 11271 代理人 徐国文
主权项 一种随机化的文档分块加密方法,其特征在于:所述加密方法包括以下步骤:步骤1:确定传输加密算法集合和加密密钥集合,并引入空加密算法NULL,NULL表示不进行加密;步骤2:对文档进行分块得到分块文档,并将所述分块文档随机化,生成随机分块文档序列;依据用户提供的文档,对文档以从头到尾的顺序进行分块得到分块文档;所述步骤2包括以下步骤:步骤2‑1:对文档进行分块得到分块文档;用D表示文档,用SPLIT<sub>SIZE</sub>表示文档分块,则有SPLIT<sub>SIZE</sub>:D‑&gt;(d<sub>1</sub>,d<sub>2</sub>,…,d<sub>N</sub>)其中:d<sub>i</sub>(1≤i≤N)为文档D划分后的分块文档,按照d<sub>1</sub>,d<sub>2</sub>,…,d<sub>N</sub>的顺序能够恢复文档D;下标SIZE表示文档D的大小,分块时依据SIZE自动选择分块的个数,且有Size(d<sub>1</sub>)=Size(d<sub>2</sub>)=…=Size(d<sub>N‑1</sub>)≥Size(d<sub>N</sub>)Size表示分块文档的大小,在对文档进行划分的过程中,Split函数智能依据文档D的大小对文档D进行划分,以使得20M≤Size(d<sub>i</sub>)≤200M,其中1≤i≤N;步骤2‑2:将所述分块文档随机化,生成随机分块文档序列;用Random<sub>1</sub>表示随机分块文档序列,则有Random<sub>1</sub>:(d<sub>1</sub>,d<sub>2</sub>,…,d<sub>N</sub>)–&gt;(d<sub>k1</sub>,d<sub>k2</sub>,…,d<sub>kN</sub>)d<sub>1</sub>,d<sub>2</sub>,…,d<sub>N</sub>为有序且完整的分块文档,k<sub>1</sub>,k<sub>2</sub>,…,k<sub>N</sub>为1,2,…,N的随机序列,随机化后,d<sub>1</sub>,d<sub>2</sub>,…,d<sub>N</sub>变为随机的d<sub>k1</sub>,d<sub>k2</sub>,…,d<sub>kN</sub>序列;步骤3:随机从所述加密算法集合中选取加密算法,从加密密钥集合中随机选取相应的加密密钥,并对所述加密算法和加密密钥进行随机配对;所述步骤3中,所述加密算法个数与分块文档块数相等,分析NULL的百分比,所述百分比超过50%则需要重新选取加密算法;所述步骤3中,用Random<sub>2</sub>表示随机选取加密算法,N为分块文档的个数,ed<sub>1</sub>,ed<sub>2</sub>,…,ed<sub>N</sub>表示返回的结果,则有Random<sub>2</sub>:E×N‑&gt;(ed<sub>1</sub>,ed<sub>2</sub>,…,ed<sub>N</sub>)步骤4:将所述分块文档与配对的所述加密算法和加密密钥随机配对,形成&lt;分块文档,加密算法,加密密钥&gt;的配对序列;所述步骤4中,分块文档与配对的所述加密算法和加密密钥随机配对,有Random:(d<sub>k1</sub>,d<sub>k2</sub>,…,d<sub>kN</sub>)×(&lt;ed<sub>j1</sub>,key<sub>j1</sub>&gt;,&lt;ed<sub>j2</sub>,key<sub>j2</sub>&gt;,…&lt;ed<sub>jN</sub>,key<sub>jN</sub>&gt;)‑&gt;(&lt;d<sub>k1</sub>,&lt;ed<sub>l1</sub>,key<sub>l1</sub>&gt;&gt;,&lt;d<sub>k2</sub>,&lt;ed<sub>l2</sub>,key<sub>l2</sub>&gt;&gt;,…&lt;d<sub>kN</sub>&lt;ed<sub>lN</sub>,key<sub>lN</sub>&gt;);其中:l<sub>1</sub>,l<sub>2</sub>,…,l<sub>N</sub>是j<sub>1</sub>,j<sub>2</sub>,…,j<sub>N</sub>的随机序列,形成的配对系列为&lt;分块文档,加密算法,加密密钥&gt;;步骤5:对所述分块文档进行加密。
地址 100192 北京市海淀区清河小营东路15号