基于智能机器人操作系统使用超长密钥的方法及存储介质与流程

文档序号:32655237发布日期:2022-12-23 21:20阅读:34来源:国知局
基于智能机器人操作系统使用超长密钥的方法及存储介质与流程

1.本发明涉及信息安全技术领域,具体地说是一种基于智能机器人操作系统使用超长密钥的方法及存储介质。


背景技术:

2.因信息安全需求,需要保密的数据需要加密,根据加密技术的不同,所使用的密码分为分组密码和流密码两种。分组密码是将明文消息编码表示后的数字序列,划分成长度相等的组,暂且定义为n,n》0;每组分别在密钥的控制下变换成等长的数组数字序列,分组密码解决了密钥长度与明文一致的这个问题,分组密码加密固定长度的分组,需要加密的明文长度可能超过分组密码的分组长度,此时就需要对分组密码进行迭代,以便将长明文进行加密,迭代的方法就成为分组密码的模式。流密码就是明文和密钥的长度一致,一一进行异或运算,可以得出密文,比如100m的明文就有100m的密钥。
3.使用分组密码的优点是:明文信息良好的扩展性,对插入的敏感性,不需要密钥同步,较强的适用性;。
4.使用分组密码的缺点是:加密速度慢,错误扩散和传播,穷举法较容易破译。为减少密钥被穷举的概率,一般需要增加密钥的长度,但密钥的长度会受到分组长度的影响,一般密钥长度不超过分组长度,一些加密算法通过多轮迭代的方法也可使用数倍(一般不超过几倍)分组长度的密钥,但使加解密的速度更慢了,因此密钥的长度还是受制于一定长度范围内。
5.目前的开源机器人操作系统ros存在性能差、安全性低及稳定性低的问题,进而即使网络传输数据时进行加密,但是密钥被破译的难度不大,信息安全性较低。
6.故如何增加智能机器人操作系统中各节点间进行网络加密传输数据时,密钥被破译的难度,提高信息的安全性是目前亟待解决的技术问题。


技术实现要素:

7.本发明的技术任务是提供一种基于智能机器人操作系统使用超长密钥的方法及存储介质,来解决如何增加智能机器人操作系统中各节点间进行网络加密传输数据时,密钥被破译的难度,提高信息的安全性的问题。
8.本发明的技术任务是按以下方式实现的,一种基于智能机器人操作系统使用超长密钥的方法,该方法是基于智能机器人操作系统iros的各应用节点选择加密传输,智能机器人操作系统iros在使用国密加密算法sm4基础上,采用对称分组加密,具体如下:
9.生成不限长度的超长密钥;
10.根据原分组加密密钥的长度,将超长密钥分成若干组;
11.分组加密时,不同分组的明文选择使用超长密钥分组中的其中一组进行加密;
12.分组解密时,不同分组的密文选择使用超长密钥不同分组中的对应组的密钥进行解密。
13.作为优选,分组加密使用n字节密钥时,则超长密钥是n的m倍,加密时将超长密钥分成m组,每组密钥的长度等于n;
14.其中,m≥1。
15.作为优选,分组加密时,不同分组的明文采用的超长密钥分组中的密钥相同或不相同。
16.作为优选,分组解密时,不同分组的密文采用的超长密钥分组中的解密密钥相同或不相同。
17.更优地,不同分组的明文选择加密密钥组以及不同分组的密文选择解密密钥组时,采用轮询从超长密钥分组中获取密钥。
18.更优地,不同分组的明文选择加密密钥组以及不同分组的密文选择解密密钥组时,采用哈希算法或其它算法从超长密钥分组中获取密钥。
19.作为优选,超长密钥采用分段式存储。
20.更优地,超长密钥分成不同的段(每段都很长),存储在不同的u盘中,交给不同的人员保存于不同的保险柜中,与该密钥有关的人都在场才能解密,更进一步提高了安全性。
21.一种电子设备,包括:存储器和至少一个处理器;
22.其中,所述存储器上存储有计算机程序;
23.所述至少一个处理器执行所述存储器存储的计算机程序,使得所述至少一个处理器执行如上述的基于智能机器人操作系统使用超长密钥的方法。
24.一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序可被处理器执行以实现如上述的基于智能机器人操作系统使用超长密钥的方法。
25.本发明的基于智能机器人操作系统使用超长密钥的方法及存储介质具有以下优点:
26.(一)本发明在智能机器人操作系统iros中,智能机器人操作系统iros各节点间利用网络加密传输数据时密钥被破译的难度大大增加,提高了信息的安全性;
27.(二)本发明也可使用于其它使用分组密码加密的场景中,使分组密码加解密在性能基本不变的情况下可使用超长的密钥(如数百倍、数万倍于分组长度),从而大大增加穷举法破译分组加密的难度,提高了信息的安全性;
28.(三)本发明可应用于不同的分组加密算法,不降低加密的强度,加解密时都不需要使用更多的资源,性能取决于原分组加密算法,大大增加了穷举解密的难度;
29.(四)本发明的超长密钥可分段存储,如超长密钥可分成不同的段(每段都很长),存储在不同的u盘中,交给不同的人保存于不同的保险柜中,与该密钥有关的人都在场才能解密,更进一步提高了安全性。
附图说明
30.下面结合附图对本发明进一步说明。
31.附图1为基于智能机器人操作系统使用超长密钥的方法的示意图。
具体实施方式
32.参照说明书附图和具体实施例对本发明的基于智能机器人操作系统使用超长密钥的方法及存储介质作以下详细地说明。
33.实施例1:
34.如附图1所示,本发明的基于智能机器人操作系统使用超长密钥的方法,该方法是基于智能机器人操作系统iros的各应用节点选择加密传输,智能机器人操作系统iros在使用国密加密算法sm4基础上,采用对称分组加密,具体如下:
35.s1、生成不限长度的超长密钥;
36.s2、根据原分组加密密钥的长度,将超长密钥分成若干组;
37.s3、分组加密时,不同分组的明文选择使用超长密钥分组中的其中一组进行加密;
38.s4、分组解密时,不同分组的密文选择使用超长密钥不同分组中的对应组的密钥进行解密。
39.本实施例步骤s3中的分组加密使用n字节密钥时,则超长密钥是n的m倍,加密时将超长密钥分成m组,每组密钥的长度等于n;
40.其中,m≥1。
41.在aes标准规范中,分组长度只能是128位,也就是说,每个分组为16个字节,密钥的长度可以使用128位、192位或256位,即16、24或32字节,如aes按照最长的256位(n=32字节)加密,则超长密钥要是32字节的整数倍,如32000字节(m=1000),超长密钥按32字节分成1000组,使用超长密钥的aes加密,则每次从1000组中选用1组。
42.本实施例步骤s3中的分组加密时,不同分组的明文选择使用m组密钥中的一组进行加密,不同分组加密采用的密钥可能相同也可能不同。
43.本实施例步骤s4中的分组解密时,不同分组的密文选择使用m组密钥中的一组进行解密,不同分组解密采用的密钥可能相同也可能不同。
44.本实施例中的不同分组的明文选择加密密钥组以及不同分组的密文选择解密密钥组时,采用轮询从超长密钥分组中获取密钥。
45.当采用轮询时,如m=1000,则第一个分组采用1000组中第一组密钥,第二个分组采用1000组中第二组密钥,第三个分组采用1000组中第三组密钥,以此类推,第一千个分组采用1000组中第一千组密钥,而第一千零一个分组采用1000组中第一组密钥,重新循环
……

