专利名称:一文一密的动态加密方法
技术领域:
本发明属于计算机加密技术领域,特别涉及一种一文一密的动态加密方法。
背景技术:
在计算机没有出现之前,信息加密就已经出现了,最早的应用是在传送军事 情报的过程中。
计算机出现以后,尤其是互联网技术的高速发展,信息加密的技术也显得越 来越重要。人们需要通过网络快速传送各种类型的计算机文件信息。而在信息传 递的过程中,由于各种原因,信息会被截获,随着计算机运算速度的不断提高, 解密截获的信息所花费的时间和开销也越来越少,大量重要的信息处于不安全的 状态。
目前采用的加密技术中,基本上是通过增加密钥的长度来加大解密的难度, 就目前人们使用的计算机的运算速度来看,这种技术加密文件是相对安全的,但 当计算机的运算速度达到一个新的高度,比如量子计算机的出现,那么这些加密 技术将不再安全。以银行系统为例,目前人们在网上银行进行交易时,其信息是 相对安全的,解密截获到的信息需要花较长的时间,从解密成本上来看,是不值 得去解密的,然而当量子计算机出现时,这一切就变得很危险了,因为按照目前 人们所使用的最复杂的加密技术,对量子计算机来说,解密所花费的时间也比较 小,同时当加密技术的复杂度提高时,其加密所花的时间按级数增加。
在现阶段,尽管发明了很多信息加密技术,但基本上是采用增加密钥长度或 加大加密复杂度,量子加密尽管可以做到一文一密的加密要求,但由于成本及其 它的技术问题,真正到具体应用还有一段距离,目前还存在许多需要解决的技术困难。
发明内容
本发明为了解决现有技术中存在的不足,特别提出了一种一文一密的动态加 密方法。
本发明的技术方案如下
一种一文一密的动态加密方法,该加密方法包括如下步骤
1) 、根据信息加密方和信息解密方的约定,加密因子程序模块将构建密钥隧 道,通过提取加密方和解密方所处的状态信息以及双方的约定,获取加密因子,
然后把加密因子分别映射到8维空间和64维空间,得到2个空间位置点,这2 个空间位置所对应的坐标值,就是提取的密钥;
2) 系统中空间转换程序模块将计算机文件映射到第一组密钥指定的空间, 得到一个新的映射文件;
3) 系统中进制转换程序模块将映射文件按第二组密钥指定的方式进行处理。 步骤l)中所述密钥隧道是一个逻辑通道,是由加密方和解密方根据双方的
约定以及所处的环境构建的,且密钥隧道两头的端点也就是加密方和解密方所在
的状态是共生共存的,-方的变化将导致另一方的变化;
所述加密因子是一段说明描述文字,记录了加密方和解密方的约定以及当时
的环境因素,且密钥是从加密因子里提取的数字;
所述数字是加密因子映射到空间后对应的空间位置点的坐标值; 所述密钥有2组,第一组是由8个数字构成的密钥,第二组是由64个数字
构成的密钥;
所述加密因子映射到8维空间,其对应的空间位置的坐标就是8位数字的密 钥,由0到7组成,不能有重复出现的数字;
所述加密因子映射到64维空间,其对应的空间位置的坐标就是64位数字的 密钥,由0到63组成,不能有重复出现的数字。
5所述步骤2)使用进制转换程序模块将计算机文件转换为二进制文件,然后
进行加密;其中将8位数字的密码用八卦里的符号一一对应,任何一个卦都可以 对应0 7中的任何一个数字,并用二进制表示八卦的符号,每一个卦包含有三维 空间里的3个坐标值,构成一个八卦空间,空间转换程序模块将计算机文件映射 到八卦空间,得到一个由数字构成的映射文件。
所述步骤3)中根据用户的约定,程序设计员选择64个符号作为64进制的 代号,建立0到63之间64个数字和64个符号的对应关系,每一个符号可以对 应0到63之间64个数字中的任何一个,设定十进制到六十四进制的互换规则, 映射文件按照第2组密钥,通过使用进制转换程序模块进行十进制到六十四进制 的转换。
从以上方案可以看出,本发明提供的一文一密的动态加密方法具有以下效果
1、 每一份文件有一份独立的密钥,加密速度快,加密复杂度的提高,其加 密时间按线性增加;
2、 通过构建加密隧道方式获得密钥,即保证了加密过程的完整性,又可以 得到变幻多样的加密因子,简单、实用性强、速度快。
3、 解密难度大,每份加密文件假如采用枚举法进行解密,其解密总次数为 第1组密码数*第2组密码数*第1组密码所对应的空间数*第2组密码所 对应的64进制符号组合方式,等于8的组合* 64的组合* 8的组合* 64的 组合。
图1为本发明一文一密的动态加密方法的处理流程图2为本发明使用动态加密方法的具体实例;
具体实施例方式
这种一文一密的动态加密方法,可用计算机软件、计算机硬件、或计算机软
件与硬件相结合的方式来实现。结合流程框图l和具体实例图2,下面说明之。
6本发明引用了名为"从信息中提取固定长度空间位置特征数值的方法"的中
国专利,该发明是2008年2月1日由发明人赵文银申请的,专利申请号为 200810057400.0,该方法描述了从文字信息提取空间位置的具体步骤。
在加密方,流程框图如图1所示。在流程的起始端,待加密的文件由用户指 定。图l中的其它步骤,是由计算机系统按照本发明自动执行的。
1) 选取任一需要加密的文件。
2) 连通加密方和解密方,构建加密隧道,收集能够描述加密隧道特征的加 密因子,图201为加密因子。
3) 加密因子经过空间映射,得到2组密钥, 一组为8个数字的密钥,如图 203所示,另一组为64个数字的密钥,如图204所示。密钥的数字排列是有序的, 也就是说,同一个数字,出现在不同的位置,其代表的含义是完全不同的。 比如{7, 3, 6, 1, 4, 0, 2, 5, }, 7在密钥集合中的第1个位置,表示第1 维上的第8个坐标值,而0在密钥集合中的第6个位置,表示第6维上的第1个 坐标值。
4) 8个数字构成的密钥,映射到八卦图上,然后把八卦符号分别用O, 1 来表示,得到了一个空间密钥。
比如,0 = 000, 7=111等。这种映射关系的制定不是唯一的,比如也可以设 定为,0 = 011, 7 = 001等,从而得到一个不对称的空间。
这是-个特殊的空间,3个维度,每个维有2个坐标,每个位置有3个坐标值。
5) 判断加密信息是否为二进制数据,如果是,则进行空间映射,否则,先 将信息转换为二进制文件,再进行空间映射处理。
这样,就得到了一个由位置组成的信息,该位置只包含0到7之间的数字。
6) 由第2组密钥对上述结果进行从10进制到64进制的转换处理。和第1 组的8个数值的密钥一样,第2组密钥由0到63之间的数字构成,密钥是有序 的,按从小到大的顺序排列,分别表示第1维到第64维,而在{和}之间的数字
7则表示在相应维上的坐标值,如图204所示。指定64个不同符号来作为64进制 转换的表示符号,其代表的含义可以根据需要设定,比如64进制的1,可以用l 来表示,也可以用其它符号来表示,比如小写字母a。把经过第l组密钥处理后 的结果进行进制转换,就得到了最终的加密信息,见图205。
7)如果需要进一步增加加密的复杂度,可以把该加密文件进行重新加密, 重复上述2)、 3)、 4)、 5)、 6)五个步骤,就可以得到新的加密结果。在再次加 密的过程中,可以采用上一次的加密隧道,也可以重新构建新的加密隧道。
经过以上的步骤,就可以得到利用一文一密的动态加密方法进行加密的文件。
以上,仅对信息的加密方法进行了说明,其解密方法是加密方法的逆过程, 所采用的方法和加密方法一样。
以上,仅以计算机文件信息为例,对本发明动态加密方法进行了详细的说明, 但是本发明所提供的方法同样使用于其它需要进行信息加密的领域,比如手机信 息加密、无线电信号加密等,在其它领域的实现方法和以上所述的方法基本一致, 这里不再赘述。
以上所述,仅为本发明的具体实施例而己,并非用以限定本发明的保护范围。
8
权利要求
1、一种一文一密的动态加密方法,其特征在于该加密方法包括如下步骤1)、根据信息加密方和信息解密方的约定,加密因子程序模块将构建密钥隧道,通过提取加密方和解密方所处的状态信息以及双方的约定,获取加密因子,然后把加密因子分别映射到8维空间和64维空间,得到2个空间位置点,这2个空间位置所对应的坐标值,就是提取的密钥;2)系统中空间转换程序模块将计算机文件映射到第一组密钥指定的空间,得到一个新的映射文件;3)系统中进制转换程序模块将映射文件按第二组密钥指定的方式进行处理。
2、 根据权利要求1所述的一种一文一密的动态加密方法,其特征在于步 骤l)中所述密钥隧道是一个逻辑通道,是由加密方和解密方根据双方的约定以 及所处的环境构建的,且密钥隧道两头的端点也就是加密方和解密方所在的状态 是共生共存的, 一方的变化将导致另一方的变化;所述加密因子是一段说明描述文字,记录了加密方和解密方的约定以及当时 的环境因素,且密钥是从加密因子里提取的数字;所述数字是加密因子映射到空间后对应的空间位置点的坐标值。
3、根据权利要求2所述的一种--文.-密的动态加密方法,其特征在于所述 密钥有2组,第一组是由8个数字构成的密钥,第二组是由64个数字构成的密 钥;所述加密因子映射到8维空间,其对应的空间位置的坐标就是8位数字的密 钥,由0到7组成,不能有重复出现的数字;所述加密因子映射到64维空间,其对应的空间位置的坐标就是64位数字的 密钥,由0到63组成,不能有重复出现的数字。
4、根据权利要求1所述的一种一文一密的动态加密方法,其特征在于所述步骤2)使用进制转换程序模块将计算机文件转换为二进制文件,然后进行加 密;其中将8位数字的密码用八卦里的符号一一对应,任何一个卦都可以对应0 7 中的任何一个数字,并用二进制表示八卦的符号,每一个卦包含有三维空间里的 3个坐标值,构成一个八卦空间,空间转换程序模块将计算机文件映射到八卦空 间,得到一个由数字构成的映射文件。
5、根据权利要求1所述的一种一文一密的动态加密方法,其特征在于所 述步骤3)中根据用户的约定,程序设计员选择64个符号作为64进制的代号, 建立0到63之间64个数字和64个符号的对应关系,每一个符号可以对应0到 63之间64个数字中的任何一个,设定十进制到六十四进制的互换规则,映射文 件按照第2组密钥,通过使用进制转换程序模块进行十进制到六十四进制的转换。
全文摘要
本发明属于计算机加密技术领域,特别涉及一种一文一密的动态加密方法。该加密方法包括如下步骤1)根据信息加密方和信息解密方的约定,加密因子程序模块将构建密钥隧道,通过提取加密方和解密方所处的状态信息以及双方的约定,获取加密因子,然后把加密因子分别映射到8维空间和64维空间,得到2个空间位置点,这2个空间位置所对应的坐标值,就是提取的密钥;2)系统中空间转换程序模块将计算机文件映射到第一组密钥指定的空间,得到一个新的映射文件;3)系统中进制转换程序模块将映射文件按第二组密钥指定的方式进行处理。
文档编号H04L9/18GK101534191SQ20081010168
公开日2009年9月16日 申请日期2008年3月11日 优先权日2008年3月11日
发明者赵文银 申请人:北京乾坤化物数字技术有限公司