加密和解密方法、装置以及物联网系统与流程

文档序号:19346347发布日期:2019-12-06 20:53阅读:218来源:国知局
加密和解密方法、装置以及物联网系统与流程

本发明涉及信息安全技术领域,特别是涉及一种加密和解密方法、装置以及物联网系统。



背景技术:

这里的陈述仅提供与本申请有关的背景信息,而不必然地构成现有技术。

智能物联网(aiot,artificialinternetofthing)正在蓬勃发展,智能终端(smartterminal)数量急剧增加,安全隐患大,物联网产业链中安全环节占比低。物联网业务深入多个行业,全方位影响人民生活,相应的安全问题也将带来严重威胁,甚至包括生命和财产安全,终端安全越来越受关注。终端安全包括物理安全、接入安全、通信安全、数据安全、系统安全。

传统技术中的智能物联网中,不同的智能终端处理能力差异较大,通常具备较强的安全防护能力终端,其存在的攻击途径也较多,而具备一般安全防护能力的终端,虽然其遭受外界攻击的途径较少,但其处理能力较低,加密或解密处理对智能终端处理能力的要求和终端自身能力的多样性差异形成矛盾,如何解决安全防护能力与终端处理能力相矛盾的问题,成为解决终端数据通信安全问题的关键。



技术实现要素:

基于此,有必要针对传统技术中安全防护能力与终端处理能力相矛盾的问题,提供一种加密和解密方法、装置以及物联网系统。

一方面,本发明实施例提供了一种加密和解密方法,该方法应用于服务器,该方法包括:

获取目标网络节点终端的配置信息;

根据目标网络节点终端的配置信息,判断目标网络节点终端是否超负荷运行;

若判定目标网络节点终端超负荷运行,则生成并发送第一类加密图样至目标网络节点终端,第一类加密图样用于指示目标网络节点终端按第一预设规则进行数据加密或解密;

若判定目标网络节点终端未超负荷运行,则生成并发送第二类加密图样至目标网络节点终端,第二类加密图样用于指示目标网络节点终端按第二预设规则进行数据加密或解密;

其中,按第一预设规则进行数据加密或解密所需的终端处理能力低于按第二预设规则进行数据加密或解密所需的终端处理能力。

本申请实施例提供的加密和解密方法,根据目标网络节点终端的配置信息,判断该终端是否处于超负荷工作状态,对于超负荷运行的终端,为保证在数据传输安全的前提下,减弱加密或解密过程对终端造成的负担,输出第一类加密图样,指示该终端按照第一预设规则进行数据加密或解密。若该目标网络节点终端未超负荷运行,剩余处理能力还很强,则可以输出第二类加密图样,指示该终端按照第二预设规则对数据进行加密或解密。在保障数据传输安全的基础上,可以自适应调整各终端的数据加密或解密具体模式的选择(例如,密钥的选择),实现各目标网络节点终端资源的合理分配。

在其中一个实施例中,第一预设规则为交替采用第一密钥和第二密钥进行数据加密或解密;

第二预设规则为采用第一密钥进行数据加密或解密;

其中,采用第一密钥进行数据加密或解密所需的终端处理能力高于采用第二密钥进行数据加密或解密时所需的终端处理能力。

在其中一个实施例中,第一类加密图样和第二类加密图样均包括n位块标识符,每位块标识符对应一个待加密信息块或待解密信息块;

第一类加密图样中的n-i位块标识符为第一值,第一类加密图样中的i位块标识符为第二值,n和i均为大于等于1的自然数,且i≤n;

第二类加密图样的n位块标识符均为第一值;

其中,第一值用于指示目标网络节点终端采用第一密钥对块标识符对应的目标信息块进行加密或解密;第二值用于指示目标网络节点终端采用第二密钥对块标识符对应的目标信息块进行加密或解密;目标信息块为待加密信息块或待解密信息块。

在其中一个实施例中,加密和解密方法还包括:

发送动态码至目标网络节点终端,动态码被目标网络节点终端用于生成第一密钥和第二密钥。

在其中一个实施例中,加密和解密方法还包括:

在每次网络连接断开前更新动态码;或

定时更新动态码;或

在接收到目标网络节点终端发送的第一更新请求命令时更新动态码。

在其中一个实施例中,加密和解密方法还包括:

在每次网络连接断开前更新第一类加密图样和第二类加密图样;或

定时更新第一类加密图样和第二类加密图样;或

在接收到目标网络节点终端发送的第二更新请求命令时更新第一类加密图样和第二类加密图样;或

在保活定时器超时,更新第一类加密图样和第二类加密图样。

第一类加密图样和第二类加密图样均包括n位块标识符,每位块标识符对应一个待加密信息块或待解密信息块;

第一类加密图样中的n-i位块标识符为第一值,第一类加密图样中的i位块标识符为第二值,n和i均为大于等于1的自然数,且i≤n;

第二类加密图样的n位块标识符均为第一值;

其中,第一值用于指示目标网络节点终端采用第一密钥对块标识符对应的目标信息块进行加密或解密;第二值用于指示目标网络节点终端采用第二密钥对块标识符对应的目标信息块进行加密或解密;目标信息块为待加密信息块或待解密信息块。

在其中一个实施例中,加密和解密方法还包括步骤:

发送动态码至目标网络节点终端,动态码被目标网络节点终端用于生成第一密钥和第二密钥。

在其中一个实施例中,密钥管理控制加密和解密方法还包括:

在每次网络连接断开前更新动态码;或

定时更新动态码;或

在接收到目标网络节点终端发送的第一更新请求命令时更新动态码。

在其中一个实施例中,加密和解密方法还包括:

在每次网络连接断开前更新第一类加密图样和第二类加密图样;或

定时更新第一类加密图样和第二类加密图样;或

在接收到目标网络节点终端发送的第二更新请求命令时更新第一类加密图样和第二类加密图样;或

在保活定时器超时时更新第一类加密图样和第二类加密图样。

一种加密和解密方法,该方法应用于目标网络节点终端,该方法包括:

在接收到服务器发送的第一类加密图样的情况下,根据第一类加密图样按第一预设规则进行数据加密或解密;

在接收到服务器发送的第二类加密图样的情况下,根据第二类加密图样按第二预设规则进行数据加密或解密;

其中,按第一预设规则进行数据加密或解密所需的终端处理能力低于按第二预设规则进行数据加密或解密所需的终端处理能力。

在其中一个实施例中,根据第一类加密图样按第一预设规则进行数据加密或解密的步骤包括:

根据第一类加密图样交替采用第一密钥和第二密钥进行数据加密或解密;

根据第二类加密图样按第二预设规则进行数据加密或解密的步骤包括:

根据第二类加密图样采用第一密钥进行数据加密或解密;

其中,采用第一密钥进行数据加密或解密所需的终端处理能力高于采用第二密钥进行数据加密或解密时所需的终端处理能力。

在其中一个实施例中,加密和解密方法还包括:

获取服务器发送的动态码;

根据动态码、目标网络节点终端的配置信息和密钥种子生成算法,生成密钥种子;

将密钥种子输入至对称密钥生成器,并获取对称密钥生成器生成的第一密钥。

在其中一个实施例中,目标网络节点终端的配置信息包括:设备管理密钥、应用软件管理密钥和媒体访问控制地址;

根据动态码、目标网络节点终端的配置信息和密钥种子生成算法,生成密钥种子的步骤包括:

将设备管理密钥、应用软件管理密钥和媒体访问控制地址按预设规则排列,以生成静态种子因子;

根据动态码、静态种子因子和密钥种子生成算法,生成密钥种子。

在其中一个实施例中,动态码为伪随机噪声码;

根据动态码、静态种子因子和密钥种子生成算法,生成密钥种子的步骤包括:

根据伪随机噪声码对静态种子因子按位加扰,生成加扰种子源;

根据加扰种子源和密钥种子生成算法,生成密钥种子。

在其中一个实施例中,加密和解密方法还包括:

根据动态码和加扰算法生成第二密钥。

一种加密和解密装置,该装置应用于服务器,该装置包括:

选择参数获取模块,用于获取目标网络节点终端的配置信息;

超负荷判断模块,用于根据目标网络节点终端的配置信息,判断目标网络节点终端是否超负荷运行;

第一工作模式选择模块,用于在判定目标网络节点终端超负荷运行时,则生成并发送第一类加密图样至目标网络节点终端,第一类加密图样用于指示目标网络节点终端按第一预设规则进行数据加密或解密;

第二工作模式选择模块,用于在判定目标网络节点终端未超负荷运行,则生成并发送第二类加密图样至目标网络节点终端,第二类加密图样用于指示目标网络节点终端按第二预设规则进行数据加密或解密;

其中,按第一预设规则进行数据加密或解密所需的终端处理能力低于按第二预设规则进行数据加密或解密所需的终端处理能力。

一种加密和解密装置,装置应用于目标网络节点终端,装置包括:

第一预设规则执行模块,用于在接收到服务器发送的第一类加密图样的情况下,根据第一类加密图样按第一预设规则进行数据加密或解密;

第二预设规则执行模块,用于在接收到服务器发送的第二类加密图样的情况下,根据第二类加密图样按第二预设规则进行数据加密或解密;

其中,按第一预设规则进行数据加密或解密所需的终端处理能力低于按第二预设规则进行数据加密或解密所需的终端处理能力。

一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现上述加密和解密方法的步骤。

一种物联网系统,包括:

服务器,服务器包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现上述服务器侧的加密和解密方法的步骤;

多个终端,各终端包括存储器和处理器,存储器存储有计算机程序,终端中的目标网络终端的处理器执行计算机程序时实现上述终端侧的加密和解密方法的步骤。

一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述加密和解密方法的步骤的步骤。

附图说明

图1为一个实施例中加密和解密方法的应用环境图和物联网系统结构示意图;

图2为一个实施例中加密和解密方法的流程示意图;

图3为另一个实施例中加密和解密方法的流程示意图;

图4为一个实施例中加密和解密方法的流程示意图;

图5为一个实施例中根据动态码、目标网络节点终端的配置信息和密钥种子生成算法,生成密钥种子的步骤的流程示意图;

图6为一个实施例中根据动态码、静态种子因子和密钥种子生成算法,生成密钥种子的步骤的流程示意图;

图7为一个实施例中根据加扰种子源和密钥种子生成算法,生成密钥种子的步骤流程示意图;

图8为一个实施例中加密和解密装置的结构示意图;

图9为一个实施例中加密和解密装置的结构示意图;

图10为一个实施例中第一预设规则执行模块的结构示意图;

图11为一个实施例中密钥种子生成模块的结构示意图;

图12为一个实施例中动态密钥种子确定单元的结构示意图;

图13为一个实施例中加扰密钥种子确定单元的结构示意图;

图14为一个实施例中终端或服务器的内部结构图。

具体实施方式

为了便于理解本发明,下面将参照相关附图对本发明进行更全面的描述。附图中给出了本发明的首选实施例。但是,本发明可以以许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使对本发明的公开内容更加透彻全面。

需要说明的是,当一个元件被认为是“连接”另一个元件,它可以是直接连接到另一个元件并与之结合为一体,或者可能同时存在居中元件。本文所使用的术语“安装”、“一端”、“另一端”以及类似的表述只是为了说明的目的。

除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。本文所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。

本申请提供的加密和解密方法,可以应用于如图1所示的应用环境中。其中,各终端102通过网络与服务器104通过网络进行通信,组成智能物联网(artificialinternetofthing,aiot),在通信传输过程中,各终端102根据加密算法进行对收发的数据分别进行解密和加密,以保障数据传输的安全性。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备等智能终端(smartterminal,st),服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现,服务器104还可以是智能终端102中的一台。

针对传统技术中终端安全防护能力与终端处理能力相矛盾的问题,如图2所示,提供了一种加密和解密方法,该方法适用于服务器,该方法包括:

s10:获取目标网络节点终端的配置信息;

s20:根据目标网络节点终端的配置信息,判断目标网络节点终端是否超负荷运行;

s30:若判定目标网络节点终端超负荷运行,则生成并发送第一类加密图样至目标网络节点终端,第一类加密图样用于指示目标网络节点终端按第一预设规则进行数据加密或解密;

s40:若判定目标网络节点终端未超负荷运行,则生成并发送第二类加密图样至目标网络节点终端,第二类加密图样用于指示目标网络节点终端按第二预设规则进行数据加密或解密;

其中,按第一预设规则进行数据加密或解密所需的终端处理能力低于按第二预设规则进行数据加密或解密所需的终端处理能力。

其中,目标网络节点终端可以是智能物联网中的一个或多个终端,该终端可以进行数据加密或解密,以安全收发数据。当该目标网络节点终端需要向外传输数据时,对待发送数据进行加密后生成密文,以密文形式发出,该目标网络节点终端需要接收其他设备传输的待解密密文时,执行对待解密密文解密的步骤,得到其他设备想要传输的待发送数据。配置信息可以包括能够反映该目标网络节点终端的硬件参数和其上安装的应用软件参数等,可以是从服务器获取的,也可以是该终端出厂时已设置的硬件参数。加密或解密所需的终端处理能力是指对同样数据进行加密或解密处理时所需占用的cpu资源。

