一种分组加密方法、装置及系统与流程

未命名 07-12 阅读:59 评论:0


1.本发明属于网络环境下数据安全传输技术领域,具体涉及一种分组加密方法、装置及系统。


背景技术:

2.为防止数据在网络传输中的机密性,通常会利用一种加密算法将发送的消息加密成乱码后进行传输,接收者接收后通过解密将乱码还原回原本的消息。现有的标准加密算法有国际加密标准aes,中国加密标准sm4等。在物联网等资源受限环境下,中国尚未有标准的轻量级加密标准,而国际上出现了iso标准轻量级加密算法hight、present、clefia以及美国nist提出的simon、speck等。
3.轻量级加密算法的研究尚不成熟,当前标准加密算法软硬件实现代价往往较大,甚至难以直接应用于资源极为受限的环境下;当前中国没有标准的轻量级加密算法;国际上提出的各种轻量级加密标准算法也存在各种各样的问题,如hight存在全轮攻击、present算法存在非随机区分器、clefia硬件实现仍然过重、以及不simon和speck没有安全性自评估结果等。


技术实现要素:

4.针对上述问题,本发明提出一种分组加密方法、装置及系统,能够提高加密效率和降低所需能耗和内存。
5.为了实现上述技术目的,达到上述技术效果,本发明通过以下技术方案实现:
6.第一方面,本发明提供了一种分组加密方法,包括:
7.将原始密钥和轮数作为输入数据,输入至第一轮函数,获得若干个与轮数相关的子密钥;
8.将原始数据进行分组,获得若干组数据;
9.分别将各组数据和所有与轮数相关的子密钥作为输入数据,输入至第二轮函数,得到若干组加密数据。
10.可选地,所述第一轮函数和第二轮函数的结构相同,均包括n个顺次相连的逻辑单元;
11.各逻辑单元的结构相同,均包括第一循环移位模块、第二循环移位模块、第一异或模块、第二异或模块和模加模块;
12.所述第一循环移位模块的一端与所述第一异或模块的一端相连,且用于作为逻辑单元的其中一个输入端,另一端与所述第二异或模块的一端相连;
13.所述第二异或模块的另一端用于作为逻辑单元的另一个输入端;
14.所述第一异或模块的另一端与所述第二循环移位模块的一端相连,且用于作为逻辑单元的其中一个输出端;
15.所述第二循环移位模块的另一端与所述模加模块的其中一端相连;
16.所述模加模块的另一端与所述第二异或模块的另一端相连,且用于作为逻辑单元的另一个输出端。
17.可选地,在将原始密钥作为输入数据,输入至第一轮函数之前,还包括:将原始密钥分为k0和t0两支密钥;
18.所述第一轮函数中的各逻辑单元的输出表达式为:
[0019][0020]
式中,k
i+1
和t
i+1
分别表示第i逻辑单元的两支输出子密钥,ki和ti分别表示第i逻辑单元的两支输入子密钥,ci表示第i轮,x1和x2分别表示第一循环移位模块、第二循环移位模块的移位位数,《《《表示左循环移位,表示异或,表示位模加,i=1,2,

n。
[0021]
可选地,所述第二轮函数中的各逻辑单元的输出表达式为:
[0022][0023]
式中,和分别表示第i逻辑单元的两支输出数据,和分别表示第i逻辑单元的两支输入数据,ki表示第i轮的密钥,x1和x2分别表示第一循环移位模块、第二循环移位模块的移位位数,<<<表示左循环移位,表示异或,表示位模加,i=0,2,

