安全信息分散加密算法的制作方法

文档序号:12751447阅读:974来源:国知局
安全信息分散加密算法的制作方法与工艺

本发明涉及一种加密算法,具体涉及一种安全信息分散加密算法,是一种对称加密算法,属于加密方法领域。



背景技术:

目前,对称加密算法的重加密过程如下:

首先,对加密的数据使用秘钥key对文件进行解密DeEncrypt(File,key),然后生成新的秘钥new_key,再使用新的秘钥对数据Encrypt(File,bew_key)。

该过程的缺陷在于,重加密的开销较大,特别在应用于网络数据重加密时,网络负载,重加密时间开销较大。



技术实现要素:

本发明的目的为解决重加密开销大的问题,提高对称加密算法效率,提供一种安全信息分散加密算法,是一种对称加密算法,该加密算法可以提高算法中选择的对称加密算法(如AES)的效率,并且使用该算法重加密的开销更小。

为了实现上诉目标,本发明采用如下技术方案:

一种安全信息分散加密算法,其特征在于,其加密过程包括以下步骤:

步骤一、选择一种对称加密算法(例:AES)作为加密算法。

步骤二、读取分组:每次读取N段长度为M字节的数据

步骤三、第一层加密:使用密钥Key1对N*M字节数据的一部分(例:第一段)进行对称加密

步骤四、数据变换:对每个N*M数据进行数据抽取、矩阵变换、数据归位:

数据抽取:抽取每段数据的第i个字节组成一个长度为N字节的单元。

矩阵变换:使用N维可逆矩阵G对长度为N的数据单元进行矩阵变换。

数据归位:经过数据变换长度为N字节的数据单元的每个字节还原到各自数据段的第i个字节处。

步骤五、第二层加密:使用密钥Key2对每个N*M数据变换后的一部分(例:第一段)进行对称加密。写回分组成密文。

其解密过程包括以下步骤:

步骤一、读取分组:每次读取N段长度为M字节的数据

步骤二、第一层解密:使用密钥Key2对每个N*M数据的加密部分(例:第一段)进行解密

步骤三、数据逆变换:对每个N*M字节数据进行数据抽取、矩阵的逆变换、数据归位。

数据抽取:抽取每段数据的第i个字节组成一个长度为N字节的单元。

矩阵变换:使用N维可逆矩阵G-1对长度为N的数据单元进行矩阵变换。

数据归位:经过数据变换长度为N字节的数据单元的每个字节还原到各自数据段的第i个字节处。

步骤四、第二层解密:使用Key1对数据变换后的数据的一部分(例:第一段)进行解密,写回分组成明文。

进行数据重加密的过程为:

步骤一、对加密后的数据,每次读取N段长度为M字节的数据。

步骤二、用密钥key2对数据的第一段进行解密。

步骤三、产生新的密钥Key3,并用Key3对数据的第一段进行加密。

本发明的有益之处在于:本发明的加密算法选择一个核心对称加密算法,然后加密部分数据,通过信息分散来实现数据的整体加密,降低了加密的开销。重加密文件仅仅需要重要重新加密每个M*N字节信息的第一段即可,降低了重加密开销。

附图说明

图1 是本发明的安全分散加密算法加密过程的流程图

图2 是加密中的读取分组(N*M,N为每个文件的段数,M为每段的字节数)

图3是加密过程中数据变换过程

图4是数据变换中的数据抽取流程

图5是数据变换中的矩阵变换方法

图6是本发明的安全分散加密算法解密过程的流程图

图7是解密过程中数据逆变换过程

图8 是数据逆变换中的矩阵逆变换方法。

具体实施方式

以下结合附图对本发明的优选实施例作具体的介绍。

实施例一: 参见图1~图8,本安全加密算法的加解密过程

参照图1,本安全分散加密算法,其加密包括以下步骤:

步骤一、选择AES作为加密算法。

步骤二、参照图2,数据读取过程,每次读取4段长度为32字节的数据

步骤三、使用密钥Key1对4*32字节数据的第一段进行对称加密

步骤四、参照图3,对每个4*32数据进行数据抽取、矩阵变换和数据归位:

数据抽取:参照图4,数据抽取,每段数据的第i个字节组成一个长度为4字节的单元。

矩阵变换:参照图5,使用N维可逆矩阵G对长度为4字节的数据单元进行矩阵变换。

数据归位:参照图4,由下向上执行。经过数据变换的长度为4字节的数据单元的每个字节还原到各自数据段的第i个字节处。

步骤五、使用密钥Key2对每个4*32数据变换后的第一段进行对称加密

参照图6,本发明的安全分散解密算法,其包括以下步骤:

步骤一、每次读取4段长度为32字节的数据

步骤二、使用Key2对每个N*M数据的加密部分(如第一段)进行解密

步骤三、参照图7,对每个4*32字节数据进行数据抽取、矩阵逆变换和数据归位。

数据抽取:抽取每段数据的第i个字节组成一个长度为N字节的单元。

矩阵逆变换:参照图8,使用N维可逆矩阵G-1对长度为4的数据单元进行矩阵变换。

数据归位:经过数据变换的长度为4字节的数据单元的每个字节还原到各自数据段的第i个字节处。

步骤四、使用密钥Key1对数据变换后的数据的第一段进行解密

实施例二:本安全分散算法的重加密过程,包括以下步骤:

步骤一、每次读取4段长度为32字节的数据

步骤二、使用密钥Key2对数据的第一段进行解密

步骤三、产生新的密钥Key3,使用其对数据的第一段进行加密

需要说明的是,上述实施不以任何形式限制本发明,凡是采用等同变换的方式所获得的技术方案,均含在本发明的保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1