为在保证数据传输安全的前提下,合理分配目标网络节点终端的资源,使其处于较优的工作状态,本申请实施例提供的加密和解密方法,通过获取目标网络节点终端的配置信息,来判断该终端目前是否处于超负荷运行状态,若判定超负荷运行,则说明该终端所要处理的数据量超出终端的数据处理能力,会造成终端运行缓慢或者数据处理速度过慢等现象,此时,可以发送第一类加密图样至该终端,第一类加密图样用于指示终端采用第一预设规则对收发数据进行加密或解密处理,以减小终端负担,保证该终端能够正常运行。若判定目标网络节点终端未超负荷运行,服务器则生成并发送第二类加密图样至目标网络节点终端,使目标网络节点终端采用第二预设规则对收发数据进行加密或解密处理,充分利用该终端资源进行数据加密或解密。其中,采用第一预设规则对数据进行加密或解密的数据传输安全性可以低于采用第二预设规则对数据进行加密或解密的数据传输安全性,数据传输安全性越高,常采用的密钥越复杂,其所消耗的终端资源越多。在目标网络节点终端处理能力足够的情况下,可以采用防破译能力高的密钥来进行数据加密或解密处理,提高数据传输安全性;在该终端处理能力不足的情况下,可以采用防破译能力次之的密钥来进行数据加密或解密处理,在数据传输安全前提下,保证该终端的正常运行。

在一些可行的实施方式中,可以根据目标网络节点终端的配置信息和预设的超负荷阈值来判断该终端是否超负荷运行。例如,由于终端的数据处理能力与该终端所采用的cpu的主频参数有重要关系,目标网络节点终端的配置信息可以包括cpu的主频参数,超负荷阈值可以是1ghz的主频参数(根据应用场景不同,该超负荷阈值的具体值可以相应调整),这种情况下,若目标网络节点终端的cpu的主频参数大于1ghz,则判定该终端未超负荷运行,若目标网络节点终端的cpu的主频参数小于1ghz,则判定该终端超负荷运行。

在另一些可行的实施方式中,也可以根据目标网络节点终端的配置信息直接判断目标网络节点终端是否超负荷运行。例如,可以根据目标网络节点终端的处理性能将目标网络节点划分为两种网络节点终端,两种网络节点终端分别为处理性能高的网络节点终端(例如为不具备操作系统的终端)和处理性能低的网络节点终端(例如为具备操作系统的终端);则根据目标网络节点终端的配置信息可确定目标网络节点终端的种类,当根据目标网络节点终端的配置信息确定目标网络节点终端为处理性能高的网络节点终端时,则判断网络节点终端未超负荷运行;当根据目标网络节点终端的配置信息确定目标网络节点终端为处理性能低的网络节点终端时,则判断网络节点终端超负荷运行。不限于前述提到的两种方式,还可以有更多的实施方式来根据目标网络节点的配置信息判断目标网络节点终端是否超负荷运行,本申请实施例不做限制。

在其中一个实施例中,第一预设规则为交替采用第一密钥和第二密钥进行数据加密或解密;

第二预设规则为采用第一密钥进行数据加密或解密;

其中,采用第一密钥进行数据加密或解密所需的终端处理能力高于采用第二密钥进行数据加密或解密时所需的终端处理能力。

本申请一个实施例中提供的加密和解密方法,可以在判定该终端超负荷运行时,发送第一类加密图样至该终端,以指示该终端交替采用第一密钥和第二密钥对收发数据进行加密或解密处理,以减小终端负担,保证该终端能够正常运行。对于不同内容的数据,对其进行数据传输时的安全系数高低的要求往往不同,例如,涉及到内部名单等敏感内容的数据,对数据安全要求一般较高,而日志文件中的时间等数据,对数据安全要求一般较低。基于此,交替采用第一密钥和第二密钥对收发数据进行加密或解密处理的具体过程可以是:对于数据安全要求较高的数据,可以采用运算速度慢但安全性能高的第一密钥进行加密或解密处理,对于数据安全要求较低的数据,可以采用运算速度较快的第二密钥进行加密或解密处理。在保障数据传输安全的前提下,能够根据目标网络节点终端的情况自适应调整该终端密钥选择,提高处理速度,合理分配资源。对于目标网络节点终端处理能力足够的情况下,可以采用第一密钥对全部数据进行加密或解密,在不影响该终端正常运行和数据处理速度的情况下,提高数据传输安全性。

在其中一个实施例中,第一类加密图样和第二类加密图样均包括n位块标识符,每位块标识符对应一个待加密信息块或待解密信息块;第一类加密图样中的n-i位块标识符为第一值,第一类加密图样中的i位块标识符为第二值,n和i均为大于等于1的自然数,且i≤n;第二类加密图样的n位块标识符均为第一值;其中,第一值用于指示目标网络节点终端采用第一密钥对块标识符对应的目标信息块进行加密或解密;第二值用于指示目标网络节点终端采用第二密钥对块标识符对应的目标信息块进行加密或解密;目标信息块为待加密信息块或待解密信息块。

其中,待发送数据按字节划可以分成多个上述待加密信息块,待解密密文按字节划可以分成多个上述待解密信息块。当第一值和第二值为二进制的机器码时,第一值可以是1或0,第二值可以是0或1,第一值不等于第二值。

通常具备较强的安全防护能力终端,其也存在较多的攻击途径,而具备一般安全防护能力的终端,虽然其遭受外界攻击的途径较少,但其处理能力较低,进行数据加密或解密处理对网络节点终端处理能力的要求和该终端自身能力的多样性差异形成矛盾。考虑到,在同样大小原始信息块情况下,不同的加密算法其处理速度相差较大,例如,基于伪随机噪声码的加扰算法比对称加密算法要快80~100倍的处理速度。为更好的对本申请实施例提供的加密和解密方法的工作过程进行描述,在此以第一密钥为采用对称加密算法生成的密钥和第二密钥为基于伪随机噪声码的加扰算法生成的密钥为例,进行说明。