n-1。
[0024]
可选地,在将原始数据进行分组,获得若干组数据时,若最后一组数据的长度小于分组长度,则对最后一组数据进行填充操作,使得填充后的数据的长度等于分组长度。
[0025]
第二方面,本发明提供了一种分组加密装置,包括:
[0026]
子密钥获取模块,用于将原始密钥和轮数作为输入数据,输入至第一轮函数,获得若干个与轮数相关的子密钥;
[0027]
分组模块,用于将原始数据进行分组,获得若干组数据;
[0028]
加密模块,用于分别将各组数据和所有与轮数相关的子密钥作为输入数据,输入至第二轮函数,得到若干组加密数据。
[0029]
可选地,所述第一轮函数和第二轮函数的结构相同,均包括n个顺次相连的逻辑单元;
[0030]
各逻辑单元的结构相同,均包括第一循环移位模块、第二循环移位模块、第一异或模块、第二异或模块和模加模块;
[0031]
所述第一循环移位模块的一端与所述第一异或模块的一端相连,且用于作为逻辑单元的其中一个输入端,另一端与所述第二异或模块的一端相连;
[0032]
所述第二异或模块的另一端用于作为逻辑单元的另一个输入端;
[0033]
所述第一异或模块的另一端与所述第二循环移位模块的一端相连,且用于作为逻辑单元的其中一个输出端;
[0034]
所述第二循环移位模块的另一端与所述模加模块的其中一端相连;
[0035]
所述模加模块的另一端与所述第二异或模块的另一端相连,且用于作为逻辑单元的另一个输出端。
[0036]
可选地,在将原始密钥作为输入数据,输入至第一轮函数之前,还包括:将原始密钥分为k0和t0两支密钥;
[0037]
所述第一轮函数中的各逻辑单元的输出表达式为:
[0038][0039]
式中,k
i+1
和t
i+1
分别表示第i逻辑单元的两支输出子密钥,ki和ti分别表示第i逻辑单元的两支输入子密钥,ci表示第i轮,x1和x2分别表示第一循环移位模块、第二循环移位模块的移位位数,《《《表示左循环移位,表示异或,表示位模加,i=1,2,

n。
[0040]
可选地,所述第二轮函数中的各逻辑单元的输出表达式为:
[0041][0042]
式中,和分别表示第i逻辑单元的两支输出数据,和分别表示第i逻辑单元的两支输入数据,ki表示第i轮的密钥,x1和x2分别表示第一循环移位模块、第二循环移位模块的移位位数,《《《表示左循环移位,表示异或,表示位模加,i=0,2,

