一种基于流密码的动态加密解密方法

文档序号:7550483阅读:546来源:国知局
专利名称:一种基于流密码的动态加密解密方法
技术领域
本发明涉及一种加密解密方法,特别是一种基于流密码的动态加密解密方法。
背景技术
流密码(stream cipher),也称之为序列密码。由于流密码的分析和设计往往用于一个国家的军事和外交通信。所以,流密码的研发和设计基本上都是在保密的状态下进行,各个国家研发流密码的学者和专家为了保密几乎没有过多的这方面的公开的论著。各国都将流密码技术和产品,作为军工产品而限制出口。由于它具有许多其他密码不可比拟的优点,所以,它是当今最为通用的密码系统之
O现在的流密码学的研究方向,都是以数学模型为基础,使用复杂的代数运算、布尔代数运算、伪随机数、移位寄存器、线性反馈等。完成流密码的加密和解密。在这方面比较成功的方法有A5方法,S盒方法,RC4方法,K2方法等。这些方法已经是不公开的秘密,经过多年的研究,对其加密和解密已经具有了一定的成熟手段。现在已有很多学者研究攻击和破译上述方法加密的密文。这就使得使用以上的方法进行加密的密文,其安全性受到极大的挑战。

发明内容
为了解决上述的技术问题,本发明提供了一种实现方式简单、安全性高、灵活性强的基于流密码的动态加密解密方法。本发明解决其技术问 题所采用的技术方案是:
一种基于流密码的动态加密解密方法,包括:
读取明文文件,获得明文文件的长度m后,根据明文文件的长度m,选择一个小于长度m的自然数k作为加密系数;
对密钥文件的不同的二进制位,设定其对应的加密规则及相应的解密规则;
加密步骤:选取参考文件,并读取密钥文件,选择密钥文件的一个二进制位,根据该二进制位对应的加密规则,结合加密系数及参考文件,将明文文件的二进制位进行读写处理,进而生成密文文件;
解密步骤:读取密钥文件,根据加密过程中所选择的二进制位对应的解密规则,结合加密系数及参考文件,将密文文件的二进制位进行读写处理,进而得到还原的明文文件。进一步,所述加密步骤包括:
511、读取明文文件的字节数,根据该字节数,在计算机内存开辟明文存储空间,读取明文文件并将其存储在明文存储空间中,并创建第一明文字符指针Ql指向明文存储空间的第k位,同时创建第二明文字符指针Q2指向明文存储空间的第k+Ι位;
512、根据明文文件的字节数,选择参考文件;
513、根据明文文件的字节数,在计算机内存开辟参考存储空间后,读取参考文件并将其存储在参考存储空间中,并创建参考字符指针Pf指向参考存储空间的首地址;
514、读取密钥文件的字节数,根据密钥文件的字节数,在计算机内存开辟密钥存储空间后,读取密钥文件并将其存储在密钥存储空间中,并创建密钥字符指针PP指向密钥存储空间的首地址;
515、根据明文文件的字节数,在计算机内存开辟密文存储空间,并创建密文字符指针pc指向密文存储空间的首地址;
516、根据密钥字符指针pp所指向的二进制字符串的位所定义的加密规则,按顺序扫描参考字符指针Pf所指向的二进制字符串的位,结合该扫描情况及加密规则,将第一明文字符指针Ql或第二明文字符指针Q2所指向的二进制位填入密文字符指针pc指向的密文存储空间中;
517、读取密文存储空间的字节,进而生成密文文件;
其中,所述明文存储空间为循环链表,k为加密系数,所述第一明文字符指针Ql是向前遍历的,所述第二明文字符指针Q2是向后遍历的。进一步,所述步骤S13,其具体为:
根据明文文件的字节数,在计算机内存开辟参考存储空间后,读取参考文件并将其存储在参考存储空间中,在读取参考文件的过程中,剔除为“0x00”和“Oxff”的值,且所读取并存储的参考文件的字节数等于明文文件的字节数,并创建参考字符指针Pf指向参考存储空间的首地址。进一步,所述步骤S16中所述加密规则为:
按顺序扫描参考字符指针Pf所指向的二进制字符串的位,若遇到值为“O”的位,则将第一明文字符指针Ql所指向的二进制位填入密文字符指针PC指向的密文存储空间,若遇到值为“I”的位,则将第二明文字符指针Q2所指向的二进制位填入密文字符指针PC指向的密文存储空间。进一步,所述步骤S16中所述加密规则为:
按顺序扫描参考字符指针Pf所指向的二进制字符串的位,若遇到值为“ I ”的位,则将第一明文字符指针Ql所指向的二进制位填入密文字符指针PC指向的密文存储空间,若遇至IJ值为“O”的位,则将第二明文字符指针Q2所指向的二进制位填入密文字符指针PC指向的密文存储空间。进一步,所述解密步骤包括:
521、读取密文文件的字节数,根据该字节数,在计算机内存开辟密文存储空间后,读取密文文件并将其存储在密文存储空间中,并创建密文字符指针pc指向密文存储空间的首地址;
522、根据密文文件的字节数,在计算机内存开辟参考存储空间后,读取在生成密文文件的加密过程中所使用的参考文件,并将参考文件存储在参考存储空间中,并创建参考字符指针Pf指向参考存储空间的首地址;
523、读取密钥文件的字节数,根据密钥文件的字节数,在计算机内存开辟密钥存储空间后,读取密钥文件并将其存储在密钥存储空间中,并创建密钥字符指针PP指向密钥存储空间的首地址;
524、根据密文文件的字节数,在计算机内存开辟明文存储空间,并创建第一明文字符指针Ql指向明文存储空间的第k位,同时创建第二明文字符指针Q2指向明文存储空间的第k+Ι位;
525、根据密钥字符指针pp所指向的二进制字符串的位所定义的解密规则,按顺序扫描参考字符指针Pf所指向的二进制字符串的位,结合该扫描情况及解密规则,将密文字符指针PC所指向的二进制字符串读出后填入第一明文字符指针Ql或第二明文字符指针Q2所指向的明文存储空间中;
526、读取明文存储空间的字节,进而得到还原的明文文件;
其中,所述明文存储空间为循环链表,k为加密系数,所述第一明文字符指针Ql是向前遍历的,所述第二明文字符指针Q2是向后遍历的。进一步,所述步骤S22,其具体为:
根据密文文件的字节数,在计算机内存开辟参考存储空间,读取在生成密文文件的加密过程中所使用的参考文件,并将参考文件存储在参考存储空间中,在读取参考文件的过程中,剔除为“0x00”和“Oxff”的值,且所读取并存储的参考文件的字节数等于密文文件的字节数,并创建参考字符指针Pf指向参考存储空间的首地址。进一步,所述步骤S25中所述解密规则为:
按顺序扫描参考字符指针Pf所指向的二进制字符串的位,若遇到值为“O”的位,则将密文字符指针PC所指向的二进制位填入第一明文字符指针Ql指向的明文存储空间,若遇到值为“I”的位,则将密文字符指针PC所指向的二进制位填入第二明文字符指针Q2指向的明文存储空间。进一步,所述步骤S25中所述解密规则为:
按顺序扫描参考字符指针Pf所指向的二进制字符串的位,若遇到值为“ I ”的位,则将密文字符指针PC所指向的二进制位填入第一明文字符指针Ql指向的明文存储空间,若遇到值为“O”的位,则将密文字符指针PC所指向的二进制位填入第二明文字符指针Q2指向的明文存储空间。本发明的有益效果是:本发明的一种基于流密码的动态加密解密方法,选取参考文件后,结合预先设定的加密系数及加密规则对明文文件的二进制文件进行加密,从而生成密文文件,在解密过程中,结合密文文件、参考文件、加密系数及对应的解密规则,将密文文件还原为明文文件,实现方式简单,安全性高,灵活性强。