具体的,需要综合考虑目标网络节点终端的数据处理能力和当前收发数据量,例如,目标网络节点终端的配置信息可以包括该终端的数据处理能力,可以先获取所述数据处理能力参数和所述目标网络节点终端的收发数据量,然后根据所述数据处理能力参数、所述目标网络节点终端的收发数据量和预设的超负荷阈值,判断所述目标网络节点终端是否超负荷运行,判断过程可以是,将当前收发数据量除以该终端的数据处理能力参数,得到当前运行容量占用率,若占用率超过预设的超负荷阈值,则说明当前该终端处于超负荷运行状态,此时可以发送第一类加密图样至该终端,第一类加密图样可以是一个32字节(128位)的变量,可以由服务器通过随机算法产生,随机算法可控制比特1和0的数量平衡比例。当对应比特为1时,则该位上的块标识符为1,用于指示终端对对应字节大小的原始信息块采用第一密钥进行加密或解密,对应比特为0时,则该位上的块标识符为0,用于指示该终端对对应字节的原始信息块采用第二密钥进行加密或解密,从而使得终端对一部分原始信息块采用对称加密算法生成的第一密钥进行加密或解密,保障重要数据传输时的高保密性,对于轻量级保密要求的数据可以采用加扰算法生成的第二密钥进行加密或解密,由于加扰算法比对称加密算法处理速度要快很多,因此节省了计算资源,同时也避免了明文的暴露,在保障数据安全的同时,能够实现终端加密自适应调整。其中,终端在接收到第一密钥和第二密钥时,可以将其存储在nandflash。其中,第一密钥和第二密钥除了采用举例中的算法,还可以通过其他具有处理速度差异的算法来实现,在此不做赘述。其中,块标识符的1和0排列顺序可以是10101等预设顺序周期性排列,也可以根据数据重要性进行排列,将重要数据对应的信息块标识符分配为1,将对于安全性要求较低的数据对应的信息块标识符分配为0。

在其中一个实施例中,如图3所示,加密和解密方法还包括步骤:

s50:发送动态码至目标网络节点终端,动态码被目标网络节点终端用于生成第一密钥和第二密钥。

为提高数据传输安全性,本申请实施例提供的加密和解密方法,还可以生成并发送动态码至各目标网络节点终端,该动态码被各目标网络节点终端用于生成上述第一密钥和第二密钥。具体的,目标网络节点终端可以利用密钥种子生成算法对目标网络节点终端的配置信息和动态码进行分析处理,生成动态变化的密钥种子,该密钥种子可作为对称密钥生成器的输入,通过该对称密钥生成器生成可动态变化的第一密钥,相较于传统技术采用的静态密钥的方式,其防逆向破解能力更强,该第一密钥可以用于对重要数据的加密或解密。其中,动态码可以是伪随机码,目标网络节点终端还可以利用加扰算法对伪随机码进行分析处理,生成第二密钥,供目标网络节点终端对安全要求低的数据进行加密或解密。

在其中一个实施例中,加密和解密方法还包括:

在每次网络连接断开前更新动态码;或

定时更新动态码;或

在接收到目标网络节点终端发送的第一更新请求命令时更新动态码。

本申请实施例中,还提供了动态码的更新方法,可以在每次服务器断开与目标网络节点终端的tcp/ip连接时,由服务器更新该动态码,根据该动态码生成的第一密钥同步广播到智能物联网的各网络节点终端,以便各终端之间可以更好的实现数据交互。此外,动态码更新还可以是由服务器强制更新,例如,可以是定时更新、生成新的动态码。还可以由服务器根据目标网络节点终端的请求进行更新,例如,在接收到网络节点终端发送的第一更新请求命令时,更新该动态码,第一更新请求命令可以是该终端在空闲时生成的,也可以是该终端定时生成的。

在其中一个实施例中,加密和解密方法还包括:

在每次网络连接断开前更新第一类加密图样和第二类加密图样;或

定时更新第一类加密图样和第二类加密图样;或

在接收到网络节点终端发送的第二更新请求命令时更新第一类加密图样和第二类加密图样;或

在保活定时器超时更新第一类加密图样和第二类加密图样。

本申请实施例提供的加密和解密方法,通过提供加密图样更新保护,增加一层动态安全防护。具体的,可以在每次服务器断开与目标网络节点终端的tcp/ip连接时,由服务器更新第一类加密图样和第二类加密图样,重新根据目标网络节点终端的处理能力和数据收发量进行加密和解密;还可以是由服务器定时更新;或者在接收到该终端发送的第二更新请求命令时进行更新,例如,当该终端空闲时,主动发送第二更新请求命令至服务器,指示服务器进行第一类加密图样和第二类加密图样的更新。此外,还可以在保活定时器超时,即该终端与服务器连接断开后超过一定时间仍未能建立tcp/ip连接,则服务器更新第一类加密图样和第二类加密图样。本发明通过设置第一类加密图样和第二类加密图样的更新机制,保证和目标网络节点终端之间的信息块标识符空间一致性,同时可以处理因网络问题、设备问题等外部和内部因素产生的丢包、乱序现象,保证应用该加密和解密方法的自适应终端加密系统的可靠运行。其中,第一更新请求命令和第二更新请求命令可以是相同的命令,当二者为相同的命令时,可以实现动态码和第一类加密图样/第二类加密图样的同步更新。

在其中一个实施例中,加密和解密方法还包括:

获取目标网络节点终端生成的第一密钥和第二密钥,并将该第一密钥和该第二密钥同步广播至其他网络节点终端。

为方便各网络节点终端之间进行数据交互,生成第一密钥和/或第二密钥之后,可以由服务器将生成结果同步广播至其他网络节点终端,以便各网络节点终端之间进行数据传输。

本申请实施例还提供了一种加密和解密方法,如图4所示,该方法应用于目标网络节点终端,该方法包括:

s100:在接收服务器发送的第一类加密图样的情况下,根据第一类加密图样按第一预设规则进行数据加密或解密;

s200:在接收第二类加密图样的情况下,根据第二类加密图样按第二预设规则进行数据加密或解密;

其中,按第一预设规则进行数据加密或解密所需的终端处理能力低于按第二预设规则进行数据加密或解密所需的终端处理能力。

第一类加密图样等名词释义与上述加密和解密方法实施例中相同,在此不做赘述。具体的,本申请实施例提供的加密和解密方法,在接收到第一类加密图样的情况下,目标网络节点终端进行数据加密或解密时,按第一预设规则进行数据加密或解密,以占用较少的终端资源,保证该终端保持一定的数据处理速度,能够正常运行。在接收到第二类加密图样的情况下,目标网络节点终端进行数据加密或解密时,按照第二预设规则进行数据加密或解密,例如,可采用较复杂的密钥进行数据加密或解密,在不影响该终端正常运行的情况下,提高数据传输安全性。

在其中一个实施例中,如图5所示,根据第一类加密图样按第一预设规则进行数据加密或解密的步骤s100包括:

s110:根据第一类加密图样交替采用第一密钥和第二密钥进行数据加密或解密;

根据第二类加密图样按第二预设规则进行数据加密或解密的步骤s200包括:

s210:根据第二类加密图样采用第一密钥进行数据加密或解密;

其中,采用第一密钥进行数据加密或解密所需的终端处理能力高于采用第二密钥进行数据加密或解密时所需的终端处理能力。