n-1。
[0043]
可选地,在将原始数据进行分组,获得若干组数据时,若最后一组数据的长度小于分组长度,则对最后一组数据进行填充操作,使得填充后的数据的长度等于分组长度。
[0044]
第三方面,本发明提供了一种分组加密系统,包括存储介质和处理器;
[0045]
所述存储介质用于存储指令;
[0046]
所述处理器用于根据所述指令进行操作以执行根据第一方面中任一项所述的方法。
[0047]
与现有技术相比,本发明的有益效果:
[0048]
本发明利用第一轮函数生成若干个子密钥,利用第二轮函数和所有与轮数相关的子密钥实现数据加密,不仅能够提高加密效率,还能够降低所需能耗和内存。
[0049]
本发明中第一轮函数和第二轮函数的逻辑单元均只包含两个循环移位模块、一个模加模块和两个异或模块,结构简单,尽可能地实现轻量化。
[0050]
本发明采用模加操作代替s盒(对称密钥算法执行置换计算的基本结构)操作作为算法的非线性组件,相对带s盒的传统算法而言,软件实现效率具有明显的优势,且防护侧信道攻击的代价小。
[0051]
本发明的子密钥生成过程和数据加密过程具备一致性,能够抵抗相关密钥攻击。
附图说明
[0052]
为了使本发明的内容更容易被清楚地理解,下面根据具体实施例并结合附图,对本发明作进一步详细的说明,其中:
[0053]
图1为本发明一种实施例的分组加密方法的流程图;
[0054]
图2为本发明一种实施例的第一轮函数的结构示意图;
[0055]
图3为本发明一种实施例的第二轮函数的结构示意图。
具体实施方式
[0056]
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明的保护范围。
[0057]
下面结合附图对本发明的应用原理作详细的描述。
[0058]
实施例1
[0059]
本发明提供了一种分组加密方法,如图1所示,包括以下步骤:
[0060]
(1)将原始密钥和轮数作为输入数据,输入至第一轮函数,获得若干个与轮数相关的子密钥;
[0061]
(3)将原始数据进行分组,获得若干组数据;
[0062]
(3)分别将各组数据和所有与轮数相关的子密钥作为输入数据,输入至第二轮函数,得到若干组加密数据。
[0063]
在本发明实施例的一种具体实施方式中,如图2-3所示,所述第一轮函数和第二轮函数的结构相同,但是所述第一轮函数和第二轮函数的输入和输出数据是不同的;所述第一轮函数和第二轮函数均包括n个顺次相连的逻辑单元;各逻辑单元的结构相同,均包括第一循环移位模块、第二循环移位模块、第一异或模块、第二异或模块和模加模块;
[0064]
所述第一循环移位模块的一端与所述第一异或模块的一端相连,且用于作为逻辑单元的其中一个输入端,另一端与所述第二异或模块的一端相连;
[0065]
所述第二异或模块的另一端用于作为逻辑单元的另一个输入端;
[0066]
所述第一异或模块的另一端与所述第二循环移位模块的一端相连,且用于作为逻辑单元的其中一个输出端;
[0067]
所述第二循环移位模块的另一端与所述模加模块的其中一端相连;
[0068]
所述模加模块的另一端与所述第二异或模块的另一端相连,且用于作为逻辑单元的另一个输出端。
[0069]
在本发明实施例的一种具体实施方式中,在将原始密钥作为输入数据,输入至第一轮函数之前,还包括:将原始密钥分为k0和t0两支密钥;
[0070]
在执行将原始密钥和轮数作为输入数据,输入至第一轮函数,获得若干个与轮数相关的子密钥步骤时,所述第一轮函数中的各逻辑单元的输出表达式为:
[0071][0072]
式中,k
i+1
和t
i+1
分别表示第i逻辑单元的两支输出子密钥,ki和ti分别表示第i逻辑单元的两支输入子密钥,ci表示第i轮,x1和x2分别表示第一循环移位模块、第二循环移位模块的移位位数,《《《表示左循环移位,表示异或,表示位模加,i=1,2,

n。在具体实施过程中,所述x1和x2可以设置为13和22,也可设置其他参数以达到相似的安全性,如2和21、22和13等。所述n可以取值为24。各子密钥的长度可以设置为64,n和各子密钥的长度也可以设置为其他合适的值。
[0073]
在执行分别将各组数据和所有与轮数相关的子密钥作为输入数据,输入至第二轮函数,得到若干组加密数据步骤时,所述第二轮函数中的各逻辑单元的输出表达式为:
[0074][0075]
式中,和分别表示第i逻辑单元的两支输出数据,和分别表示第i逻辑单元的两支输入数据,ki表示第i轮的密钥,x1和x2分别表示第一循环移位模块、第二循环移位模块的移位位数,《《《表示左循环移位,表示异或,表示位模加,i=0,2,

n-1。在具体实施过程中,所述x1和x2可以设置为13和22,也可设置其他参数以达到相似的安全性,如2和21、22和13等。所述n可以取值为24。各组数据的长度可以设置为64,n和各子密钥的长度也可以设置为其他合适的值。
[0076]
在本发明实施例的一种具体实施方式中,在将原始数据进行分组,获得若干组数据时,若最后一组数据的长度小于分组长度,则对最后一组数据进行填充操作,使得填充后的数据的长度等于分组长度。
[0077]
特别地,本发明中,为提高算法的安全性,轮函数中两个循环左移操作的参数设定为13和22。
[0078]
除了上述参数外,也可设置其他参数以达到相似的安全性,如2和21、22和13。
[0079]
按照本发明的分组加密方法,在数据传输过程中具有轻量化、高效性、低功耗和少量内存等优势。本发明实施例中的分组加密方法可用于计算、存储资源受限的电力物联传感设备等小型器件。
[0080]
下面结合一具体实施方式对本发明实施例中的分组加密方法进行详细说明。
[0081]
设定分组长度为64比特,循环次数设定为24。
[0082]
若原始数据大于64比特,则将原始数据进行分组,并对不足64比特的分组数据进行补零,然后将每组数据分为左右两支按如下过程生成64比特输出
[0083]
若原始数据正好为64比特,则直接将原始数据分为左右两支按如下过程生成64比特输出
[0084][0085]
从64比特明文开始,该过程需要更新23次,即i=0,1,