下面结合附图和实施例对本发明作进一步说明。图1是本发明的一种基于流密码的动态加密解密方法的流程图。
具体实施例方式参照图1,本发明提供了一种基于流密码的动态加密解密方法,包括:
读取明文文件,获得明文文件的长度m后,根据明文文件的长度m,选择一个小于长度m的自然数k作为加密系数;
对密钥文件的不同的二进制位,设定其对应的加密规则及相应的解密规则;
加密步骤:选取参考文件,并读取密钥文件,选择密钥文件的一个二进制位,根据该二进制位对应的加密规则,结合加密系数及参考文件,将明文文件的二进制位进行读写处理,进而生成密文文件;
解密步骤:读取密钥文件,根据加密过程中所选择的二进制位对应的解密规则,结合加密系数及参考文件,将密文文件的二进制位进行读写处理,进而得到还原的明文文件。例如密钥文件的二进制值为“01011100”,设定其第1、3、4、7 二进制位所对应的加密规则为al,相应的解密规则为bl,设定其第2、5、6、8 二进制位所对应的加密规则为a2,相应的解密规则为b2,或者设定每一个二进制位都对应不同的加密规则及相应的解密规则,如,从最低位算起,每一位对应的加密规则为al、a2、a3、a4、a5、a6、a7及a8,相应的解密规则分别为bl、b2、b3、b4、b5、b6、b7及b8,这里,加密规则al、a2等还与密钥文件的二进制位的值有关,值为“O”时,对应一种加密方法,值为“ I”时,对应另外一种加密方法。进一步作为优选的实施方式,所述加密步骤包括:
511、读取明文文件的字节数,根据该字节数,在计算机内存开辟明文存储空间,读取明文文件并将其存储在明文存储空间中,并创建第一明文字符指针Ql指向明文存储空间的第k位,同时创建第二明文字符指针Q2指向明文存储空间的第k+Ι位;
512、根据明文文件的字节数,选择参考文件;
513、根据明文文件的字节数,在计算机内存开辟参考存储空间后,读取参考文件并将其存储在参考存储空间中,并创建参考字符指针Pf指向参考存储空间的首地址;
514、读取密钥文件的字节数,根据密钥文件的字节数,在计算机内存开辟密钥存储空间后,读取密钥文件并将其存储在密钥存储空间中,并创建密钥字符指针PP指向密钥存储空间的首地址;
515、根据明文文件的字节数,在计算机内存开辟密文存储空间,并创建密文字符指针pc指向密文存储空间的首地址;
516、根据密钥字符指针pp所指向的二进制字符串的位所定义的加密规则,按顺序扫描参考字符指针Pf所指向的二进制字符串的位,结合该扫描情况及加密规则,将第一明文字符指针Ql或第二明文字符指针Q2所指向的二进制位填入密文字符指针pc指向的密文存储空间中;
517、读取密文存储空间的字节,进而生成密文文件;
其中,所述明文存储空间为循环链表,k为加密系数,所述第一明文字符指针Ql是向前遍历的,所述第二明文字符指针Q2是向后遍历的。进一步作为优选的实施方式,所述步骤S13,其具体为:
根据明文文件的字节数,在计算机内存开辟参考存储空间后,读取参考文件并将其存储在参考存储空间中,在读取参考文件的过程中,剔除为“0x00”和“Oxff”的值,且所读取并存储的参考文件的字节数等于明文文件的字节数,并创建参考字符指针Pf指向参考存储空间的首地址。这里,因为“0x00”对应的二进制数为“00000000”,而“Oxff”对应的二进制数为“11111111”,为了避免加密过程中因全“O”值或全“I”的数导致加密不完全,故将它们都剔除。进一步作为优选的实施方式,所述步骤S16中所述加密规则为:
按顺序扫描参考字符指针Pf所指向的二进制字符串的位,若遇到值为“O”的位,则将第一明文字符指针Ql所指向的二进制位填入密文字符指针PC指向的密文存储空间,若遇到值为“I”的位,则将第二明文字符指针Q2所指向的二进制位填入密文字符指针PC指向的密文存储空间。进一步作为优选的实施方式,所述步骤S16中所述加密规则为:
按顺序扫描参考字符指针Pf所指向的二进制字符串的位,若遇到值为“ I ”的位,则将第一明文字符指针Ql所指向的二进制位填入密文字符指针PC指向的密文存储空间,若遇至IJ值为“O”的位,则将第二明文字符指针Q2所指向的二进制位填入密文字符指针PC指向的密文存储空间。进一步作为优选的实施方式,所述解密步骤包括:
521、读取密文文件的字节数,根据该字节数,在计算机内存开辟密文存储空间后,读取密文文件并将其存储在密文存储空间中,并创建密文字符指针pc指向密文存储空间的首地址;
522、根据密文文件的字节数,在计算机内存开辟参考存储空间后,读取在生成密文文件的加密过程中所使用的参考文件,并将参考文件存储在参考存储空间中,并创建参考字符指针Pf指向参考存储空间的首地址;
523、读取密钥文件的字节数,根据密钥文件的字节数,在计算机内存开辟密钥存储空间后,读取密钥文件并将其存储在密钥存储空间中,并创建密钥字符指针PP指向密钥存储空间的首地址;
524、根据密文文件的字节数,在计算机内存开辟明文存储空间,并创建第一明文字符指针Ql指向明文存储空间的第k位,同时创建第二明文字符指针Q2指向明文存储空间的第k+Ι位;
525、根据密钥字符指针pp所指向的二进制字符串的位所定义的解密规则,按顺序扫描参考字符指针Pf所指向的二进制字符串的位,结合该扫描情况及解密规则,将密文字符指针PC所指向的二进制字符串读出后填入第一明文字符指针Ql或第二明文字符指针Q2所指向的明文存储空间中;
526、读取明文存储空间的字节,进而得到还原的明文文件;
其中,所述明文存储空间为循环链表,k为加密系数,所述第一明文字符指针Ql是向前遍历的,所述第二明文字符指针Q2是向后遍历的。进一步作为优选的实施方式,所述步骤S22,其具体为:
根据密文文件的字节数,在计算机内存开辟参考存储空间,读取在生成密文文件的加密过程中所使用的参考文件,并将参考文件存储在参考存储空间中,在读取参考文件的过程中,剔除为“0x00”和“Oxff”的值,且所读取并存储的参考文件的字节数等于密文文件的字节数,并创建参考字符指针Pf指向参考存储空间的首地址。进一步作为优选的实施方式,所述步骤S25中所述解密规则为:
按顺序扫描参考字符指针Pf所指向的二进制字符串的位,若遇到值为“O”的位,则将密文字符指针PC所指向的二进制位填入第一明文字符指针Ql指向的明文存储空间,若遇到值为“I”的位,则将密文字符指针PC所指向的二进制位填入第二明文字符指针Q2指向的明文存储空间。进一步作为优选的实施方式,所述步骤S25中所述解密规则为:
按顺序扫描参考字符指针Pf所指向的二进制字符串的位,若遇到值为“ I ”的位,则将密文字符指针pc所指向的二进制位填入第一明文字符指针Ql指向的明文存储空间,若遇至酿为“O”的位,则将密文字符指针pc所指向的二进制位填入第二明文字符指针Q2指向的明文存储空间。在计算机系统中,每对字符指针指向的值做一次操作,字符指针都会相移的偏移,故上述描述中,没有重复描述这一点。同时,为了保证完整的进行加密,选取参考文件时须保证参考文件的字节数大于或等于明文文件的字节数,考虑到参考文件可能出现值为“0x00”或“Oxff”的情况,一般选择字节数稍大于明文文件的字节数的参考文件。下面结合实施例对本发明的一种基于流密码的动态加密解密方法做进一步说明:
首先定义加密规则:设明文文件M中码元个数为m,参考文件F中码元个数为η,η Sm,若n>m,读取参考文件F时,只需读入到到第m位即可,这里,码元个数即前面所述的文件的长度,例如明文文件的码元个数为m,即其长度也为m。选择自然数k作为加密系数,m-1,创建第一明文字符指针Ql指向明文文件M的第k位,同时创建第二明文字符指针Q2指向明文文件M的第k+Ι位;根据密钥文件P的最低位的值进行加密:
(1)若该值为“0”,则加密规则为:按位扫描参考文件,当扫描到参考文件F的某位为“O”时,将第一明文字符指针Ql所指向的二进制位填入参考文件F且第一明文字符指针Ql向前移位,而当扫描到参考文件F的某位为“I”时,将第二明文字符指针Q2所指向的二进制位填入参考文件F且第二明文字符指针Q2向后移位,最后,生成密文文件C ;
(2)若该值为“1”,则加密规则为:按位扫描参考文件,当扫描到参考文件F的某位为“I”时,将第一明文字符指针Ql所指向的二进制位填入参考文件F且第一明文字符指针Ql向前移位,而当扫描到参考文件F的某位为“O”时,将第二明文字符指针Q2所指向的二进制位填入参考文件F且第二明文字符指针Q2向后移位,最后,生成密文文件C ;明显的,密文文件C的码元个数也为m。本发明在实施中,为了避免参考文件F被更改,加密过程中采用方法为:建立与明文文件M具有相同码元m的密文文件C,加密时,根据第一明文字符指针Ql及第二明文字符指针Q2的指向,将明文文件M的码元按位填入到密文文件C与参考文件F对应为{0}或为{1}的位上。解密过程与加密过程类似,与密钥文件P的最低位的值相关,上述两种加密规则对应的解密规则为:
(1-1)若该值为“0”,则解密规则为:按位扫描参考文件,当扫描到参考文件F的某位为“O”时,将密文文件C与参考文件的该相应位填入第一明文字符指针Ql所指向的二进制位,且第一明文字符指针Ql向前移位,而当扫描到参考文件F的某位为“I”时,将密文文件C与参考文件的该相应位填入第二明文字符指针Q2所指向的二进制位,且第二明文字符指针Q2向后移位,最后,得到还原的明文文件M ;
(1-2)若该值为“1”,则解密规则为:按位扫描参考文件,当扫描到参考文件F的某位为“I”时,将密文文件C与参考文件的该相应位填入第一明文字符指针Ql所指向的二进制位,且第一明文字符指针Ql向前移位,而当扫描到参考文件F的某位为“O”时,将密文文件C与参考文件的该相应位填入第二明文字符指针Q2所指向的二进制位,且第二明文字符指针Q2向后移位,最后,得到还原的明文文件M。
本发明的一实施例为:设明文文件M= {01100001},明文文件M的位数为m=8,参考文件F= {01000001},密钥文件P= {01000001},密钥文件P的最低位的值为“0”,取加密系数k=5,即第一明文字符指针Ql明文文件M的第5位,第二明文字符指针Q2指向明文字符M的第6位,根据加密规则及对应的解密规则建立算法集合A= {a,b},其中a为加密算法,b为对应的解密算法,因此,用加密算法a加密明文文件M之后得到密文文件C= {00001101},同样的,对密文文件C采用解密算法b解密后得到还原的明文文件M= {01100001}。要得到还原的明文文件M,需要结合加密系数k、参考文件F、密钥文件P及解密算法b,因此,就算密文文件C被窃取,也无法得到原始的明文文件M。实际应用中,密钥文件P的位数可为32位至128位,每一位可以定义不同的加密解密规则,例如定义从参考文件F的第几位码元开始扫描,定义循环扫描参考文件F的码元位等。再结合选择不同类型及不同大小的参考文件F,如文档、图片及音视频等,可实现加密的多样化,从而保证了加密解密过程的安全性。以上是对本发明的较佳实施进行了具体说明,但本发明创造并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可作出种种的等同变形或替换,这些等同的变型或替换均包含在本申请权利要求所限定的范围内。
权利要求
1.一种基于流密码的动态加密解密方法,其特征在于,包括: 读取明文文件,获得明文文件的长度m后,根据明文文件的长度m,选择一个小于长度m的自然数k作为加密系数; 对密钥文件的不同的二进制位,设定其对应的加密规则及相应的解密规则; 加密步骤:选取参考文件,并读取密钥文件,选择密钥文件的一个二进制位,根据该二进制位对应的加密规则,结合加密系数及参考文件,将明文文件的二进制位进行读写处理,进而生成密文文件; 解密步骤:读取密钥文件,根据加密过程中所选择的二进制位对应的解密规则,结合加密系数及参考文件,将密文文件的二进制位进行读写处理,进而得到还原的明文文件。
2.根据权利要求1所述的一种基于流密码的动态加密解密方法,其特征在于,所述加密步骤包括: 511、读取明文文件的字节数,根据该字节数,在计算机内存开辟明文存储空间,读取明文文件并将其存储在明文存储空间中,并创建第一明文字符指针Ql指向明文存储空间的第k位,同时创建第二明文字符指针Q2指向明文存储空间的第k+Ι位; 512、根据明文文件的字节数,选择参考文件; 513、根据明文文件的字节数,在计算机内存开辟参考存储空间后,读取参考文件并将其存储在参考存储空间中,并创建参考字符指针Pf指向参考存储空间的首地址; 514、读取密钥文件的字节数,根据密钥文件的字节数,在计算机内存开辟密钥存储空间后,读取密钥文件并将其存储在密钥存储空间中,并创建密钥字符指针PP指向密钥存储空间的首地址; 515、根据明文文件的字节数,在计算机内存开辟密文存储空间,并创建密文字符指针pc指向密文存储空间的首地址; 516、根据密钥字符指针pp所指向的二进制字符串的位所定义的加密规则,按顺序扫描参考字符指针Pf所指向的二进制字符串的位,结合该扫描情况及加密规则,将第一明文字符指针Ql或第二明文字符指针Q2所指向的二进制位填入密文字符指针pc指向的密文存储空间中; 517、读取密文存储空间的字节,进而生成密文文件; 其中,所述明文存储空间为循环链表,k为加密系数,所述第一明文字符指针Ql是向前遍历的,所述第二明文字符指针Q2是向后遍历的。
3.根据权利要求2所述的一种基于流密码的动态加密解密方法,其特征在于,所述步骤S13,其具体为: 根据明文文件的字节数,在计算机内存开辟参考存储空间后,读取参考文件并将其存储在参考存储空间中,在读取参考文件的过程中,剔除为“0x00”和“Oxff”的值,且所读取并存储的参考文件的字节数等于明文文件的字节数,并创建参考字符指针Pf指向参考存储空间的首地址。
4.根据权利要求2所述的一种基于流密码的动态加密解密方法,其特征在于,所述步骤S16中所述加密规则为: 按顺序扫描参考字符指针Pf所指向的二进制字符串的位,若遇到值为“O”的位,则将第一明文字符指针Ql所指向的二进制位填入密文字符指针pc指向的密文存储空间,若遇到值为“I”的位,则将第二明文字符指针Q2所指向的二进制位填入密文字符指针PC指向的密文存储空间。
5.根据权利要求2所述的一种基于流密码的动态加密解密方法,其特征在于,所述步骤S16中所述加密规则为: 按顺序扫描参考字符指针Pf所指向的二进制字符串的位,若遇到值为“ I ”的位,则将第一明文字符指针Ql所指向的二进制位填入密文字符指针pc指向的密文存储空间,若遇至IJ值为“O”的位,则将第二明文字符指针Q2所指向的二进制位填入密文字符指针pc指向的密文存储空间。
6.根据权利要求2所述的一种基于流密码的动态加密解密方法,其特征在于,所述解密步骤包括: 521、读取密文文件的字节数,根据该字节数,在计算机内存开辟密文存储空间后,读取密文文件并将其存储在密文存储空间中,并创建密文字符指针pc指向密文存储空间的首地址; 522、根据密文文件的字节数,在计算机内存开辟参考存储空间后,读取在生成密文文件的加密过程中所使用的参考文件,并将参考文件存储在参考存储空间中,并创建参考字符指针Pf指向参考存储空间的首地址; 523、读取密钥文件的字节数,根据密钥文件的字节数,在计算机内存开辟密钥存储空间后,读取密钥文件并将其存储在密钥存储空间中,并创建密钥字符指针PP指向密钥存储空间的首地址; 524、根据密文文件的字节数,在计算机内存开辟明文存储空间,并创建第一明文字符指针Ql指向明文存储空间的 第k位,同时创建第二明文字符指针Q2指向明文存储空间的第k+Ι位; 525、根据密钥字符指针pp所指向的二进制字符串的位所定义的解密规则,按顺序扫描参考字符指针Pf所指向的二进制字符串的位,结合该扫描情况及解密规则,将密文字符指针PC所指向的二进制字符串读出后填入第一明文字符指针Ql或第二明文字符指针Q2所指向的明文存储空间中; 526、读取明文存储空间的字节,进而得到还原的明文文件; 其中,所述明文存储空间为循环链表,k为加密系数,所述第一明文字符指针Ql是向前遍历的,所述第二明文字符指针Q2是向后遍历的。
7.根据权利要求6所述的一种基于流密码的动态加密解密方法,其特征在于,所述步骤S22,其具体为: 根据密文文件的字节数,在计算机内存开辟参考存储空间,读取在生成密文文件的加密过程中所使用的参考文件,并将参考文件存储在参考存储空间中,在读取参考文件的过程中,剔除为“0x00”和“Oxff ”的值,且所读取并存储的参考文件的字节数等于密文文件的字节数,并创建参考字符指针Pf指向参考存储空间的首地址。
8.根据权利要求6所述的一种基于流密码的动态加密解密方法,其特征在于,所述步骤S25中所述解密规则为: 按顺序扫描参考字符指针Pf所指向的二进制字符串的位,若遇到值为“O”的位,则将密文字符指针pc所指向的二进制位填入第一明文字符指针Ql指向的明文存储空间,若遇到值为“I”的位,则将密文字符指针PC所指向的二进制位填入第二明文字符指针Q2指向的明文存储空间。
9.根据权利要求6所述的一种基于流密码的动态加密解密方法,其特征在于,所述步骤S25中所述解密规则为: 按顺序扫描参考字符指针Pf所指向的二进制字符串的位,若遇到值为“ I ”的位,则将密文字符指针pc所指向的二进制位填入第一明文字符指针Ql指向的明文存储空间,若遇到值为“O”的位,则将密文字符指针pc所指向的二进制位填入第二明文字符指针Q2指向的明文存 储空间。
全文摘要
本发明公开了一种基于流密码的动态加密解密方法,包括根据明文文件的长度,选择加密系数;对密钥文件的不同的二进制位,设定其对应的加密规则及相应的解密规则;选取参考文件,并读取密钥文件,选择密钥文件的一个二进制位,根据该二进制位对应的加密规则,结合加密系数及参考文件,将明文文件的二进制位进行读写处理,进而生成密文文件;读取密钥文件,根据加密过程中所选择的二进制位对应的解密规则,结合加密系数及参考文件,将密文文件的二进制位进行读写处理,进而得到还原的明文文件。本发明的一种基于流密码的动态加密解密方法加密方法实现方式简单,安全性高,灵活性强,可广泛应用于计算机通信领域中。
文档编号H04L9/18GK103095449SQ201310015640
公开日2013年5月8日 申请日期2013年1月16日 优先权日2013年1月16日
发明者司玉娟, 郎六琪 申请人:司玉娟
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1