其中,第一密钥、第二密钥等释义与上述加密和解密方法实施例中相同,在此不做赘述。具体的,目标网络节点终端在接收到第一类加密图样的情况下,可以交替采用第一密钥和第二密钥对数据进行加密或解密,例如,对于重要的数据可以采用运算速度慢但安全性能高的第一密钥进行加密或解密处理,对于一般数据,可以采用运算速度较快但安全性相对较低的第二密钥进行加密或解密处理。在保障数据传输安全的前提下,目标网络节点终端可以自适应进行密钥的生成和选择,提高处理速度,合理利用资源。目标网络节点终端处理能力较强的情况下,可以根据第二类解密图样的指示,全部数据均采用第一密钥进行加密或解密,在不影响该终端正常运行和数据处理速度的情况下,提高该终端进行数据传输时的安全性。

在其中一个实施例中,如图4所示,加密和解密方法还包括:

s300:获取服务器发送的动态码;

s400:根据动态码、目标网络节点终端的配置信息和密钥种子生成算法,生成密钥种子;

s500:将密钥种子输入至对称密钥生成器,并获取对称密钥生成器生成的第一密钥。

动态码可以是伪随机噪声(pseudorandomnoise,pn)码或按照其他规则动态变化的编码。密钥种子生成算法是指能够根据一定的输入参数得到密钥种子的算法。对称密钥生成器是应用于数据加密解密采用相同密钥的场景,服务器生成动态码并发送至目标网络节点终端,该目标网络节点终端利用密钥种子生成算法对动态码和目标网络节点终端的配置信息进行处理,生成动态密钥种子,并进一步依托对称密钥生成器采用对称密钥算法对该密钥种子进行进一步处理,得到动态变化的第一密钥,用于数据加密或解密。目标网络节点终端在生成该第一密钥后,还可以将该第一密钥发送至服务器,由服务器将该第一密钥传播至其他网络节点终端,以便目标网络节点终端与其他网络节点终端采用相同的密钥对数据进行加密或解密,实现各网络节点终端之间的数据通信。

具体的,为了更好的说明本申请实施例中提供的加密和解密方法,以服务器和各网络节点终端之间的交互场景为例来说明。目标网络节点终端可以根据动态码、目标网络节点终端的配置信息和密钥种子生成算法得到动态变化的密钥种子,再将该密钥种子输入至对称密钥生成器动态生成第一密钥,并提取该第一密钥,避免传统技术中只使用固定的密钥种子造成密钥长期不变、易被破解的缺点。目标网络节点终端在生成该第一密钥后,若需要向外发送数据,则该终端可以根据第一密钥对向外发送的待发送数据进行加密,生成密文后发出,若该终端目前需要接收其他网络节点设备发送的待解密密文时,该终端可以根据第一密钥对接收的待解密密文进行解密(该目标网络节点终端与发送待解密密文的其他网络节点设备采用相同的密钥,即对称算法,可以由服务器完成各网络节点设备间的密钥同步),类似的,该目标网络节点终端同时接收待解密密文和需要向外发送待发送数据时的加密或解密也可以采用第一密钥实现。

在其中一个实施例中,本申请实施例中提供的对称密钥生成器所采用的加密算法可以是aes(advanceencryptionstandard,高级加密标准)对称加密算法,例如,可选aes128、aes192、aes256。aes是一个迭代的、对称密钥分组的密码,它可以使用128、192和256位密钥,并且用128位(16个字节的信息块)分组加密和解密数据,对称密钥密码使用相同的密钥加密和解密数据,且通过分组密码返回的加密数据的位数与输入的数据(要向外发送的待发送数据或接收的待解密密文)相同。迭代加密使用一个循环结构,在该循环中重复置换(permutations)和替换(substitutions)输入的数据。

本发明提供的加密和解密方法,通过采用动态码和目标网络节点设备的配置信息结合后配合密钥种子生成算法,生成动态变化的密钥种子,进一步将该动态变化的密钥种子输入到对称密钥生成器,得到动态变化的第一密钥,提高密钥的防破解能力,从而提高数据传输安全性。

在其中一个实施例中,如图5所示,目标网络节点终端的配置信息包括:设备管理密钥、应用软件管理密钥和媒体访问控制地址;

根据动态码、目标网络节点终端的配置信息和密钥种子生成算法,生成密钥种子的步骤s400包括:

s410:将设备管理密钥、应用软件管理密钥和媒体访问控制地址按预设规则排列,生成静态种子因子;

s420:根据动态码、静态种子因子和密钥种子生成算法,生成密钥种子。

其中,设备管理密钥(devicekey),可以由智能物联网的服务器统一分配的设备的管理密钥,例如设备认证密钥等,长度可以是32字节。应用软件管理密钥(userkey)是指智能物联网的应用终端(各网络节点终端)上的应用软件的管理密钥,由应用软件统一分配,在应用终端是唯一的,其长度可以是32字节。媒体访问控制(mediaaccesscontrol,mac)地址,其具体形态可以是wifi、bt、nb-iot、lora等不同通信技术下的网络地址,长度可以是6字节,媒体访问控制地址是各终端都有的一个唯一的网络标识,由网络设备制造商生产时写在硬件内部。预设规则可以是将设备管理密钥、应用软件管理密钥和媒体访问控制地址按字节进行首尾拼接。静态种子因子可以指能够影响密钥种子生成的固定不变的信号。

本发明提出的加密和解密方法,将动态码应用在对称加密算法上,如将动态码应用在aes(advancedencryptionstandard,高级加密标准)算法的种子生成算法的输入端,起到对静态种子的加扰作用。为更好的说明密钥种子生成实现过程,以动态码为伪随机噪声码(pn码)为例说明:伪随机噪声码的位数长度设计可以使用32位,循环长度由此为231=2147483648次,动态码处于不断变化状态,重复概率小。先将32字节的设备管理密钥、32字节应用软件管理密钥和6字节的媒体访问控制地址组成70字节的静态种子因子,将该70字节的静态种子因子经过32位伪随机噪声码的按位加扰(对于不足32位的可以作补零对齐处理,还可以是其他补位对齐方式,例如补1对齐),生成70字节的、加扰后的种子因子,并将其再作为输入提供给密钥种子生成算法,得到密钥种子,该密钥种子为动态变化的,通过对密钥种子生成过程多进行一步加扰处理,提高密钥种子对应生成的密钥的伪随机性和防破译能力,提高数据传输安全性。

在其中一个实施例中,如图6所示,动态码为伪随机噪声码;

根据动态码、静态种子因子和密钥种子生成算法,生成密钥种子的步骤s420包括:

s421:根据伪随机噪声码对静态种子因子按位加扰,生成加扰种子源;