,22。
[0086]
最后,执行
[0087][0088]
生成64比特密文其中,ki是第i=0,1,

,23轮的子密钥,其生成过程如下:
[0089]
假设64比特主密钥分为左右两支由(ki,ti)生成(k
i+1
,t
i+1
),i=0,1,

,23的更新过程如下:
[0090][0091]
测试向量:
[0092]
明文:0x0123456789abcdef
[0093]
密钥:0x0123456789abcdef
[0094]
密文:0x8441cbc2ea3eff46。
[0095]
实施例2
[0096]
本发明实施例中提供了一种分组加密装置,包括:
[0097]
子密钥获取模块,用于将原始密钥和轮数作为输入数据,输入至第一轮函数,获得若干个与轮数相关的子密钥;
[0098]
分组模块,用于将原始数据进行分组,获得若干组数据;
[0099]
加密模块,用于分别将各组数据和所有与轮数相关的子密钥作为输入数据,输入至第二轮函数,得到若干组加密数据。
[0100]
在本发明实施例的一种具体实施方式中,如图2-3所示,所述第一轮函数和第二轮函数的结构相同,但是所述第一轮函数和第二轮函数的输入和输出数据是不同的;所述第一轮函数和第二轮函数均包括n个顺次相连的逻辑单元;各逻辑单元的结构相同,均包括第一循环移位模块、第二循环移位模块、第一异或模块、第二异或模块和模加模块;
[0101]
所述第一循环移位模块的一端与所述第一异或模块的一端相连,且用于作为逻辑单元的其中一个输入端,另一端与所述第二异或模块的一端相连;
[0102]
所述第二异或模块的另一端用于作为逻辑单元的另一个输入端;
[0103]
所述第一异或模块的另一端与所述第二循环移位模块的一端相连,且用于作为逻辑单元的其中一个输出端;
[0104]
所述第二循环移位模块的另一端与所述模加模块的其中一端相连;
[0105]
所述模加模块的另一端与所述第二异或模块的另一端相连,且用于作为逻辑单元的另一个输出端。
[0106]
在本发明实施例的一种具体实施方式中,在将原始密钥作为输入数据,输入至第一轮函数之前,还包括:将原始密钥分为k0和t0两支密钥;
[0107]
在执行将原始密钥和轮数作为输入数据,输入至第一轮函数,获得若干个与轮数相关的子密钥步骤时,所述第一轮函数中的各逻辑单元的输出表达式为:
[0108][0109]
式中,k
i+1
和t
i+1
分别表示第i逻辑单元的两支输出子密钥,ki和ti分别表示第i逻辑单元的两支输入子密钥,ci表示第i轮,x1和x2分别表示第一循环移位模块、第二循环移位模块的移位位数,<<<表示左循环移位,表示异或,表示位模加,i=1,2,

n。在具体实施过程中,所述x1和x2可以设置为13和22,也可设置其他参数以达到相似的安全性,如2和21、22和13等。所述n可以取值为24。各子密钥的长度可以设置为64,n和各子密钥的长度也可以设置为其他合适的值。
[0110]
在执行分别将各组数据和所有与轮数相关的子密钥作为输入数据,输入至第二轮
函数,得到若干组加密数据步骤时,所述第二轮函数中的各逻辑单元的输出表达式为:
[0111][0112]
式中,和分别表示第i逻辑单元的两支输出数据,和分别表示第i逻辑单元的两支输入数据,ki表示第i轮的密钥,x1和x2分别表示第一循环移位模块、第二循环移位模块的移位位数,<<<表示左循环移位,表示异或,表示位模加,i=0,2,

