所属的技术人员知道,本发明可以实现为系统、方法或计算机程序产品,因此,本发明可以具体实现为以下形式,即:可以是完全的硬件、也可以是完全的软件(包括固件、驻留软件、微代码等),还可以是硬件和软件结合的形式,本文一般称为“电路”、“模块”或“系统”。此外,在一些实施例中,本发明还可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是一一但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram),只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。以上实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
背景技术:
1、工业控制器是一种专门设计用于监控、管理和控制工业过程的设备。它们通常用于工厂、生产线、机械设备等工业环境中,以确保生产过程的高效性、安全性和可靠性。
2、在工业控制器中可能涉及到机密的生产工艺、产品设计、商业机密、控制指令、传感器数据等信息。一旦泄露会被不法分子利用,导致生产线停工、设备损坏或产品质量问题,严重影响企业的生产效率和经济效益。因此,需要对工业控制器的数据进行加密保护。
3、尽管目前已有很多利用加密算法以及混沌系统对数据进行加密的方法,然而当前的加密算法尽管在安全性上有了很大的突破,但考虑到工业控制器在每时每刻产生的数据较多,当前的加密算法往往在加密过程中滥用加密算法以及混沌系统,产生大量的无效运算以及无效参数,造成计算资源的浪费,影响工业控制器的数据传输效率。
技术实现思路
1、为了解决当前的加密算法尽管在安全性上有了很大的突破,但考虑到工业控制器在每时每刻产生的数据较多,当前的加密算法往往在加密过程中滥用加密算法以及混沌系统,产生大量的无效运算以及无效参数,造成计算资源的浪费,影响工业控制器的数据传输效率的技术问题,本发明提供一种基于国密算法的安全工业控制器、方法、设备和存储介质,具体如下:
2、1)第一方面,本发明提供一种基于国密算法的安全工业控制器,具体技术方案如下:
3、包括:获取模块、选取模块、生成模块、拆分模块、变形模块、排序模块和加密模块;
4、获取模块用于:获取安全工业控制器的待传输明文数据;
5、选取模块用于:从国密算法库中选取n个国密算法;
6、生成模块用于:随机生成初始密钥;
7、拆分模块用于:对初始密钥进行拆分,得到2n个密钥块;
8、变形模块用于:对2n个密钥块两两进行交叉、变异和拼接处理,得到n个变形密钥,n个变形密钥与n个选取的国密算法一一对应;
9、排序模块用于:对n个选取的国密算法进行随机排序,得到随机排序结果;
10、加密模块用于:按照随机排序结果,依次利用每个选取的国密算法以及相应的变形密钥对待传输明文数据进行n轮加密处理。
11、本发明提供的一种基于国密算法的安全工业控制器的有益效果如下:
12、在本发明中,避免滥用加密算法以及混沌系统,对密钥进行有效的变换,通过对密钥进行拆分、交叉、变异以及拼接处理,构建新型的密钥,优化密钥生成和加密过程,减少了不必要的计算开销,进而基于现有的非常成熟的国密算法与构建的新型密钥配合使用,实现对于工业控制器数据的加密,而不是简单地叠加滥用加密算法或混沌系统,减少无效运算以及无效参数,节省计算资源,进而提升工业控制器的数据传输效率,实现工业控制器数据的快速化、轻量化、安全化的传输。
13、在上述方案的基础上,本发明的一种基于国密算法的安全工业控制器还可以做如下改进。
14、进一步,选取模块具体用于:
15、计算国密算法库中的每个国密算法的选取概率;
16、按照各个国密算法的选取概率,从国密算法库中随机选取n个国密算法,每个选取的国密算法的选取概率均大于预设选取概率阈值。
17、进一步,选取模块还具体用于:
18、获取样本数据集,样本数据集包括多个明文数据;
19、利用国密算法库中的每个国密算法对每个明文数据进行加密处理,得到加密处理结果;
20、确定采用所述国密算法库中的每个国密算法时的能耗性能和通讯性能,并根据所述加密处理结果确定采用所述国密算法库中的每个国密算法时的加密性能;
21、根据采用国密算法库中的任一国密算法时的能耗性能、通讯性能以及加密性能,计算该国密算法的综合性能值,并根据该国密算法的综合性能值计算该国密算法的权重参数,并将该国密算法的权重参数作为该国密算法的选取概率,直至计算得到国密算法库中的每个国密算法的选取概率。
22、进一步,选取模块还具体用于:
23、利用权重参数计算公式,计算国密算法库中的每个国密算法的权重参数,权重参数计算公式为:
24、
25、其中,pi表示:国密算法库中的第i个国密算法的权重参数,δi表示国密算法库中的第i个国密算法的综合性能值,i=1,2,…,n,n表示国密算法库中的国密算法总数。
26、进一步,生成模块具体用于:基于椭圆曲线参数,随机生成初始密钥。
27、进一步,加密模块具体用于:
28、将待传输明文数据拆分为多个数据块;
29、按照随机排序结果,依次利用每个选取的国密算法以及相应的变形密钥对每个数据块进行n轮加密处理。
30、进一步,还包括:初始化模块和保护模块;
31、初始化模块用于:通过初始密钥对混沌系统进行初始化;
32、保护模块用于:通过初始化后的混沌系统对加密参数进行保护处理。
33、2)第二方面,本发明还提供一种基于国密算法的安全工业控制方法,具体技术方案如下:
34、获取安全工业控制器的待传输明文数据;
35、从国密算法库中选取n个国密算法;
36、随机生成初始密钥;
37、对初始密钥进行拆分,得到2n个密钥块;
38、对2n个密钥块两两进行交叉、变异和拼接处理,得到n个变形密钥,n个变形密钥与n个选取的国密算法一一对应;
39、对n个选取的国密算法进行随机排序,得到随机排序结果;
40、按照随机排序结果,依次利用每个选取的国密算法以及相应的变形密钥对待传输明文数据进行n轮加密处理。
41、在上述方案的基础上,本发明的一种基于国密算法的安全工业控制方法还可以做如下改进。
42、进一步,从国密算法库中选取n个国密算法,包括:
43、计算国密算法库中的每个国密算法的选取概率;
44、按照各个国密算法的选取概率,从国密算法库中随机选取n个国密算法,每个选取的国密算法的选取概率均大于预设选取概率阈值。
45、进一步,计算国密算法库中的每个国密算法的选取概率,包括:
46、获取样本数据集,样本数据集包括多个明文数据;
47、利用国密算法库中的每个国密算法对每个明文数据进行加密处理,得到加密处理结果;
48、确定采用所述国密算法库中的每个国密算法时的能耗性能和通讯性能,并根据所述加密处理结果确定采用所述国密算法库中的每个国密算法时的加密性能;
49、根据采用国密算法库中的任一国密算法时的能耗性能、通讯性能以及加密性能,计算该国密算法的综合性能值,并根据该国密算法的综合性能值计算该国密算法的权重参数,并将该国密算法的权重参数作为该国密算法的选取概率,直至计算得到国密算法库中的每个国密算法的选取概率。
50、进一步,计算权重参数的过程包括:
51、利用权重参数计算公式,计算国密算法库中的每个国密算法的权重参数,权重参数计算公式为:
52、
53、其中,pi表示:国密算法库中的第i个国密算法的权重参数,δi表示国密算法库中的第i个国密算法的综合性能值,i=1,2,…,n,n表示国密算法库中的国密算法总数。
54、进一步,随机生成初始密钥,包括:
55、基于椭圆曲线参数,随机生成初始密钥。
56、进一步,按照随机排序结果,依次利用每个选取的国密算法以及相应的变形密钥对待传输明文数据进行n轮加密处理,包括:
57、将待传输明文数据拆分为多个数据块;
58、按照随机排序结果,依次利用每个选取的国密算法以及相应的变形密钥对每个数据块进行n轮加密处理。
59、进一步,还包括:
60、通过初始密钥对混沌系统进行初始化;
61、通过初始化后的混沌系统对加密参数进行保护处理。
62、3)第三方面,本发明还提供一种电子设备,电子设备包括处理器,处理器与存储器耦合,存储器中存储有至少一条计算机程序,至少一条计算机程序由处理器加载并执行,以使电子设备实现上述任一项基于国密算法的安全工业控制方法。
63、4)第四方面,本发明还提供一种计算机可读存储介质,计算机可读存储介质中存储有至少一条计算机程序,至少一条计算机程序由处理器加载并执行,以使计算机实现上述任一项基于国密算法的安全工业控制方法。
64、需要说明的是,本发明的第二方面至第四方面的技术方案及对应的可能的实现方式所取得的有益效果,可以参见上述对第一方面及其对应的可能的实现方式的技术效果,此处不再赘述。
1.一种基于国密算法的安全工业控制器,其特征在于,包括:获取模块、选取模块、生成模块、拆分模块、变形模块、排序模块和加密模块;
2.根据权利要求1所述的一种基于国密算法的安全工业控制器,其特征在于,所述选取模块具体用于:
3.根据权利要求2所述的一种基于国密算法的安全工业控制器,其特征在于,所述选取模块还具体用于:
4.根据权利要求3所述的一种基于国密算法的安全工业控制器,其特征在于,所述选取模块还具体用于:
5.根据权利要求1所述的一种基于国密算法的安全工业控制器,其特征在于,所述生成模块具体用于:基于椭圆曲线参数,随机生成初始密钥。
6.根据权利要求1所述的一种基于国密算法的安全工业控制器,其特征在于,所述加密模块具体用于:
7.根据权利要求6所述的一种基于国密算法的安全工业控制器,其特征在于,还包括:初始化模块和保护模块;
8.一种基于国密算法的安全工业控制方法,其特征在于,包括:
9.一种电子设备,其特征在于,所述电子设备包括处理器,所述处理器与存储器耦合,所述存储器中存储有至少一条计算机程序,所述至少一条计算机程序由所述处理器加载并执行,以使所述电子设备实现如权利要求8权利要求所述的一种基于国密算法的安全工业控制方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条计算机程序,所述至少一条计算机程序由处理器加载并执行,以使计算机实现如权利要求8权利要求所述的一种基于国密算法的安全工业控制方法。