s422:根据加扰种子源和密钥种子生成算法,生成密钥种子。

为更好的说明根据动态码、静态种子因子和密钥种子生成算法,生成密钥种子的实现过程,以70字节的静态种子因子为例,若伪随机噪声码为32位的编码,则可以将静态种子因子按每四个字节划分为一组,将32位伪随机噪声码分别对应与每一组的32位静态种子因子进行加扰运算,例如进行异或运算,得到加扰种子源,通过对静态种子因子进行加扰处理,得到动态变化的加扰种子源,与密钥种子生成算法配合生成的密钥种子具有动态变化性,安全性高。需要说明的是,根据目标网络节点终端的要求和配置不同,静态种子因子并不局限于上述实施例中的具体举例,此例子只是为了更好的帮助本领域技术人员理解方案,并不对本申请的实际保护范围造成影响。

在其中一个实施例中,如图7所示,根据加扰种子源和密钥种子生成算法,生成密钥种子的步骤包括:

s4221:对加扰种子源进行排序;

s4222:将排序后的加扰种子源输入至rc4算法模型,并获取rc4算法模型生成的密钥种子。

rc4算法模型的核心部分的s-box长度可为任意,但一般为256字节,该算法的速度可以达到des加密的10倍左右,运算速度快。具体的,首先对种子源进行排序处理,排序过程可以根据rc4算法模型对输入信号的要求,移位排序生成128位或256位的信号,然后将排序后的加扰种子源作为rc4算法模型的输入,提取rc4算法模型生成的种子作为密钥种子。目标网络节点终端在生成种子时,做同样的处理。本申请实施例提供的密钥种子生成算法是在标准对称加密算法的基础上,做了一层加扰处理,多了一层加密保护,破解难度高,可靠性更强。

在其中一个实施例中,如图4和图5所示,加密和解密方法还包括:

s600:根据动态码和加扰算法生成第二密钥。

物联网智能终端具有多样性,不同行业,不同用户,不同应用场景所有使用的终端在计算能力、存储资源、通信速率、功耗大小等方面的能力大小各不相同。例如,智慧小区的智能水电气表、环境pm2.5检测器、路灯控制器等物联网终端,通常具备有中央处理功能模块和网络通信功能模块,具备一定安全防护功能。而智慧城市的智能摄像头、智能支付终端、智能网关、智能车联网中控等终端,其本身具有操作系统,具备强大的运算单元、存储能力、通信能力、外部感知能力。传统技术中采用单一的加密或解密算法,不能满足不同处理能力的智能终端,资源分配不合理。针对此问题,本申请实施例提供的加密和解密方法,提供至少两种密钥供目标网络节点终端选择。考虑到采用加扰算法生成的第二密钥进行数据加密或解密的处理速度比采用上述第一密钥进行数据加密或解密的处理速度要快很多,本申请实施例的加密和解密方法,通过动态码(例如,伪随机噪声码)和加扰算法生成第二密钥,供数据加密或解密时使用。其中,若动态码为32位的伪随机噪声码,则第二密钥可以用于指示对需要向外发送的待发送数据按32位(4个字节)分组与伪随机噪声码进行异或等加扰运算,生成密文,终端对待解密密文的解密过程与对待发送数据的加密过程类似,在此不做赘述。

应该理解的是,虽然图2-7的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-7中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

本申请实施例提供了一种加密和解密装置,如图8所示,该装置应用于服务器,该装置包括:

选择参数获取模块1,用于获取目标网络节点终端的配置信息;

超负荷判断模块2,用于根据目标网络节点终端的配置信息,判断目标网络节点终端是否超负荷运行;

第一工作模式选择模块3,用于在判定目标网络节点终端超负荷运行时,则生成并发送第一类加密图样至目标网络节点终端,第一类加密图样用于指示目标网络节点终端按第一预设规则进行数据加密或解密;

第二工作模式选择模块4,用于在判定目标网络节点终端未超负荷运行,则生成并发送第二类加密图样至目标网络节点终端,第二类加密图样用于指示目标网络节点终端按第二预设规则进行数据加密或解密;

其中,按第一预设规则进行数据加密或解密所需的终端处理能力低于按第二预设规则进行数据加密或解密所需的终端处理能力。

目标网络节点终端等名词释义与上述实施例中相同,在此不做赘述。本申请实施例提供的加密和解密装置,通过选择参数获取模块1获取目标网络节点终端的配置信息,再通过超负荷判断模块2根据目标网络节点终端的配置信息,判断目标网络节点终端是否超负荷运行,并将判断结果发送至第一工作模式选择模块3和第二工作模式选择模块4,第一工作模式选择模块3在判定目标网络节点终端超负荷运行时,生成并发送第一类加密图样至目标网络节点终端,第一类加密图样用于指示目标网络节点终端按第一预设规则进行数据加密或解密;第二工作模式选择模块4在判定目标网络节点终端未超负荷运行,生成并发送第二类加密图样至目标网络节点终端,第二类加密图样用于指示目标网络节点终端按第二预设规则进行数据加密或解密。根据综合考虑终端的处理能力和收发数据情况,自适应调整该终端进行数据加密或解密时所采用的密钥,以减轻超负荷运行的终端的负载,在保障数据传输安全的前提下,提高各终端运行速度。

在其中一个实施例中,上述加密和解密装置中:

第一预设规则为交替采用第一密钥和第二密钥进行数据加密或解密;

第二预设规则为采用第一密钥进行数据加密或解密;

其中,采用第一密钥进行数据加密或解密所需的终端处理能力高于采用第二密钥进行数据加密或解密时所需的终端处理能力。

第一密钥和第二密钥的释义与作用与上述加密和解密方法实施例中相同,在此不做赘述。

在其中一个实施例中,加密和解密装置中:

第一类加密图样和第二类加密图样均包括n位块标识符,每位块标识符对应一个待加密信息块或待解密信息块;

第一类加密图样中的n-i位块标识符为第一值,第一类加密图样中的i位块标识符为第二值,n和i均为大于等于1的自然数,且i≤n,各块标识符对应一个原始信息块或一个待解密信息块;

第二类加密图样的n位块标识符均为第一值;

其中,第一值用于指示目标网络节点终端采用第一密钥对块标识符对应的目标信息块进行加密或解密;第二值用于指示目标网络节点终端采用第二密钥对块标识符对应的目标信息块进行加密或解密;目标信息块为待加密信息块或待解密信息块。

待加密信息块、待解密信息块等的名词释义与上述第一类加密图样和第二类加密图样指示目标网络节点终端采用第一密钥和第二密钥进行数据加密或解密的过程可以参照上述加密和解密方法实施例中的描述,本申请实施例提供的加密和解密装置中的模块、单元可以实现上述加密和解密方法中对应步骤的功能。