n-1。在具体实施过程中,所述x1和x2可以设置为13和22,也可设置其他参数以达到相似的安全性,如2和21、22和13等。所述n可以取值为24。各组数据的长度可以设置为64,n和各子密钥的长度也可以设置为其他合适的值。
[0113]
在本发明实施例的一种具体实施方式中,在将原始数据进行分组,获得若干组数据时,若最后一组数据的长度小于分组长度,则对最后一组数据进行填充操作,使得填充后的数据的长度等于分组长度。
[0114]
下面结合一具体实施方式对本发明实施例中的分组加密装置的工作过程进行详细说明。
[0115]
设定分组长度为64比特,循环次数设定为24。
[0116]
若原始数据大于64比特,则将原始数据进行分组,并对不足64比特的分组数据进行补零,然后将每组数据分为左右两支按如下过程生成64比特输出
[0117]
若原始数据正好为64比特,则直接将原始数据分为左右两支按如下过程生成64比特输出
[0118][0119]
从64比特明文开始,该过程需要更新23次,即i=0,1,

,22。
[0120]
最后,执行
[0121][0122]
生成64比特密文其中,ki是第i=0,1,

,23轮的子密钥,其生成过程如下:
[0123]
假设64比特主密钥分为左右两支由(ki,ti)生成(k
i+1
,t
i+1
),i=0,1,

,23的更新过程如下:
[0124][0125]
测试向量:
[0126]
明文:0x0123456789abcdef
[0127]
密钥:0x0123456789abcdef
[0128]
密文:0x8441cbc2ea3eff46。
[0129]
实施例3
[0130]
基于与实施例1相同的发明构思,本发明提供了一种分组加密系统,包括存储介质和处理器;
[0131]
所述存储介质用于存储指令;
[0132]
所述处理器用于根据所述指令进行操作以执行根据实施例1中任一项所述的方法。
[0133]
本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0134]
本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0135]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0136]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0137]
以上结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。
[0138]
以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。

技术特征:
1.一种分组加密方法,其特征在于,包括:将原始密钥和轮数作为输入数据,输入至第一轮函数,获得若干个与轮数相关的子密钥;将原始数据进行分组,获得若干组数据;分别将各组数据和所有与轮数相关的子密钥作为输入数据,输入至第二轮函数,得到若干组加密数据。2.根据权利要求1所述的一种分组加密方法,其特征在于:所述第一轮函数和所述第二轮函数的结构相同,均包括n个顺次相连的逻辑单元;各逻辑单元的结构相同,均包括第一循环移位模块、第二循环移位模块、第一异或模块、第二异或模块和模加模块;所述第一循环移位模块的一端与所述第一异或模块的一端相连,且用于作为逻辑单元的其中一个输入端,另一端与所述第二异或模块的一端相连;所述第二异或模块的另一端用于作为逻辑单元的另一个输入端;所述第一异或模块的另一端与所述第二循环移位模块的一端相连,且用于作为逻辑单元的其中一个输出端;所述第二循环移位模块的另一端与所述模加模块的其中一端相连;所述模加模块的另一端与所述第二异或模块的另一端相连,且用于作为逻辑单元的另一个输出端。3.根据权利要求2所述的一种分组加密方法,其特征在于:在将原始密钥作为输入数据,输入至第一轮函数之前,还包括:将原始密钥分为k0和t0两支密钥;所述第一轮函数中的各逻辑单元的输出表达式为:式中,k
i+1
和t
i+1
分别表示第i逻辑单元的两支输出子密钥,k
i
和t
i
分别表示第i逻辑单元的两支输入子密钥,c
i
表示第i轮,x1和x2分别表示第一循环移位模块、第二循环移位模块的移位位数,<<<表示左循环移位,表示异或,表示位模加,i=1,2,

n。4.根据权利要求2所述的一种分组加密方法,其特征在于:所述第二轮函数中的各逻辑单元的输出表达式为:式中,和分别表示第i逻辑单元的两支输出数据,和分别表示第i逻辑单元的两支输入数据,k
i
表示第i轮的密钥,x1和x2分别表示第一循环移位模块、第二循环移位模块的移位位数,<<<表示左循环移位,表示异或,表示位模加,i=0,2,

