用于安全通信的方法、装置、计算机可读介质及设备与流程

文档序号:24044098发布日期:2021-02-23 17:45阅读:87来源:国知局
用于安全通信的方法、装置、计算机可读介质及设备与流程

[0001]
本发明涉及通信技术领域,尤其涉及用于安全通信的方法、装置、计算机可读介质及设备。


背景技术:

[0002]
网关又称网间连接器、协议转换器。网关是从一个网络向另一个网络发送信息时必须经过的一道“关口”。当设备想要加入网络时,就需要通过网关才能加入进网络。随着互联网的发展,无线通信方式的安全性也越来越受重视。
[0003]
现有技术中,为了保障无线通信的安全,网关会给设备传输一个加密的网络秘钥,设备则需要对该加密的网络秘钥进行解密,并使用解密后的网络密钥对需要传输的数据包进行加密,然后再将加密的数据包传输给网关,由网关进行解密,实现设备与网关间的通信。然而,由于现有技术中的网络密钥是一个公开的秘钥,网关对所有设备发送的加密网络秘钥都是相同的,网络中的所有设备也均采用该网络秘钥进行数据加密。因此,在该网络秘钥传输的过程中,非常容易被网络抓包器抓取并破解,使得无线通信的安全性降低。


技术实现要素:

[0004]
基于上述现有技术的不足,本申请提出了用于安全通信的方法、装置、计算机可读介质及设备,能够实现降低网络秘钥被抓包器抓取并破解的概率,提高无线通信的安全性。
[0005]
第一方面,本申请实施例提供了一种用于安全通信的方法,该方法包括:
[0006]
网关接收智能设备发送的入网请求;其中,入网请求携带有智能设备的地址信息;
[0007]
网关根据智能设备的地址信息,将智能设备相对应的加密网络秘钥发送给智能设备、并为智能设备分配网络地址;其中,智能设备相对应的加密网络秘钥由网关使用与智能设备相对应的哈希值对原始网络秘钥进行加密得到;智能设备相对应的哈希值由网关对智能设备发送的智能设备特有的安装码信息进行哈希运算得到。
[0008]
在一些实施例中,网关根据智能设备的地址信息,将智能设备相对应的加密网络秘钥发送给智能设备、并为智能设备分配网络地址之后,还包括:
[0009]
网关接收智能设备发送的应用层秘钥的请求信息;
[0010]
网关为智能设备分配智能设备特有的原始应用层秘钥;
[0011]
网关利用智能设备相对应的哈希值对智能设备特有的原始应用层秘钥进行加密,得到与智能设备相对应的加密应用层秘钥;
[0012]
网关向智能设备发送与智能设备相对应的加密应用层秘钥。
[0013]
在一些实施例中,网关向智能设备发送与智能设备相对应的加密应用层秘钥之后,还包括:
[0014]
网关接收智能设备发送的加密数据包;其中,加密数据包包括:由原始网络秘钥加密的网络层数据、以及由智能设备特有的原始应用层秘钥加密的应用层数据;
[0015]
网关利用原始网络秘钥和智能设备特有的原始应用层秘钥对加密数据包进行解
密。
[0016]
在一些实施例中,网关接收智能设备发送的入网请求之后,还包括:
[0017]
根据智能设备的地址信息,判断智能设备是否具有入网权限;若智能设备具有入网权限,则网关执行根据智能设备的地址信息,将智能设备相对应的加密网络秘钥发送给智能设备、并为智能设备分配网络地址的步骤。
[0018]
在一些实施例中,还包括:
[0019]
网关按照预设的时间周期,检测与智能设备进行通信时的丢包率以及网关所处环境的环境底噪;
[0020]
网关判断丢包率是否大于第一阈值以及判断环境底噪是否大于第二阈值;
[0021]
若网关判断出丢包率大于第一阈值,和/或,环境底噪大于第二阈值,则网关切换至其他空闲信道创建网络,并向智能设备发送切换信道通知信息;其中,切换信道通知信息中携带有切换后的信道的标识信息。
[0022]
第二方面,本申请实施例提供了另一种用于安全通信的方法,包括:
[0023]
智能设备向网关发送入网请求;其中,入网请求携带有智能设备的地址信息;
[0024]
智能设备接收网关发送的智能设备相对应的加密网络秘钥、并得到网关分配的网络地址;其中,智能设备相对应的加密网络秘钥由网关使用与智能设备相对应的哈希值对原始网络秘钥进行加密得到;智能设备相对应的哈希值由网关对智能设备发送的智能设备特有的安装码信息进行哈希运算得到;
[0025]
智能设备利用与智能设备相对应的哈希值对与智能设备相对应的加密网络秘钥进行解密,得到原始网络秘钥。
[0026]
在一些实施例中,智能设备接收网关发送的与智能设备相对应的加密网络秘钥、并得到网关分配的网络地址之后,还包括:
[0027]
智能设备向网关发送应用层秘钥的请求信息;
[0028]
智能设备接收网关分配的与智能设备相对应的加密应用层秘钥;其中,加密应用层秘钥由网关采用智能设备相对应的哈希值对智能设备特有的原始应用层密码进行加密得到;
[0029]
智能设备利用智能设备相对应的哈希值,对与智能设备相对应的加密应用层秘钥进行解密,得到智能设备特有的原始应用层秘钥。
[0030]
在一些实施例中,智能设备利用与智能设备相对应的哈希值,对与智能设备相对应的加密应用层秘钥进行解密,得到智能设备特有的原始应用层秘钥之后,还包括:
[0031]
智能设备利用原始网络秘钥加密数据包中的网络层数据,得到加密的网络层数据;
[0032]
智能设备利用智能设备特有的原始应用层秘钥加密数据包中的应用层数据,得到加密的应用层数据;
[0033]
智能设备向网关发送加密的数据包;其中,加密的数据包中包括加密的网络层数据和加密的应用层数据。
[0034]
第三方面,本申请实施例提供了一种用于安全通信的装置,应用于网关,该装置包括:
[0035]
第一接收单元,用于接收智能设备发送的入网请求;其中,入网请求携带有智能设
备的地址信息;
[0036]
第一发送单元,用于根据智能设备的地址信息,将智能设备相对应的加密网络秘钥发送给智能设备、并为智能设备分配网络地址;其中,智能设备相对应的加密网络秘钥由网关使用与智能设备相对应的哈希值对原始网络秘钥进行加密得到;智能设备相对应的哈希值由网关对智能设备发送的智能设备特有的安装码信息进行哈希运算得到。
[0037]
在一些实施例中,上述装置还包括:
[0038]
第二接收单元,用于接收智能设备发送的应用层秘钥的请求信息;
[0039]
分配单元,用于为智能设备分配智能设备特有的原始应用层秘钥;
[0040]
加密单元,用于利用智能设备相对应的哈希值对智能设备特有的原始应用层秘钥进行加密,得到与智能设备相对应的加密应用层秘钥;
[0041]
第二发送单元,用于向智能设备发送与智能设备相对应的加密应用层秘钥。
[0042]
在一些实施例中,上述装置还包括:
[0043]
第三接收单元,用于接收智能设备发送的加密数据包;其中,加密数据包包括:由原始网络秘钥加密的网络层数据、以及由智能设备特有的原始应用层秘钥加密的应用层数据;
[0044]
解密单元,用于利用原始网络秘钥和智能设备特有的原始应用层秘钥对加密数据包进行解密。
[0045]
在一些实施例中,上述装置还包括:
[0046]
第一判断单元,用于根据智能设备的地址信息,判断智能设备是否具有入网权限;若第一判断单元判断出智能设备具有入网权限,则第一发送单元执行根据智能设备的地址信息,将智能设备相对应的加密网络秘钥发送给智能设备、并为智能设备分配网络地址。
[0047]
在一些实施例中,上述装置还包括:
[0048]
检测单元,用于按照预设的时间周期,检测与智能设备进行通信时的丢包率以及网关所处环境的环境底噪;
[0049]
第二判断单元,用于判断丢包率是否大于第一阈值以及判断环境底噪是否大于第二阈值;
[0050]
切换单元,用于若第二判断单元判断出丢包率大于第一阈值,和/或,环境底噪大于第二阈值,则切换至其他空闲信道创建网络;
[0051]
第三发送单元,用于向智能设备发送切换信道通知信息;其中,切换信道通知信息中携带有切换后的信道的标识信息。
[0052]
第四方面,本申请实施例提供了一种用于安全通信的装置,应用于智能设备,该装置包括:
[0053]
第一发送单元,用于向网关发送入网请求;其中,入网请求携带有智能设备的地址信息;
[0054]
第一接收单元,用于接收网关发送的智能设备相对应的加密网络秘钥、并得到网关分配的网络地址;其中,智能设备相对应的加密网络秘钥由网关使用与智能设备相对应的哈希值对原始网络秘钥进行加密得到;智能设备相对应的哈希值由网关对智能设备发送的智能设备特有的安装码信息进行哈希运算得到;
[0055]
第一解密单元,用于利用与智能设备相对应的哈希值对与智能设备相对应的加密
网络秘钥进行解密,得到原始网络秘钥。
[0056]
在一些实施例中,上述装置还包括:
[0057]
第二发送单元,用于向网关发送应用层秘钥的请求信息;
[0058]
第二接收单元,用于接收网关分配的与智能设备相对应的加密应用层秘钥;其中,加密应用层秘钥由网关采用智能设备相对应的哈希值对智能设备特有的原始应用层密码进行加密得到;
[0059]
第二解密单元,用于利用智能设备相对应的哈希值,对与智能设备相对应的加密应用层秘钥进行解密,得到智能设备特有的原始应用层秘钥。
[0060]
在一些实施例中,上述装置还包括:
[0061]
第一加密单元,用于利用原始网络秘钥加密数据包中的网络层数据,得到加密的网络层数据;
[0062]
第二加密单元,用于利用智能设备特有的原始应用层秘钥加密数据包中的应用层数据,得到加密的应用层数据;
[0063]
第三发送单元,用于向网关发送加密的数据包;其中,加密的数据包中包括加密的网络层数据和加密的应用层数据。
[0064]
第五方面,本申请实施例提供了一种计算机可读介质,其上存储有计算机程序,其中,程序被处理器执行时实现如第一方面中任一实现方式描述的方法,或者,如第二方面中任一实现方式描述的方法。
[0065]
第六方面,本申请实施例提供了一种处理器,该处理器用于运行程序,其中,该程序运行时实现如第一方面中任一实现方式描述的方法,或者,如第二方面中任一实现方式描述的方法。
[0066]
第七方面,本申请实施例提供了一种设备,包括:一个或多个处理器;存储装置,其上存储有一个或多个程序;当该一个或多个程序被该一个或多个处理器执行时,使得该一个或多个处理器实现如第一方面中任一实现方式描述的方法,或者,如第二方面中任一实现方式描述的方法。
[0067]
本申请提供的用于安全通信的方法、装置、计算机可读介质及设备,通过网关接收入网请求;其中,入网请求携带有智能设备的地址信息。网关根据智能设备的地址信息,将智能设备相对应的加密网络秘钥发送给智能设备、并为智能设备分配网络地址。其中,智能设备相对应的加密网络秘钥由网关使用与智能设备相对应的哈希值对原始网络秘钥进行加密得到;智能设备相对应的哈希值由网关对智能设备发送的智能设备特有的安装码信息进行哈希运算得到。由于网关采用与智能设备相对应的哈希值对原始网络秘钥进行加密,而与智能设备相对应的哈希值又是通过智能设备特有的安装码信息进行哈希运算得来的,因此加密网络秘钥的解密方式仅有对应智能设备才能知道,其他智能设备由于不知道该对应智能设备的安装码信息,因此无法通过抓包器抓取并破解加密网络秘钥,实现了提高无线通信的安全性。
附图说明
[0068]
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是本
申请的一些示例或实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图,而且还可以根据提供的附图将本申请应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。
[0069]
图1是本申请的一些实施例可以应用于其中的示例性系统架构图;
[0070]
图2是根据本申请的用于安全通信的方法的一个实施例的流程示意图;
[0071]
图3是根据本申请的用于安全通信的方法的又一个实施例的流程示意图;
[0072]
图4是根据本申请的用于安全通信的方法的又一个实施例的流程示意图;
[0073]
图5是根据本申请的用于安全通信的方法的又一个实施例的流程示意图;
[0074]
图6是根据本申请的用于安全通信的装置的一个实施例的结构示意图;
[0075]
图7是根据本申请的用于安全通信的装置的又一个实施例结构示意图。
具体实施方式
[0076]
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0077]
需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
[0078]
应当理解,本申请中使用的“系统”、“装置”、“单元”和/或“模块”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换该词语。
[0079]
如本申请和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。由语句“包括一个
……”
限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
[0080]
本申请中使用了流程图用来说明根据本申请的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
[0081]
首先需要说明的是,参阅图1,本申请实施例公开了一种用于安全通信的系统100,包括:网关101和智能设备102。其中,网关101和智能设备102通过无线通信的方式相连。智能设备102可以为电脑、手机、智能门锁等具有通信功能的电子设备。
[0082]
本申请实施例提供的用于安全通信的系统100中,智能设备102向网关101发送入网请求后,网关101会向智能设备102发送与智能设备102相对应的加密网络密钥,并为智能设备102分配网络地址。其中,智能设备102相对应的加密网络秘钥是由智能设备102相对应的哈希值对原始网络秘钥加密得到的。而智能设备102相对应的哈希值则是根据智能设备102特有的安装码信息进行哈希运算得到的。因此智能设备102接收到加密网络秘钥后,可以根据自身特有的安装码信息进行哈希运算,得到智能设备102相对应的哈希值,并采用哈
希值对加密网络秘钥进行解密,实现成功接收网关101发送的网络秘钥。
[0083]
由于本申请提供的用于安全通信的系统100中,网关101发送的加密网络密钥是由网关101使用与智能设备102相对应的哈希值对原始网络秘钥进行加密得到的,而与智能设备102相对应的哈希值又是由网关101对智能设备102发送的智能设备102特有的安装码信息进行哈希运算得到,因此可以对加密网络秘钥进行解密的哈希值只有网关101和智能设备102知道,难以通过抓包器抓取并破解,进而提高了用于安全通信的系统100的安全性。
[0084]
具体的,以下分别通过几个实施例对用于安全通信的方法进行说明。
[0085]
参阅图2,本申请实施例公开了一种用于安全通信的方法,包括以下步骤:
[0086]
s201、智能设备向网关发送入网请求。
[0087]
其中,智能设备的入网请求携带有智能设备的地址信息。智能设备的地址信息指的是智能设备的介质访问控制地址(media access control,mac)信息。mac地址用于说明网络中智能设备的位置,mac地址具有唯一性,即每个智能设备的mac地址在网络中都是唯一的,可以把mac地址看做是智能设备的标识。智能设备通过无线信道向网关发送的入网请求中携带有智能设备的地址信息,就是为了让网关能够根据智能设备的地址信息,查询该智能设备是否拥有入网的权限,如果有入网的权限,网关再进行为智能设备分配网络地址等操作。
[0088]
需要说明的是,步骤s201也可以看成是网关接收智能设备的入网请求。
[0089]
s202、网关根据智能设备的地址信息,将智能设备相对应的加密网络秘钥发送给智能设备、并为智能设备分配网络地址。
[0090]
其中,智能设备相对应的加密网络秘钥由网关使用与智能设备相对应的哈希值对原始网络秘钥进行加密得到。智能设备相对应的哈希值由网关对智能设备发送的智能设备特有的安装码信息进行哈希运算得到。
[0091]
原始网络秘钥指的是没有经过加密的秘钥,原始网络秘钥是由网关生成的,网关通过将原始网络秘钥发给智能设备,智能设备采用原始网络秘钥加密所需发送的数据包,网关再去使用原始网络秘钥进行解密,从而实现网关与智能设备的安全通信。
[0092]
智能设备相对应的加密网络秘钥是在网关与智能设备进行了绑定后,网关根据智能设备发送过来的地址信息及智能设备特有的安装码信息得到的。由于智能设备的安装码信息是该智能设备特有的信息,因此由安装码信息运算得到的哈希值也是智能设备所特有的信息。与智能设备相对应的哈希值只有智能设备自身可通过对自身的安装码信息进行哈希运算才可得到,因此在网络中,与智能设备相对应的哈希值只有网关和智能设备本身知道,网络中的其他设备均不知道智能设备相对应的哈希值。
[0093]
网关根据智能设备的地址信息,判断该智能设备是否具有入网权限,即判断智能设备的mac地址是否具有合法性,是否和网关是否进行过绑定。如果智能设备和网关进行过绑定,那么网关就可以根据智能设备的地址信息得到智能设备相对应的加密网络秘钥,并将智能设备相对应的加密网络秘钥发送给智能设备,且向该智能设备分配网络地址。通过智能设备相对应的哈希值加密得到的加密网络秘钥,只有智能设备和网关才具有可解密的哈希值,因此网关在执行步骤s202时,智能设备相对应的加密网络密钥即使在传输过程中被抓包器抓到了,也会因为没有解密所需的哈希值,无法破解该加密网络秘钥,进而提高了网关和智能设备间通信的安全性。
[0094]
需要说明的是,网关向智能设备发送智能设备相对应的网络秘钥以及网关向智能设备分配网络地址的执行先后顺序不影响本申请实施例的实现。且步骤s202也可以看成是智能设备接收网关发送的与智能设备相对应的加密网络秘钥、并得到网关分配的网络地址。
[0095]
可选地,参阅图3,在本申请一具体实施例中,网关得到与智能设备相对应的加密网络秘钥的方法,包括:
[0096]
s301、智能设备发送智能设备特有的安装码信息以及智能设备的地址信息给网关。
[0097]
其中,智能设备特有的安装码信息指的是智能设备内部存储的一个具有一定字节数的安装码信息。安装码信息具有唯一性,即每一个智能设备中保存的安装码信息都是唯一的,不重复的。且智能设备的安装码信息除了智能设备本身知道以外,其他网络中的智能设备是不知道的。
[0098]
可选地,在本申请一具体实施例中,执行步骤s301的一种实施方式,包括:
[0099]
智能设备通过带外方式发送智能设备特有的安装码信息以及智能设备的地址信息给网关。
[0100]
其中,带外方式指的是不通过智能设备和网关既定的通信通道,而是采用不同的协议、不同的通信通道实现通信。智能设备采用带外方式传送智能设备特有的安装码信息以及智能设备的地址信息给网关,会更具有安全性,传送过程中受到的干扰会比较低。
[0101]
s302、网关对智能设备特有的安装码信息进行哈希运算得到与智能设备相对应的哈希值。
[0102]
其中,与智能设备相对应的哈希值指的是该智能设备特有的哈希值。由于智能设备的安装码信息是该智能设备特有的信息,因此由安装码信息运算得到的哈希值也是智能设备所特有的信息。与智能设备相对应的哈希值只有智能设备自身可通过对自身的安装码信息进行哈希运算才可得到,因此在网络中,与智能设备相对应的哈希值只有网关和智能设备本身知道,网络中的其他设备均不知道智能设备相对应的哈希值。
[0103]
需要说明的是,步骤s302可以在执行了图2示出的步骤s201之后再执行,即网关可以预先存储智能设备的地址信息和智能设备的安装码信息的关联关系,直到智能设备执行步骤s201之后,再根据智能设备的地址信息查看是否存在关联的智能设备特有的安装码信息,如果存在的话即具有入网权限。网关找到智能设备的安装码信息后,进而执行步骤s302。
[0104]
步骤s302也可以在执行图2示出的步骤s201执行之前就执行,即计算得到智能设备对应的哈希值后,网关可以将智能设备的地址信息和智能设备对应的关联关系进行存储,直到智能设备执行步骤s201之后,网关就可以根据智能设备的地址信息,查看是否存在关联的智能设备的哈希值,如果存在的话即具有入网权限,进而执行步骤s303。
[0105]
s303、网关使用与智能设备相对应的哈希值对原始网络秘钥进行加密,得到与智能设备相对应的加密网络秘钥。
[0106]
其中,由于步骤s302得到的与智能设备相对应的哈希值网络中的其他智能设备均是不知道的,因此执行步骤s303时,使用与智能设备相对应的哈希值对原始网络秘钥进行加密后得到的与智能设备相对应的加密网络秘钥,只能由对应智能设备进行解密,因此降
低了加密网络秘钥被恶意破解的可能。
[0107]
需要说明的是,网关利用与智能设备相对应的哈希值对原始网络秘钥进行加密时,可采用的加密算法有很多种,既可以采用非对称式加密算法,也可以采用对称式加密算法,均不影响本申请实施例的实现。
[0108]
需要说明的是,步骤s303可以在图2示出的步骤s201之前执行,即网关计算得到智能设备相对应的加密网络秘钥后,将智能设备的地址信息以及智能设备相对应的加密网络秘钥存储起来,直到智能设备执行图2示出的步骤s201之后,根据智能设备的地址信息找到智能设备相对应的加密网络秘钥。
[0109]
步骤s303也可以在图2示出的步骤s201执行之后再执行,即智能设备发送入网请求后,再根据预先存储的关联关系找到智能设备相对应的哈希值,进而再去执行步骤s303。
[0110]
图3示出的网关得到与智能设备相对应的加密网络秘钥的方法中,步骤s301是在执行图2示出的步骤s201之前就执行的了,而步骤s302和步骤s303则是可以在步骤s201之前就执行,可以是在步骤s201之后再去执行。
[0111]
s203、智能设备利用与智能设备相对应的哈希值对与智能设备相对应的加密网络秘钥进行解密,得到原始网络秘钥。
[0112]
其中,智能设备相对应的哈希值是智能设备利用智能设备特有的安装码信息进行哈希运算得到的。需要说明的是,智能设备相对应的哈希值可以在执行步骤s203以前就计算得到,也可以在智能设备接收到与智能设备相对应的加密网络秘钥后,再进行计算得到,这两种方式均可不影响本申请实施例的实现。
[0113]
智能设备得到原始网络秘钥之后,可使用原始网络秘钥对所需传送的数据包进行加密,并将加密后的数据包发送给网关,网关再利用原始网络秘钥进行解密,完成智能设备与网关间的无线通信。
[0114]
可选地,智能设备执行完步骤s203之后,还可以向网络公布自身的地址信息与分配得到的网络地址的关联关系,使网络中的其他设备知道智能设备的关联关系。当网关由于特殊原因无法使用后,智能设备可以向网络中的其他类似于网关的设备发送入网请求,由于智能设备已经向全网络公布了自身的地址信息与分配得到的网络地址的关联关系,因此网络中的其他类似于网关的设备可知道智能设备具备入网权限,因此可以通过智能设备的入网请求。
[0115]
可选地,参阅图4,在本申请以具体实施例中,图2示出的用于安全通信的方法,还可以包括:
[0116]
s401、网关按照预设的时间周期,检测与智能设备进行通信时的丢包率以及网关所处环境的环境底噪。
[0117]
在执行图2示出的方法的过程中,网关按照预设的时间周期,对与智能设备进行通信时的丢包率以及网关所处环境的环境底噪进行周期检测。其中,时间周期可人为进行设定,时间周期越短,则检测越频繁,网关与智能设备间通信的安全性也会越高。
[0118]
具体地,网关上电启动后会先判断是否创建过网络,如果创建过网络,则开启创建过的网络,并开始执行步骤s401。而智能设备在执行图2示出的步骤s201之前,会扫描信道,找到网关所在的信道后,向网关发送入网请求,即执行步骤s201。其中,入网请求指的是加入网关创建的网络的请求。如果网关没有创建过网络,则扫描信道,选择一个空闲的信道加
入并创建网络,并在创建网络之后执行步骤s401。
[0119]
s402、网关判断丢包率是否大于第一阈值以及判断环境底噪是否大于第二阈值。
[0120]
若网关判断出丢包率大于第一阈值,和/或,环境底噪大于第二阈值,则执行步骤s403。若网关判断出丢包率小于第一阈值且环境底噪大于第二阈值,则继续执行步骤s401。
[0121]
若丢包率大于第一阈值,则证明当前网关与智能设备的通信过程并不安全,可能存在抓包器在抓取信道中的数据,因此网关会执行步骤s403。而如果环境底噪大于第二阈值,则说明当前网关所处的环境干扰性较大,影响到网关与智能设备间的通信,因此也需执行步骤s403。
[0122]
需要说明的是网关判断丢包率和判断环境底噪的先后顺序并不影响本申请实施例的实现。
[0123]
s403、网关切换至其他空闲信道创建网络,并向智能设备发送切换信道通知信息。
[0124]
其中,切换信道通知信息中携带有切换后的信道的标识信息。智能设备接收了切换信道通知信息后,会根据切换后的信道的标识信息,找到网关,然后再次向网关发送入网请求。如果智能设备没有收到切换信道通知信息,则会重新扫描信道,找到网关所在的信道后向网关发送切换信道通知信息。
[0125]
网关切换到其他信道之后,会返回执行步骤s401,以此来保证通信的安全性。图4示出的方法中,通过在执行图2示出方法的时候,周期性检测丢包率和环境底噪,进一步提高了网关与智能设备间的通信安全性。
[0126]
从上述技术方案可以看出,本申请提供的用于安全通信的方法中,网关通过接收入网请求;其中,入网请求携带有智能设备的地址信息。网关根据智能设备的地址信息,将智能设备相对应的加密网络秘钥发送给智能设备、并为智能设备分配网络地址。其中,智能设备相对应的加密网络秘钥由网关使用与智能设备相对应的哈希值对原始网络秘钥进行加密得到;智能设备相对应的哈希值由网关对智能设备发送的智能设备特有的安装码信息进行哈希运算得到。由于网关采用与智能设备相对应的哈希值对原始网络秘钥进行加密,而与智能设备相对应的哈希值又是通过智能设备特有的安装码信息进行哈希运算得来的,因此加密网络秘钥的解密方式仅有对应智能设备才能知道,其他智能设备由于不知道该智能设备的安装码信息,因此无法通过抓包器抓取并破解该加密网络秘钥,进而提高了无线通信的安全性。
[0127]
参阅图5,本申请实施例公开了另一种用于安全通信的方法,具体包括以下步骤:
[0128]
s501、智能设备向网关发送入网请求。
[0129]
其中,步骤s501与图2示出的步骤s201的执行原理及过程相同,可参见,此处不再赘述。
[0130]
s502、网关根据智能设备的地址信息,判断智能设备是否具有入网权限。
[0131]
其中,判断智能设备是否具有入网权限指的是判断智能设备的mac地址是否具有合法性。若智能设备和网关进行过绑定,则智能设备的mac地址具有合法性,有入网权限。进一步地,如果智能设备和网关进行过绑定,那么智能设备就有向网关发送过地址信息和特有的安装码信息,网关就可以根据智能设备的地址信息得到智能设备相对应的加密网络秘钥,并将智能设备相对应的加密网络秘钥发送给智能设备,且向该智能设备分配网络地址。
[0132]
若智能设备没有入网权限,则结束与智能设备的通信,若智能设备具有入网权限,
则执行步骤s503。
[0133]
s503、网关根据智能设备的地址信息,将智能设备相对应的加密网络秘钥发送给智能设备、并为智能设备分配网络地址。
[0134]
其中,步骤s503与图2示出的步骤s202的执行原理及过程相同,可参见,此处不再赘述。
[0135]
s504、智能设备利用与智能设备相对应的哈希值对与智能设备相对应的加密网络秘钥进行解密,得到原始网络秘钥。
[0136]
其中,步骤s504与图2示出的步骤s203的执行原理及过程相同,可参见,此处不再赘述。
[0137]
s505、智能设备向网关发送应用层秘钥的请求信息。
[0138]
智能设备传输给网关的数据包中既有网络层数据,又有应用层数据。应用层秘钥是用于加密应用层数据的秘钥。而步骤s504得到的原始网络秘钥则是用于加密网络层数据的秘钥。为了进一步提高无线通信过程中的安全性,智能设备除了使用原始网络密钥加密外,还向网关请求应用层秘钥进行加密。
[0139]
需要说明的是,应用层秘钥除了可以向网关申请分配,还可以预先配置在网关和智能设备中。即网关中和智能设备中都存储了相同的应用层秘钥,因此就不需要再去请求网关下发应用层秘钥。
[0140]
还需要说明的是,步骤s505也可以看成是网关接收智能设备发送的应用层秘钥的请求信息。
[0141]
s506、网关为智能设备分配智能设备特有的原始应用层秘钥。
[0142]
其中,智能设备特有的原始应用层秘钥具有唯一性,是专属于该智能设备的秘钥。智能设备特有的原始应用层秘钥可以是在接收了智能设备的应用层秘钥请求后,网关再随机生成的秘钥,也可以是网关已经预先生成了的原始应用层秘钥,并在收到智能设备的请求后,选择其中一个还没有分配给其他智能设备的秘钥作为智能设备特有的原始应用层秘钥。还需要说明的是,原始应用层秘钥指的是还未经过加密处理的秘钥。
[0143]
s507、网关利用智能设备相对应的哈希值对智能设备特有的原始应用层秘钥进行加密,得到与智能设备相对应的加密应用层秘钥。
[0144]
其中,步骤s507中提及的及智能设备相对应的哈希值,与步骤s503中用于加密原始网络秘钥的哈希值是一样的值,都是通过智能设备特有的安装码信息进行哈希运算得到的。使用智能设备相对应的哈希值对智能设备特有的原始应用层秘钥进行加密吼,得到的与智能设备相对应的加密应用层秘钥只能够通过智能设备相对应的哈希值才可解密。而智能设备相对应的哈希值则是智能设备特有的安装码计算得来的,因此只有相对应的智能设备和网关知道。
[0145]
s508、网关发送与智能设备相对应的加密应用层秘钥给智能设备。
[0146]
与智能设备相对应的加密应用层秘钥在传输过程中,如果被抓包器抓取了,抓包器也会因为没有与智能设备相对应的哈希值从而无法破解。而与智能设备相对应的哈希值是根据智能设备特有的安装码信息计算来的,智能设备特有的安装码信息不会对网络中的其他智能设备公开,进而也降低了第三方恶意破解应用层秘钥的概率。
[0147]
s509、智能设备利用与智能设备相对应的哈希值,对与智能设备相对应的加密应
用层秘钥进行解密,得到智能设备特有的原始应用层秘钥。
[0148]
其中,与智能设备相对应的哈希值可以预先计算好了存储于智能设备中,也可以是接收到与智能设备对应的加密应用层秘钥以后,再计算与智能设备相对应的哈希值。
[0149]
s510、智能设备利用原始网络秘钥加密数据包中的网络层数据,得到加密的网络层数据。
[0150]
智能设备需要发送给网关的数据包中包括了应用层数据和网络层数据。智能设备通过步骤s504得到的原始网络秘钥对数据包中的网络层数据进行加密,得到了加密的网络层数据。
[0151]
s511、智能设备利用智能设备特有的原始应用层秘钥加密数据包中的应用层数据,得到加密的应用层数据。
[0152]
智能设备利用步骤s509得到的原始应用层秘钥对数据包中的应用层数据加密,得到了加密的应用层秘钥。
[0153]
需要说明的是,步骤s510与步骤s511执行的先后顺序不影响本申请实施例的实现。且步骤s510与步骤s511中可以只执行其中一个步骤,即只对网络层数据做加密、或者只对应用层数据做加密。对数据包中的网络层数据和应用层数据都进行加密的话,数据包被破解的概率会更低,通信的安全性会得到提高。
[0154]
s512、智能设备向网关发送加密的数据包。
[0155]
其中,加密的数据包中包括加密的网络层数据和加密的应用层数据。由于加密的应用层数据是采用智能设备特有的原始应用层秘钥加密得到的,因此只有对应智能设备以及网关拥有该秘钥,即使加密的数据包被抓取,且破解了原始网络密钥加密的网络层数据,也会因为没有智能设备特有的原始应用层秘钥而不能完全破解数据包,进而可进一步提高了智能设备与网关间通信的安全性。
[0156]
s513、网关利用原始网络秘钥和智能设备特有的原始应用层秘钥对加密数据包进行解密。
[0157]
执行完步骤s513后,网关得到智能设备发送的数据包,数据包中包括应用层数据和网络层数据,网关与智能设备实现了无线通信。
[0158]
本申请实施例提供的无线通信的方法中,由于智能设备向网关发送应用层秘钥的请求信息后,接收到的是网关分配的与智能设备相对应的加密应用层秘钥。而智能设备相对应的加密应用层秘钥则是网关通过智能设备相对应的哈希值对智能设备特有的原始应用层秘钥加密得到的。因此智能设备可利用智能设备相对应的哈希值,对与智能设备相对应的加密应用层秘钥进行解密,即可得到智能设备特有的原始应用层秘钥。智能设备采用智能设备特有的原始应用层秘钥加密数据包中的应用层数据,采用原始网络秘钥加密数据包中的网络层数据,并将加密的数据包发送给网关。由于原始应用层秘钥是智能设备特有的,因此即使加密的数据包中网络层数据被破解出来了,但也会因为没有智能设备特有的原始应用层秘钥,导致无法破解应用层数据,进而提高了无线通信的安全性。
[0159]
参阅图6,基于上述实施例提出的用于安全通信的方法,本发明实施例还对应公开了一种用于安全通信的装置600,应用于网关,用于安全通信的装置600包括:第一接收单元601以及第一发送单元602。
[0160]
第一接收单元601,用于接收智能设备发送的入网请求。其中,入网请求携带有智
能设备的地址信息。
[0161]
第一发送单元602,用于根据智能设备的地址信息,将智能设备相对应的加密网络秘钥发送给智能设备、并为智能设备分配网络地址。其中,智能设备相对应的加密网络秘钥由网关使用与智能设备相对应的哈希值对原始网络秘钥进行加密得到;智能设备相对应的哈希值由网关对智能设备发送的智能设备特有的安装码信息进行哈希运算得到。
[0162]
可选地,在本申请一具体实施例中,用于安全通信的装置600还包括:第二接收单元、分配单元、加密单元以及第二发送单元。
[0163]
第二接收单元,用于接收智能设备发送的应用层秘钥的请求信息。
[0164]
分配单元,用于为智能设备分配智能设备特有的原始应用层秘钥。
[0165]
加密单元,用于利用智能设备相对应的哈希值对智能设备特有的原始应用层秘钥进行加密,得到与智能设备相对应的加密应用层秘钥。
[0166]
第二发送单元,用于向智能设备发送与智能设备相对应的加密应用层秘钥。
[0167]
可选地,在本申请一具体实施例中,用于安全通信的装置600还包括:第三接收单元和解密单元。
[0168]
第三接收单元,用于接收智能设备发送的加密数据包。其中,加密数据包包括:由原始网络秘钥加密的网络层数据、以及由智能设备特有的原始应用层秘钥加密的应用层数据。
[0169]
解密单元,用于利用原始网络秘钥和智能设备特有的原始应用层秘钥对加密数据包进行解密。
[0170]
可选地,在本申请一具体实施例中,用于安全通信的装置600还包括:
[0171]
第一判断单元,用于根据智能设备的地址信息,判断智能设备是否具有入网权限。若第一判断单元判断出智能设备具有入网权限,则第一发送单元执行根据智能设备的地址信息,将智能设备相对应的加密网络秘钥发送给智能设备、并为智能设备分配网络地址。
[0172]
可选地,在本申请一具体实施例中,用于安全通信的装置600还包括:
[0173]
检测单元,用于按照预设的时间周期,检测与智能设备进行通信时的丢包率以及网关所处环境的环境底噪。
[0174]
第二判断单元,用于判断丢包率是否大于第一阈值以及判断环境底噪是否大于第二阈值。
[0175]
切换单元,用于若第二判断单元判断出丢包率大于第一阈值,和/或,环境底噪大于第二阈值,则切换至其他空闲信道创建网络。
[0176]
第三发送单元,用于向智能设备发送切换信道通知信息。其中,切换信道通知信息中携带有切换后的信道的标识信息。
[0177]
需要说明的是,用于安全通信的装置600可以包括处理器和存储器,第一接收单元601以及第一发送单元602等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
[0178]
处理器中可以包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或多个,通过调整内核参数来实现提高通信的安全性。
[0179]
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram),存储器包括至少一个存
储芯片。
[0180]
上述本申请实施例公开的用于安全通信的装置600中的具体的原理和执行过程,与上述本申请实施例公开的用于安全通信的方法相同,可参见上述本申请实施例公开的用于安全通信的方法中相应的部分,这里不再进行赘述。
[0181]
本申请提供的用于安全通信的装置600中,通过第一接收单元601接收入网请求;其中,入网请求携带有智能设备的地址信息。第一发送单元602根据智能设备的地址信息,将智能设备相对应的加密网络秘钥发送给智能设备、并为智能设备分配网络地址。其中,智能设备相对应的加密网络秘钥由网关使用与智能设备相对应的哈希值对原始网络秘钥进行加密得到;智能设备相对应的哈希值由网关对智能设备发送的智能设备特有的安装码信息进行哈希运算得到。由于网关采用与智能设备相对应的哈希值对原始网络秘钥进行加密,而与智能设备相对应的哈希值又是通过智能设备特有的安装码信息进行哈希运算得来的,因此加密网络秘钥的解密方式仅有对应智能设备才能知道,其他智能设备由于不知道智能设备的安装码信息,因此无法通过抓包器抓取并破解加密网络秘钥,进而提高了无线通信的安全性。
[0182]
参阅图7,基于上述实施例公开的用于安全通信的方法,本发明实施例还对应公开了一种用于安全通信的装置700,应用于智能设备,包括:第一发送单元701、第一接收单元702以及第一解密单元703。
[0183]
第一发送单元701,用于向网关发送入网请求。其中,入网请求携带有智能设备的地址信息。
[0184]
第一接收单元702,用于接收网关发送的智能设备相对应的加密网络秘钥、并得到网关分配的网络地址。其中,智能设备相对应的加密网络秘钥由网关使用与智能设备相对应的哈希值对原始网络秘钥进行加密得到;智能设备相对应的哈希值由网关对智能设备发送的智能设备特有的安装码信息进行哈希运算得到。
[0185]
第一解密单元703,用于利用与智能设备相对应的哈希值对与智能设备相对应的加密网络秘钥进行解密,得到原始网络秘钥。
[0186]
可选地,在本申请一具体实施例中,用于安全通信的装置700还包括:第二发送单元、第二接收单元以及第二解密单元。
[0187]
第二发送单元,用于向网关发送应用层秘钥的请求信息。
[0188]
第二接收单元,用于接收网关分配的与智能设备相对应的加密应用层秘钥。其中,加密应用层秘钥由网关采用智能设备相对应的哈希值对智能设备特有的原始应用层密码进行加密得到。
[0189]
第二解密单元,用于利用智能设备相对应的哈希值,对与智能设备相对应的加密应用层秘钥进行解密,得到智能设备特有的原始应用层秘钥。
[0190]
可选地,在本申请一具体实施例中,用于安全通信的装置700还包括:第一加密单元、第二加密单元和第三发送单元。
[0191]
第一加密单元,用于利用原始网络秘钥加密数据包中的网络层数据,得到加密的网络层数据。
[0192]
第二加密单元,用于利用智能设备特有的原始应用层秘钥加密数据包中的应用层数据,得到加密的应用层数据。
[0193]
第三发送单元,用于向网关发送加密的数据包。其中,加密的数据包中包括加密的网络层数据和加密的应用层数据。
[0194]
需要说明的是,用于安全通信的装置700可以包括处理器和存储器,第一发送单元701、第一接收单元702以及第一解密单元703等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
[0195]
处理器中可以包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或多个,通过调整内核参数来实现提高通信的安全性。
[0196]
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram),存储器包括至少一个存储芯片。
[0197]
上述本申请实施例公开的用于安全通信的装置700中的具体的原理和执行过程,与上述本申请实施例公开的用于安全通信的方法相同,可参见上述本申请实施例公开的用于安全通信的方法中相应的部分,这里不再进行赘述。
[0198]
本申请实施例提供的用于安全通信的装置700中,通过第一发送单元701向网关发送入网请求。其中,入网请求携带有智能设备的地址信息。又通过第一接收单元702接收网关发送的智能设备相对应的加密网络秘钥、并得到网关分配的网络地址。其中,智能设备相对应的加密网络秘钥由网关使用与智能设备相对应的哈希值对原始网络秘钥进行加密得到;智能设备相对应的哈希值由网关对智能设备发送的智能设备特有的安装码信息进行哈希运算得到。通过第一解密单元703利用与智能设备相对应的哈希值对与智能设备相对应的加密网络秘钥进行解密,得到原始网络秘钥。由于智能设备相对应的加密网络秘钥由网关使用与智能设备相对应的哈希值对原始网络秘钥进行加密得到,而智能设备相对应的哈希值由网关对智能设备发送的智能设备特有的安装码信息进行哈希运算得到,因此加密网络秘钥的解密方式仅有对应智能设备才能知道,而其他智能设备由于不知道智能设备的安装码信息,因此无法通过抓包器抓取并破解加密网络秘钥,进而提高了无线通信的安全性。
[0199]
本申请实施例提供了一种计算机可读介质,其上存储有计算机程序,其中,该程序被处理器执行时实现以上各方法实施例提供的用于安全通信的方法。
[0200]
本申请实施例提供了一种处理器,该处理器用于运行程序,其中,该程序运行时实现以上各方法实施例提供的用于安全通信的方法。
[0201]
本申请实施例提供了一种设备,该设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现以上各方法实施例提供的用于安全通信的方法。
[0202]
本申请实施例还提供了一种计算机程序产品,当在数据处理设备上执行时,使得数据处理设备实现以上各方法实施例提供的用于安全通信的方法。
[0203]
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0204]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0205]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0206]
在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
[0207]
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。存储器是计算机可读介质的示例。
[0208]
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。
[0209]
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0210]
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1