在其中一个实施例中,如图8所示,加密和解密装置还包括:

动态码发送模块,用于发送动态码至目标网络节点终端,动态码被目标网络节点终端用于生成第一密钥和第二密钥。

具体的,通过动态码发送模块发送动态码至目标网络节点终端,使目标网络节点终端生成第一密钥和第二密钥,以便第一工作模式选择模块3和第二工作模式选择模块4采用第一密钥和第二密钥进行数据加密或解密,实现数据传输。

在其中一个实施例中,加密和解密装置还包括:

动态码更新模块,用于在每次网络连接断开前,更新动态码;或定时更新动态码;或在接收到目标网络节点终端发送的第一更新请求命令时,更新动态码。通过动态码更新模块更新动态码,进一步提高数据传输安全性。

在其中一个实施例中,加密和解密装置还包括:

加密图样更新模块,用于在每次网络连接断开前,更新第一类加密图样和第二类加密图样;或定时更新第一类加密图样和第二类加密图样;或在接收到目标网络节点终端发送的第二更新请求命令时更新第一类加密图样和第二类加密图样;或在保活定时器超时,更新第一类加密图样和第二类加密图样。通过加密图样更新模块更新第一类加密图样和第二类加密图样,以根据目标网络节点终端的处理能力间歇性地调制加密和解密方案,使目标网络节点终端处于较佳工作状态。

本申请实施例还提供了一种加密和解密装置,如图9所示,该装置应用于目标网络节点终端,该加密和解密装置包括:

第一预设规则执行模块100,用于在接收服务器发送的第一类加密图样的情况下,根据第一类加密图样按第一预设规则进行数据加密或解密;

第二预设规则执行模块200,用于在接收到服务器发送的第二类加密图样的情况下,并根据第二类加密图样按第二预设规则进行数据加密或解密;

其中,按第一预设规则进行数据加密或解密所需的终端处理能力低于按第二预设规则进行数据加密或解密所需的终端处理能力。

其中,加密和解密装置中的各模块、单元所执行的步骤实现均可以参照上述加密和解密方法中的实施例中的说明。本申请实施例提供的一种加密和解密装置,通过第一预设规则执行模块100接收服务器发送的第一类加密图样,且第一预设规则执行模块100根据第一类加密图样按预第一预设规则进行数据加密或解密,还通过第二预设规则执行模块200接收第二类加密图样,且通过第二预设规则执行模块200按照第二类加密图样指示按第二预设规则进行数据加密或解密。第一预设规则和第二预设规则主要是采用不同类型的密钥进行数据加密或解密,本申请实施例提供的加密和解密装置能够根据各目标网络节点终端的处理能力,控制该终端按不同预设规则(采用不同的密钥)进行数据加密或解密,在保证数据传输安全的前提下,减轻终端运行负担,提高运行速度。

在其中一个实施例中,如图10所示,第一预设规则执行模块100包括:

交替密钥选择单元110,用于在接收服务器发送的第一类加密图样的情况下,根据第一类加密图样交替采用第一密钥和第二密钥进行数据加密或解密;

第二预设规则执行模块200包括:

单一密钥选择单元210,用于在接收第二类加密图样的情况下,根据第二类加密图样采用第一密钥进行数据加密或解密;

其中,采用第一密钥进行数据加密或解密所需的终端处理能力高于采用第二密钥进行数据加密或解密时所需的终端处理能力。

其中,交替密钥选择单元110和单一密钥选择单元210所执行的步骤均可以参照上述加密和解密方法的实施例中的描述,在此不做赘述。

在其中一个实施例中,如图9所示,加密和解密装置,还包括:

动态码获取模块300,用于获取服务器发送的动态码;

密钥种子生成模块400,用于根据动态码、目标网络节点终端的配置信息和密钥种子生成算法,生成密钥种子;

第一密钥确定模块500,用于将密钥种子输入至对称密钥生成器,并获取对称密钥生成器生成的第一密钥。

在其中一个实施例中,如图11所示,密钥种子生成模块400包括:

静态种子因子生成单元410,用于将设备管理密钥、应用软件管理密钥和媒体访问控制地址按预设规则排列,生成静态种子因子;

动态密钥种子确定单元420,用于根据动态码、静态种子因子和密钥种子生成算法,生成密钥种子。

在其中一个实施例中,如图12所示,动态密钥种子确定单元420包括:

加扰种子源生成单元421,用于根据伪随机噪声码对静态种子因子按位加扰,生成加扰种子源;

加扰密钥种子确定单元422,用于根据加扰种子源和密钥种子生成算法,生成密钥种子。

在其中一个实施例中,如图13所示,加扰密钥种子确定单元422包括:

加扰种子源排序单元4221,用于对加扰种子源进行排序;

rc4密钥种子确定单元4222,用于将排序后的加扰种子源输入至rc4算法模型,并获取rc4算法模型生成的密钥种子。

在其中一个实施例中,如图9所示,加密和解密装置还包括:

第二密钥确定模块600,用于根据动态码和加扰算法生成第二密钥。

本申请实施例提供的一种加密和解密装置,通过密钥种子参数获取模块300获取目标网络节点终端的配置信息和伪随机噪声码,并通过密钥种子生成模块400根据该伪随机噪声码和该终端的配置信息和密钥种子生成算法生成密钥种子,再进一步由第一密钥确定模块500将该密钥种子作为对称密钥生成器的输入,得到第一密钥,避免了单一固定的静态密钥易被逆向破解的问题,该目标网络节点终端根据该第一密钥对该待发送数据加密或对待解密密文进行解密时,数据传输的安全性高。

需要说明的是,上述加密和解密装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端或服务器,其内部结构图可以如图14所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种加密和解密方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。

本领域技术人员可以理解,图14中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

本申请实施例提供的一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现以下步骤:

s10:获取目标网络节点终端的配置信息;

s20:根据目标网络节点终端的配置信息,判断目标网络节点终端是否超负荷运行;

s30:若判定目标网络节点终端超负荷运行,则生成并发送第一类加密图样至目标网络节点终端,第一类加密图样用于指示目标网络节点终端按第一预设规则进行数据加密或解密;

s40:若判定目标网络节点终端未超负荷运行,则生成并发送第二类加密图样至目标网络节点终端,第二类加密图样用于指示目标网络节点终端按第二预设规则进行数据加密或解密;

其中,按第一预设规则进行数据加密或解密所需的终端处理能力低于按第二预设规则进行数据加密或解密所需的终端处理能力。

在其中一个实施例中,计算机设备中的处理器执行计算机程序时还可以实现以下步骤:

s50:发送动态码至目标网络节点终端,动态码被目标网络节点终端用于生成第一密钥和第二密钥。

在其中一个实施例中,计算机设备中的处理器执行计算机程序时还可以实现以下步骤:

s60:在每次网络连接断开前更新动态码;或

定时更新动态码;或

在接收到目标网络节点终端发送的第一更新请求命令时更新动态码。

在其中一个实施例中,计算机设备中的处理器执行计算机程序时还可以实现以下步骤:

s70:在每次网络连接断开前更新第一类加密图样和第二类加密图样;或

定时更新第一类加密图样和第二类加密图样;或

在接收到网络节点终端发送的第二更新请求命令时更新第一类加密图样和第二类加密图样;或

在保活定时器超时时,更新第一类加密图样和第二类加密图样。

在其中一个实施例中,计算机设备中的处理器执行计算机程序时还可以实现以下步骤:

获取目标网络节点终端生成的第一密钥和第二密钥,并将该第一密钥和该第二密钥同步广播至其他网络节点终端。

本申请实施例提供的计算机设备在运行其上存储的计算机程序时,可以实现上述加密和解密方法中的方法步骤所实现的功能,具体实现过程及其有益效果均可参照上述方法实施例中的描述,在此不做赘述。

本申请实施例提供的一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现以下步骤:

s100:在接收服务器发送的第一类加密图样的情况下,根据第一类加密图样按第一预设规则进行数据加密或解密;

s200:在接收第二类加密图样的情况下,根据第二类加密图样按第二预设规则进行数据加密或解密;

其中,按第一预设规则进行数据加密或解密所需的终端处理能力低于按第二预设规则进行数据加密或解密所需的终端处理能力。

在其中一个实施例中,计算机设备中的处理器执行计算机程序时还可以实现以下步骤:

s110:根据第一类加密图样交替采用第一密钥和第二密钥进行数据加密或解密;

s210:根据第二类加密图样采用第一密钥进行数据加密或解密;

其中,采用第一密钥进行数据加密或解密所需的终端处理能力高于采用第二密钥进行数据加密或解密时所需的终端处理能力。

在其中一个实施例中,计算机设备中的处理器执行计算机程序时还可以实现以下步骤:

s300:获取服务器发送的动态码;

s400:根据动态码、目标网络节点终端的配置信息和密钥种子生成算法,生成密钥种子;

s500:将密钥种子输入至对称密钥生成器,并获取对称密钥生成器生成的第一密钥。

在其中一个实施例中,计算机设备中的处理器执行计算机程序时还可以实现以下步骤:

s410:将设备管理密钥、应用软件管理密钥和媒体访问控制地址按预设规则排列,生成静态种子因子;

s420:根据动态码、静态种子因子和密钥种子生成算法,生成密钥种子。

在其中一个实施例中,计算机设备中的处理器执行计算机程序时还可以实现以下步骤:

s421:根据伪随机噪声码对静态种子因子按位加扰,生成加扰种子源;

s422:根据加扰种子源和密钥种子生成算法,生成密钥种子。

在其中一个实施例中,计算机设备中的处理器执行计算机程序时还可以实现以下步骤:

s4221:对加扰种子源进行排序;

s4222:将排序后的加扰种子源输入至rc4算法模型,并获取rc4算法模型生成的密钥种子。

在其中一个实施例中,计算机设备中的处理器执行计算机程序时还可以实现以下步骤:

s600:根据动态码和加扰算法生成第二密钥。

其中,待发送数据、第一密钥、第一类加密图样等名词释义与上述密钥生成选择方法中的释义相同,在此不做赘述。计算机设备可以是服务器或终端,该计算机设备可以与智能物联网中的各个网络节点终端进行通信。本申请实施例提供的计算机设备采用伪随机噪声码等动态码和目标网络节点终端的配置信息,得到可以更新变化的密钥种子,并将该密钥种子作为对称密钥生成器的输入,得到第一密钥,该第一密钥可以根据用户设定进行更新,例如在每次tcp/ip连接断开前进行更新,或者由计算机设备(服务器)强制更新,或者由终端空闲态时主动向计算机设备(服务器)申请更新。相较于传统的对称密钥生成器得到的密钥来说,其所应用的物联网终端在运行时候的数据安全性更高。需要说明的是,本申请实施例提供的计算机设备,其上的处理器执行计算机程序时还可以实现上述加密和解密方法中的其他步骤,所实现的有益效果也同上,在此不作赘述。

本申请实施例还提供了一种物联网系统,如图1所示,包括:

服务器104,服务器104包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现上述服务器侧的加密和解密方法的步骤;

多个终端102,各终端102包括存储器和处理器,存储器存储有计算机程序,终端102中的目标网络终端102的处理器执行计算机程序时实现上述终端侧的加密和解密方法的步骤。

本申请实施例提供的物联网系统,能够根据目标网络节点终端102的处理能力,合理分配资源,控制其采用不同的密钥进行数据加密或解密,从而提高终端102处理速度。另一方面,本申请实施例提供的物联网系统通过采用动态码和静态种子因子结合的方式,生成动态变化的第一密钥,对于重要的数据可以采用该第一密钥进行加密或解密,提高密钥逆向防破解能力,从而提高数据传输的安全性。

本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:

s10:获取目标网络节点终端的配置信息;

s20:根据目标网络节点终端的配置信息,判断目标网络节点终端是否超负荷运行;

s30:若判定目标网络节点终端超负荷运行,则生成并发送第一类加密图样至目标网络节点终端,第一类加密图样用于指示目标网络节点终端按第一预设规则进行数据加密或解密;

s40:若判定目标网络节点终端未超负荷运行,则生成并发送第二类加密图样至目标网络节点终端,第二类加密图样用于指示目标网络节点终端按第二预设规则进行数据加密或解密;

其中,按第一预设规则进行数据加密或解密所需的终端处理能力低于按第二预设规则进行数据加密或解密所需的终端处理能力。

本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:

s100:在接收到服务器发送的第一类加密图样的情况下,根据第一类加密图样按第一预设规则进行数据加密或解密;

s200:在接收到服务器发送的第二类加密图样的情况下,根据第二类加密图样按第二预设规则进行数据加密或解密;

其中,按第一预设规则进行数据加密或解密所需的终端处理能力低于按第二预设规则进行数据加密或解密所需的终端处理能力。

本领域普通技术人员可以理解实现上述加密和解密方法实施例中的全部或部分流程,在此不做赘述,实现上述方法中的流程是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。本申请实施例提供的计算机存储介质中,其上存储的计算机程序被处理器执行时还实现上述加密和解密方法的步骤,在此不做赘述。

以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

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