n-1。5.根据权利要求1所述的一种分组加密方法,其特征在于:在将原始数据进行分组,获得若干组数据时,若最后一组数据的长度小于分组长度,则对最后一组数据进行填充操作,使得填充后的数据的长度等于分组长度。
6.一种分组加密装置,其特征在于,包括:子密钥获取模块,用于将原始密钥和轮数作为输入数据,输入至第一轮函数,获得若干个与轮数相关的子密钥;分组模块,用于将原始数据进行分组,获得若干组数据;加密模块,用于分别将各组数据和所有与轮数相关的子密钥作为输入数据,输入至第二轮函数,得到若干组加密数据。7.根据权利要求6所述的一种分组加密装置,其特征在于,所述第一轮函数和第二轮函数的结构相同,均包括n个顺次相连的逻辑单元;各逻辑单元的结构相同,均包括第一循环移位模块、第二循环移位模块、第一异或模块、第二异或模块和模加模块;所述第一循环移位模块的一端与所述第一异或模块的一端相连,且用于作为逻辑单元的其中一个输入端,另一端与所述第二异或模块的一端相连;所述第二异或模块的另一端用于作为逻辑单元的另一个输入端;所述第一异或模块的另一端与所述第二循环移位模块的一端相连,且用于作为逻辑单元的其中一个输出端;所述第二循环移位模块的另一端与所述模加模块的其中一端相连;所述模加模块的另一端与所述第二异或模块的另一端相连,且用于作为逻辑单元的另一个输出端。8.根据权利要求7所述的一种分组加密装置,其特征在于,在将原始密钥作为输入数据,输入至第一轮函数之前,还包括:将原始密钥分为k0和t0两支密钥;所述第一轮函数中的各逻辑单元的输出表达式为:式中,k
i+1
和t
i+1
分别表示第i逻辑单元的两支输出子密钥,k
i
和t
i
分别表示第i逻辑单元的两支输入子密钥,c
i
表示第i轮,x1和x2分别表示第一循环移位模块、第二循环移位模块的移位位数,<<<表示左循环移位,表示异或,表示位模加,i=1,2,

n。9.根据权利要求7所述的一种分组加密装置,其特征在于,所述第二轮函数中的各逻辑单元的输出表达式为:式中,和分别表示第i逻辑单元的两支输出数据,和分别表示第i逻辑单元的两支输入数据,k
i
表示第i轮的密钥,x1和x2分别表示第一循环移位模块、第二循环移位模块的移位位数,<<<表示左循环移位,表示异或,表示位模加,i=0,2,

n-1。10.根据权利要求6所述的一种分组加密装置,其特征在于,在将原始数据进行分组,获得若干组数据时,若最后一组数据的长度小于分组长度,则对最后一组数据进行填充操作,使得填充后的数据的长度等于分组长度。11.一种分组加密系统,其特征在于:包括存储介质和处理器;
所述存储介质用于存储指令;所述处理器用于根据所述指令进行操作以执行根据权利要求1~5中任一项所述的方法。

技术总结
本发明公开了一种分组加密方法、装置及系统,所述方法包括将原始密钥和轮数作为输入数据,输入至第一轮函数,获得若干个与轮数相关的子密钥;将原始数据进行分组,获得若干组数据;分别将各组数据和所有与轮数相关的子密钥作为输入数据,输入至第二轮函数,得到若干组加密数据。本发明能够提高加密效率和降低所需能耗和内存,本发明的子密钥生成过程和数据加密过程具备一致性,能够抵抗相关密钥攻击。能够抵抗相关密钥攻击。能够抵抗相关密钥攻击。


技术研发人员:朱雪琼 胡成博 张子阳 路永玲 杨景刚 孙蓉 王真 贾骏 刘子全 薛海 付慧 黄强 李双伟
受保护的技术使用者:国家电网有限公司 国网江苏省电力有限公司 江苏省电力试验研究院有限公司
技术研发日:2023.03.30
技术公布日:2023/7/7
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