当前位置: 首页 > 专利查询>司玉娟专利>正文

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

技术编号:8685329 阅读:156 留言:0更新日期:2013-05-09 05:00
本发明专利技术公开了一种基于流密码的动态加密解密方法,包括:根据明文文件的长度,选择加密系数;对密钥文件的不同的二进制位,设定其对应的加密规则及相应的解密规则;选取参考文件,并读取密钥文件,选择密钥文件的一个二进制位,根据该二进制位对应的加密规则,结合加密系数及参考文件,将明文文件的二进制位进行读写处理,进而生成密文文件;读取密钥文件,根据加密过程中所选择的二进制位对应的解密规则,结合加密系数及参考文件,将密文文件的二进制位进行读写处理,进而得到还原的明文文件。本发明专利技术的一种基于流密码的动态加密解密方法加密方法实现方式简单,安全性高,灵活性强,可广泛应用于计算机通信领域中。

【技术实现步骤摘要】

本专利技术涉及一种加密解密方法,特别是。
技术介绍
流密码(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指向的明文存储空间。本专利技术的有益效果是:本专利技术的,选取参考文件后,结合预先设定的加密系数及加密规则对明文文件的二进制文件进行加密,从而生成密文文件,在解密过程中,结合密文文件、参考文件、加密系数及对应的解密规则,将密文文件还原为明文文件,实现方式简单,安全性高,灵活性强。附图说明下面结合附图和实施例对本发本文档来自技高网...

【技术保护点】
一种基于流密码的动态加密解密方法,其特征在于,包括:读取明文文件,获得明文文件的长度m后,根据明文文件的长度m,选择一个小于长度m的自然数k作为加密系数;对密钥文件的不同的二进制位,设定其对应的加密规则及相应的解密规则;加密步骤:选取参考文件,并读取密钥文件,选择密钥文件的一个二进制位,根据该二进制位对应的加密规则,结合加密系数及参考文件,将明文文件的二进制位进行读写处理,进而生成密文文件;解密步骤:读取密钥文件,根据加密过程中所选择的二进制位对应的解密规则,结合加密系数及参考文件,将密文文件的二进制位进行读写处理,进而得到还原的明文文件。

【技术特征摘要】
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中所述加密规则为: 按顺序扫...

【专利技术属性】
技术研发人员:司玉娟郎六琪
申请(专利权)人:司玉娟
类型:发明
国别省市:

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

1