46.本发明可应用于不同的分组加密算法,不降低加密的强度,加解密时都不需要使用更多的资源,性能取决于原分组加密算法,但该方法大大增加了穷举解密的难度,如果超长密钥够长,则穷举的时间会无限长,使穷举解密几乎变的不可能。
47.在智能机器人操作系统iros中,基于智能机器人操作系统iros的各应用节点可选择加密传输,其基础加密使用了国密加密算法sm4,sm4也是一种分组加密算法,每16字节一组,加密密钥就使用了该专利提出的超长密钥,它使iros各节点间利用网络加密传输数据时密文被截获后密钥被破译的难度大大增加。在智能机器人操作系统iros中,超长密钥保存于各智能机器人操作系统iros节点所在机器人中或云计算服务器(智能机器人操作系统iros也可在云计算服务器中运行)中,并采用其它加密方式保存。
48.本实施例中的不同分组的明文选择加密密钥组以及不同分组的密文选择解密密
钥组时,采用哈希算法或其它算法从超长密钥分组中获取密钥。
49.本实施例中的超长密钥采用分段式存储。超长密钥分成不同的段(每段都很长),存储在不同的u盘中,交给不同的人员保存于不同的保险柜中,与该密钥有关的人都在场才能解密,更进一步提高了安全性。
50.实施例2:
51.本发明实施例还提供了一种电子设备,包括:存储器和处理器;
52.其中,存储器存储计算机执行指令;
53.处理器执行所述存储器存储的计算机执行指令,使得处理器执行本发明任一实施例中的基于智能机器人操作系统使用超长密钥的方法。
54.处理器可以是中央处理单元(cpu),还可以是其他通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通过处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
55.存储器可用于储存计算机程序和/或模块,处理器通过运行或执行存储在存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现电子设备的各种功能。存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器还可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,只能存储卡(smc),安全数字(sd)卡,闪存卡、至少一个磁盘存储期间、闪存器件、或其他易失性固态存储器件。
56.实施例3:
57.本发明实施例还提供了一种计算机可读存储介质,其中存储有多条指令,指令由处理器加载,使处理器执行本发明任一实施例中的基于智能机器人操作系统使用超长密钥的方法。具体地,可以提供配有存储介质的系统或者装置,在该存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机(或cpu或mpu)读出并执行存储在存储介质中的程序代码。
58.在这种情况下,从存储介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此程序代码和存储程序代码的存储介质构成了本发明的一部分。
59.用于提供程序代码的存储介质实施例包括软盘、硬盘、磁光盘、光盘(如cd-rom、cd-r、cd-rw、dvd-rom、dvd-rym、dvd-rw、dvd+rw)、磁带、非易失性存储卡和rom。可选择地,可以由通信网络从服务器计算机上下载程序代码。
60.此外,应该清楚的是,不仅可以通过执行计算机所读出的程序代码,而且可以通过基于程序代码的指令使计算机上操作的操作系统等来完成部分或者全部的实际操作,从而实现上述实施例中任意一项实施例的功能。
61.此外,可以理解的是,将由存储介质读出的程序代码写到插入计算机内的扩展板中所设置的存储器中或者写到与计算机相连接的扩展单元中设置的存储器中,随后基于程序代码的指令使安装在扩展板或者扩展单元上的cpu等来执行部分和全部实际操作,从而实现上述实施例中任一实施例的功能。
62.最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽
管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1