CN112702241B - 智能设备的通信方法、系统及其装置 - Google Patents
智能设备的通信方法、系统及其装置 Download PDFInfo
- Publication number
- CN112702241B CN112702241B CN202011346969.6A CN202011346969A CN112702241B CN 112702241 B CN112702241 B CN 112702241B CN 202011346969 A CN202011346969 A CN 202011346969A CN 112702241 B CN112702241 B CN 112702241B
- Authority
- CN
- China
- Prior art keywords
- mesh
- server
- configuration information
- key
- gateway
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
- H04L12/2807—Exchanging configuration information on appliance services in a home automation network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
- H04L12/283—Processing of data at an internetworking point of a home automation network
Landscapes
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Mobile Radio Communication Systems (AREA)
- Telephonic Communication Services (AREA)
Abstract
本申请提出了一种智能设备的通信方法,包括:建立与智能设备之间的连接通道;接收服务器发送的Mesh启动配置信息,其中,Mesh启动配置信息由所述服务器通过密钥加密生成;以及通过连接通道将Mesh启动配置信息发送至智能设备,以使所述智能设备通过密钥解密以获取用于接入第一Mesh网络的所述Mesh启动配置信息。服务器可以将Mesh网关的Mesh启动配置信息加密之后发送给智能设备,智能设备对其解密之后加入Mesh网关所在的Mesh网络,从而实现该智能设备与服务器的通信,因此可以通过该服务器与其他的智能设备进行通信。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种智能设备的通信方法、系统及其装置。
背景技术
目前随着智能家居的不断普及,为了更好地对智能家居进行控制,提出了蓝牙Mesh(无线网络网格)协议,用以提高智能家居设备之间的互联互通。然而,由于不同的智能家居厂商都具有各自的云端服务,并且接入方式以及安全等级也都不同,从而造成不同智能家居厂商的通信非常困难,从而为智能家居设备的普及造成了障碍。
相关技术之中,提出了通过一种特定互联互通服务器与各个厂商的平台进行通信的方案。该方案之中,互联互通服务器作为中间服务器,与各个厂商的平台进行通信,从而实现不同厂商的设备之间的通信,因此可以打通不同厂商之间的通信通路。然而,互联互通服务器的需要跟所有厂商的平台进行连接,才能确保设备之间的连接,因此会造成系统的极端庞大,从而造成该技术应用非常困难。因此,亟需一种简便的方式实现不同厂商的设备之间的互联互通,为智能家居的普及提供基础。
发明内容
本申请提出的智能设备的通信方法、系统及其装置及存储介质,用于解决相关技术中,不同厂商的智能设备之间的通信问题。
本申请一方面实施例提出的智能设备的通信方法,包括:建立与智能设备之间的连接通道;接收服务器发送的网格Mesh启动配置信息,其中,所述Mesh启动配置信息由所述服务器通过密钥加密生成;以及通过所述连接通道将所述Mesh启动配置信息发送至所述智能设备,以使所述智能设备通过密钥解密以获取用于接入第一Mesh网络的所述Mesh启动配置信息。
本申请另一方面实施例提出的智能设备的通信方法,包括:建立与Mesh网关之间的连接通道,其中,所述Mesh网关位于第一Mesh网络;接收所述Mesh网关通过所述连接通道转发的Mesh启动配置信息,其中,所述Mesh启动配置信息由服务器通过密钥加密生成;以及通过密钥解密所述Mesh启动配置信息,并根据解密之后的Mesh启动配置信息接入所述第一Mesh网络。
本申请再一方面实施例提出的智能设备的通信方法,包括:建立与Mesh网关之间的连接,其中,所述Mesh网关位于第一Mesh网络;获取所述第一Mesh网络的Mesh启动配置信息;使用密钥对所述Mesh启动配置信息进行加密,并通过所述Mesh网关发送至智能设备,以使所述智能设备通过密钥对所述Mesh启动配置信息解密之后获取Mesh启动配置信息以接入所述第一Mesh网络。
本申请再一方面实施例提出的智能设备的通信系统,包括智能设备、Mesh网关和服务器,其中,所述智能设备与所述Mesh网关之间具有连接通道,且所述Mesh网关位于第一Mesh网络,其中,所述服务器,用于获取所述第一Mesh网络的Mesh启动配置信息,并通过密钥进行加密,以及将加密之后的所述Mesh启动配置信息发送至所述Mesh网关;所述Mesh网关,用于将加密之后的所述Mesh启动配置信息发送至所述智能设备;所述智能设备,用于接收所述Mesh网关发送的Mesh启动配置信息,并根据密钥解密所述Mesh启动配置信息,并根据解密之后的Mesh启动配置信息接入第一Mesh网络。
本申请再一方面实施例提出的Mesh网关,包括:第一连接通道建立模块,用于建立与智能设备之间的连接通道;接收模块,用于接收服务器发送的Mesh启动配置信息,其中,所述Mesh启动配置信息由所述服务器通过密钥加密生成;以及转发模块,用于通过所述连接通道将所述Mesh启动配置信息发送至所述智能设备,以使所述智能设备通过密钥对所述Mesh启动配置信息解密之后获取Mesh启动配置信息以接入所述第一Mesh网络。
本申请再一方面实施例提出的智能设备,包括:第二连接通道建立模块,用于建立与Mesh网关之间的连接通道,其中,所述Mesh网关位于第一Mesh网络;接收模块,用于接收所述Mesh网关通过所述连接通道转发的Mesh启动配置信息,其中,所述Mesh启动配置信息由服务器通过密钥加密生成;以及解密模块,用于通过密钥解密所述Mesh启动配置信息;接入模块,用于根据解密之后的Mesh启动配置信息接入所述第一Mesh网络。
本申请再一方面实施例提出的服务器,包括:连接建立模块,用于建立与Mesh网关之间的连接,其中,所述Mesh网关位于第一Mesh网络;获取模块,用于获取所述第一Mesh网络的Mesh启动配置信息;加密模块,用于使用密钥对所述Mesh启动配置信息进行加密;发送模块,用于通过所述Mesh网关将加密的所述Mesh启动配置信息发送至智能设备,以使所述智能设备通过密钥对所述Mesh启动配置信息解密之后获取Mesh启动配置信息以接入所述第一Mesh网络。
本申请再一方面实施例提出的智能设备的通信系统,包括如上所述的智能设备、如上所述的Mesh网关和如上所述的服务器。
本申请再一方面实施例提出的智能设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如上所述的方法。
本申请再一方面实施例提出的一种Mesh网关,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如上所述的方法。
本申请再一方面实施例提出的服务器,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如上所述的方法。
本申请再一方面实施例提出的一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上所述的方法。
本申请再一方面实施例提出的一种计算机程序产品,用于执行如上所述的方法。
通过本申请的实施例,通过为智能设备和服务器同步对应的密钥(例如对称密钥),从而服务器可以将Mesh网关的Mesh启动配置信息,通过密钥加密之后发送给智能设备,智能设备对其解密之后加入Mesh网关所在的Mesh网络,从而实现该智能设备与服务器的通信,因此可以通过该服务器与其他的智能设备进行通信。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本申请实施例所提供的一种智能设备的通信方法的流程示意图;
图2为本申请一个实施例之中,智能设备与服务器进行密钥同步的流程图;
图3为本申请另一个实施例的智能设备通信方法的流程图;
图4为本申请再一个实施例的智能设备通信方法的流程图;
图5为本申请一个实施例所述的智能设备的通信系统结构图;
图6为本申请一个实施例的智能设备的通信系统交互示意图;
图7为本申请一个实施例的智能设备结构图;
图8为本申请一个实施例的Mesh网关结构图;
图9为本申请一个实施例的服务器结构图;以及
图10为适于用来实现本申请实施方式的示例性智能设备的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请实施例相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请实施例的一些方面相一致的装置和方法的例子。
在本申请实施例使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请实施例。在本申请实施例和所附权利要求书中所使用的单数形式的“一种”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请实施例范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”及“若”可以被解释成为“在……时”或“当……时”或“响应于确定”。
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的要素。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
下面参考附图对本申请提供的智能设备的通信方法、系统、装置及存储介质进行详细描述。
图1为本申请实施例所提供的一种智能设备的通信方法的流程示意图。在本申请的一个实施例之中,该方法可应用于网关,特别是Mesh(网格)网关之中。其中,Mesh协议是一种蓝牙的本地协议,本地的智能设备以及Mesh网关共同构成Mesh网络,并通过Mesh网关与服务器进行通信。在本申请的一个实施例之中,智能设备可以是灯泡、家用电器或智能家居设备等。同时在本申请的另一个实施例之中,Mesh网关可以是智能终端、移动终端或智能音箱等,当然在本申请的其他实施例之中,Mesh网关还可以为其他具有网关功能的设备。在该Mesh网络之中,各个智能设备之间相互通信,并通过与Mesh网关与服务器进行通信,各个智能设备作为该Mesh网络的合法设备,接入到服务器提供的云服务之中。
在本申请的一个实施例之中,该Mesh网关与服务器可以属于同一个厂商,该Mesh网关与服务器通过厂商自身的内部通信协议进行通信。在本申请的其他实施例之中,该Mesh网关与服务器也可以属于不同的厂商,如果属于不同的厂商,则需要通过一定的安全认证流程,从而在Mesh网关与服务器之间建立安全的连接通道,通过该连接通道进行连接。在本申请的一个实施例中,Mesh网关与服务器可以通过无线网络,如WiFi或者移动通信网络等相连,当然也可以通过宽带等有线网络相连。
如图1所示,该智能设备的通信方法,包括以下步骤:
步骤110,建立与智能设备之间的连接通道。
在本申请的一个实施例之中,智能设备与Mesh网关之间建立安全的连接通道,从而可以避免信息的泄露。在其中的一些实施例之中,智能设备与Mesh网关之间通过蓝牙通信的方式建立连接通道。当然在本申请的其他实施例之中,智能设备还可以通过其他的无线或有线通信方式与Mesh网关建立该连接通道,例如WiFi或者移动通信网络等。在本申请的一些实施例之中,提出了智能设备与Mesh网关之间连接通道的建立方法,后续会详细进行描述。
在本申请的一个实施例之中,智能设备和Mesh网关可以属于同一个厂商,通过厂商的内部协议进行连接。在本申请的其他实施例之中,智能设备和Mesh网关也可以属于不同的厂商,此时需要为智能设备和Mesh网关建立安全的连接通道,保证传输信息的安全性。在本申请的实施例之中,为了实现智能设备和Mesh网关的连接,在二者属于不同厂商的情况下,为二者建立安全的连接通道,从而使得二者可以安全地传输数据。
步骤130,接收服务器发送的Mesh启动配置信息,其中,Mesh启动配置信息由服务器通过密钥(例如对称密钥)加密生成。
在本申请的一个实施例中,可以通过对称密钥进行加密/解密。当然,对称密钥只是智能设备和服务器之间进行加密/解密的多种方式之一,本申请中并不对此作出限定。
在本申请的一个实施例之中,智能设备和服务器同步有密钥(例如对称密钥),因此服务器和智能设备可以用密钥进行加密传输。此时,由于Mesh网关在第一Mesh网络之中,因此服务器之中存储有第一Mesh网络的Mesh启动配置信息(Provisioning Data)。Mesh启动配置信息用于供智能设备加入到该第一Mesh网络之中。在该实施例之中,可通过与智能设备同步的密钥对Mesh启动配置信息进行加密,从而形成加密的Mesh启动配置信息。当然,还可以采用其他的加密/解密方式。
在本申请的另一个实施例之中,Mesh网关在第一Mesh网络之中,第一Mesh网络之中的其他节点,例如多个其他的智能设备通过该第一Mesh网络以及Mesh网关与服务器进行通信。由于此时智能设备还未加入到第一Mesh网络,因此无法与服务器进行通信。需要说明的是,虽然此时智能设备与Mesh网关之间有连接通道,但是并不意味着该智能设备可以加入到该第一Mesh网络之中,智能设备与Mesh网关之间的连接通道更多的是起到直连的作用。
步骤150,通过连接通道将加密的Mesh启动配置信息发送至智能设备,以使智能设备通过密钥解密以获取用于接入第一Mesh网络的Mesh启动配置信息。
在本申请的一个实施例之中,智能设备通过密钥解密以获取用于接入第一Mesh网络的Mesh启动配置信息,就可以根据该Mesh启动配置信息第一Mesh网络。
在本申请的一个实施例之中,Mesh网关对服务器的消息透传给智能设备。在本申请的其他实施例之中,Mesh网关也可以对服务器的消息进行格式转换,并转发给智能设备。由于Mesh网关之中没有密钥(例如对称密钥),因此Mesh网关无法读取服务器发送给智能设备的数据,因此不会造成数据的泄露,具有安全保证。
在该实施例之中,Mesh网关通过连接通道将加密之后的Mesh启动配置信息发送至智能设备。该智能设备在接收到Mesh启动配置信息之后,对该Mesh启动配置信息进行解密,从而能够获得解密之后的Mesh启动配置信息。智能设备通过解密之后的Mesh启动配置信息加入到第一Mesh网络之中,从而可以实现智能设备与服务器之间的通信,进而实现该智能设备与服务器所控制的其他智能设备之间的通信(即使这些设备均不属于同一个厂商)。具体而言,在一种可能的应用之中,智能设备A和服务器之间,均属于不同的厂商,服务器控制该厂商的多个其他智能设备B,智能设备B可以存在Mesh网关所在的第一Mesh网络之中,也可以不存在,例如通过其他网关与服务器相连,或者与服务器直连。此时,服务器可与Mesh网关和其他的智能设备B进行通信,然而由于智能设备A与服务器属于不同的厂商,因此无法与服务器进行通信。在本申请之中,服务器可以将Mesh网关所属第一Mesh网络的Mesh启动配置信息,加密之后通过Mesh网关发送至智能设备A。智能设备A对Mesh启动配置信息解密之后,即可加入到第一Mesh网络之中,从而通过Mesh网关与服务器进行通信,进而与其他的智能设备B进行通信,或者直接通过服务器对其他智能设备B进行控制。因此,即使智能设备A和服务器不是同一厂商,也可以实现通信。综上,本申请实现了不同厂商设备之间的通信,解决了不同厂商的智能设备之间的通信问题。
在本申请的一个实施例之中,智能设备和Mesh网关之间的连接通道可以是暂时的,当Mesh网关检测到智能设备接入第一Mesh网络之后,断开并删除该连接通道。此时,由于智能设备已经接入到了第一Mesh网络,可以通过第一Mesh网络与Mesh网关进行通信,已无需该连接通道。因此在智能设备接入第一Mesh网络之中,可以将该连接通道删除。当然在本申请的其他实施例之中,还可以继续保留该连接通道。
如上所述,在本申请的一些实施例之中,连接通道通过蓝牙相连,即服务器和智能设备之间通过蓝牙的方式建立安全的连接通道。在本申请的其他实施例之中,还可选择其他的无线方式建立安全的连接通道,在此不再赘述。
在本申请的一个实施例之中可以用以下两种方式建立蓝牙方式连接通道。
方式一:
Mesh网关接收智能设备的连接请求,并与智能设备同步LTK(Long Term Key,长期密钥),并通过该LTK建立安全的连接通道。
方式二:
Mesh网关与智能设备进行Mesh网络的建立流程,以建立第二Mesh网络,其中,通过第二Mesh网络建立连接通道。在该实施例之中,由于Mesh网关与智能设备需要安全的连接,因此可以在Mesh网关与智能设备之间单独建立一个第二Mesh网络,该第二Mesh网络不同于第一Mesh网络。通过该第二Mesh网络也可以安全通信。
如图2所示,为本申请一个实施例之中,智能设备与服务器进行密钥(例如可以为对称密钥)同步的流程图。具体而言,密钥通过以下步骤在智能设备和服务器之间进行同步。在该实施例之中,智能设备和服务器均有自身的证书,即智能设备有智能设备证书,服务器具有服务器证书。在本申请的其他实施例之中,智能设备证书和服务器证书均通过CA(Certificate Authority,数字证书)认证中心授权获得。
步骤210,智能设备向服务器发送认证请求,其中,认证请求包括智能设备生成的第一随机数和算法参数列表。在本申请的实施例之中,算法参数列表指该智能设备所能支持的算法列表及对应的参数。其中,第一随机数为该智能设备生成的挑战随机数。
步骤230,服务器从算法参数列表之中选择目标算法参数生成第一临时密钥对。在该实施例之中,服务器根据智能设备提供的算法参数列表,从其中选择合适的参数生成第一临时密钥对。在本申请的一个实施例之中,该第一临时密钥对可为ECC(Elliptic curvecryptography,椭圆曲线加密算法)密钥对。
步骤250,服务器对第一临时密钥对之中的公钥和第一随机数进行签名以生成第一签名结果。在本申请的实施例之中,采用服务器证书对公钥和第一随机数进行签名,并生成第一签名结果。同时,服务器生成该服务器的第二随机数。同样地,在本申请的一个实施例之中,第二随机数为该服务器生成的挑战随机数。
步骤270,服务器将第一签名结果和服务器生成的第二随机数以及选择的目标算法参数发送至智能设备。
步骤290,智能设备在对第一签名结果验证完成之后,根据目标算法参数生成第二临时密钥对,并对第二临时密钥对之中的公钥和第二随机数进行签名以生成第二签名结果,并将第二签名结果发送至服务器。在本申请的一个实施例之中,该第二临时密钥对也可以为ECC密钥对。在本申请的另一个实施例之中,采用智能设备的智能设备证书进行签名。
步骤2110,服务器在对所述第二签名结果验证完成之后,与智能设备进行密钥协商以生成密钥(例如对称密钥)。在本申请的一个实施例之中,服务器与智能设备进行ECDH(Elliptic Curve Diffie–Hellman key Exchange,椭圆曲线迪菲-赫尔曼密钥交换)协商,从而确定二者同步的密钥。在本申请的实施例之中,ECDH协商为一种已知的密钥协商方法,可以安全地确定二者的密钥。
如图3所示,为本申请另一个实施例的智能设备通信方法的流程图。在本申请的一个实施例之中,该方法应用于智能设备之中。该智能设备通信方法包括以下步骤:
步骤310,建立与Mesh网关之间的连接通道,其中,Mesh网关位于第一Mesh网络。
在本申请的一个实施例之中,智能设备与Mesh网关之间建立安全的连接通道,从而可以避免信息的泄露。在其中的一些实施例之中,智能设备与Mesh网关之间可以通过蓝牙通信的方式建立连接通道。当然在本申请的其他实施例之中,智能设备还可以通过其他的无线或有线通信方式与Mesh网关建立该连接通道,例如WiFi或者移动通信网络等。在本申请的一些实施例之中,提出了通过以下方式一或方式二建立连接通道的方法。
在本申请的一个实施例之中,智能设备和Mesh网关可以属于同一个厂商,通过厂商的内部协议进行连接。在本申请的其他实施例之中,智能设备和Mesh网关也可以属于不同的厂商,此时需要为智能设备和Mesh网关建立安全的连接通道,保证传输信息的安全性。在本申请的实施例之中,为了实现智能设备和Mesh网关的连接,在二者属于不同厂商的情况下,为二者建立安全的连接通道,从而使得二者可以安全地传输数据。。
在该实施例之中,第一Mesh网络已经建立,Mesh网关为该第一Mesh网络之中与服务器进行连接的网关,第一Mesh网络之中的其他智能设备通过该Mesh网关与服务器进行通信。
步骤330,接收Mesh网关通过连接通道转发的Mesh启动配置信息,其中,Mesh启动配置信息由服务器通过密钥(例如对称密钥)加密生成。
在本申请的一个实施例之中,智能设备和服务器同步有密钥(例如对称密钥),因此服务器和智能设备可以用密钥进行加密传输。此时,由于Mesh网关在第一Mesh网络之中,因此服务器之中存储有第一Mesh网络的Mesh启动配置信息(Provisioning Data)。Mesh启动配置信息用于供智能设备加入到该第一Mesh网络之中。在该实施例之中,可通过与智能设备同步的密钥对Mesh启动配置信息进行加密,从而形成加密的Mesh启动配置信息。
在本申请的另一个实施例之中,Mesh网关在第一Mesh网络之中,第一Mesh网络之中的其他节点,例如多个其他的智能设备通过该第一Mesh网络以及Mesh网关与服务器进行通信。由于此时智能设备还未加入到第一Mesh网络,因此无法与服务器进行通信。需要说明的是,虽然此时智能设备与Mesh网关之间有连接通道,但是并不意味着该智能设备可以加入到该第一Mesh网络之中,智能设备与Mesh网关之间的连接通道更多的是起到直连的作用。
步骤350,智能设备通过密钥(例如对称密钥)解密Mesh启动配置信息,并根据解密得到的Mesh启动配置信息接入第一Mesh网络。
在本申请的一个实施例之中,Mesh网关对服务器的消息透传给智能设备。在本申请的其他实施例之中,Mesh网关也可以对服务器的消息进行格式转换,并转发给智能设备。由于Mesh网关之中没有密钥(例如对称密钥),因此Mesh网关无法读取服务器发送给智能设备的数据,因此不会造成数据的泄露,具有安全保证。
在该实施例之中,Mesh网关通过连接通道将加密之后的Mesh启动配置信息发送至智能设备。该智能设备在接收到Mesh启动配置信息之后,对该Mesh启动配置信息进行解密,从而能够获得解密之后的Mesh启动配置信息。智能设备通过解密之后的Mesh启动配置信息加入到第一Mesh网络之中,从而可以实现智能设备与服务器之间的通信,进而实现该智能设备与服务器所控制的其他智能设备之间的通信(即使这些设备均不属于同一个厂商)。具体而言,在一种可能的应用之中,智能设备A和服务器之间,均属于不同的厂商,服务器控制该厂商的多个其他智能设备B,智能设备B可以存在Mesh网关所在的第一Mesh网络之中,也可以不存在,例如通过其他网关与服务器相连,或者与服务器直连。此时,服务器可与Mesh网关和其他的智能设备B进行通信,然而由于智能设备A与服务器属于不同的厂商,因此无法与服务器进行通信。在本申请之中,服务器可以将Mesh网关所属第一Mesh网络的Mesh启动配置信息,加密之后通过Mesh网关发送至智能设备A。智能设备A对Mesh启动配置信息解密之后,即可加入到第一Mesh网络之中,从而通过Mesh网关与服务器进行通信,进而与其他的智能设备B进行通信,或者直接通过服务器对其他智能设备B进行控制。因此,即使智能设备A和服务器不是同一厂商,也可以实现通信。综上,本申请实现了不同厂商设备之间的通信,解决了不同厂商的智能设备之间的通信问题。
在本申请的一个实施例之中,智能设备和Mesh网关之间的连接通道可以是暂时的,当Mesh网关检测到智能设备接入第一Mesh网络之后,断开并删除该连接通道。此时,由于智能设备已经接入到了第一Mesh网络,可以通过第一Mesh网络与Mesh网关进行通信,已无需该连接通道。因此在智能设备接入第一Mesh网络之中,可以将该连接通道删除。当然在本申请的其他实施例之中,还可以继续保留该连接通道。
如上所述,在本申请的一些实施例之中,连接通道通过蓝牙相连,即服务器和智能设备之间通过蓝牙的方式建立安全的连接通道。在本申请的其他实施例之中,还可选择其他的无线方式建立安全的连接通道,在此不再赘述。
在本申请的一个实施例之中可以用以下两种方式建立蓝牙方式连接通道。
方式一:
Mesh网关接收智能设备的连接请求,并与智能设备同步LTK(Long Term Key,长期密钥),并通过该LTK建立安全的连接通道。
方式二:
Mesh网关与智能设备进行Mesh网络的建立流程,以建立第二Mesh网络,其中,通过第二Mesh网络建立连接通道。在该实施例之中,由于Mesh网关与智能设备需要安全的连接,因此可以在Mesh网关与智能设备之间单独建立一个第二Mesh网络,该第二Mesh网络不同于第一Mesh网络。通过该第二Mesh网络也可以安全通信。
如图4所示,为本申请再一个实施例的智能设备通信方法的流程图。在本申请的一个实施例之中,该方法应用于服务器之中。该智能设备通信方法包括以下步骤:
步骤410,建立与Mesh网关之间的连接,其中,Mesh网关位于第一Mesh网络。
在本申请的另一个实施例之中,Mesh网关在第一Mesh网络之中,第一Mesh网络之中的其他节点,例如多个其他的智能设备通过该第一Mesh网络以及Mesh网关与服务器进行通信。由于此时智能设备还未加入到第一Mesh网络,因此无法与服务器进行通信。
步骤430,获取第一Mesh网络的Mesh启动配置信息。
步骤450,使用密钥(例如对称密钥)对Mesh启动配置信息进行加密,并通过Mesh网关发送至智能设备,以使智能设备通过密钥进行解密以获取用于接入第一Mesh网络的Mesh启动配置信息。
在本申请的一个实施例之中,智能设备通过密钥解密以获取用于接入第一Mesh网络的Mesh启动配置信息,就可以根据该Mesh启动配置信息第一Mesh网络。
在本申请之中,服务器和智能设备同步有密钥(例如对称密钥),因此服务器使用该密钥对Mesh启动配置信息进行加密之后(通过Mesh网关发送至智能设备),智能设备同样地可以使用该密钥对Mesh启动配置信息进行解密,从而得到解密的Mesh启动配置信息。之后,智能设备就可以通过解密的Mesh启动配置信息加入到该第一Mesh网络之中,从而实现与服务器的通信,进而实现与服务器所管理的其他智能设备的通信。
在该实施例之中,服务器通过Mesh网关将加密之后的Mesh启动配置信息发送至智能设备。该智能设备在接收到Mesh启动配置信息之后,对该Mesh启动配置信息进行解密,从而能够获得解密之后的Mesh启动配置信息。智能设备通过解密之后的Mesh启动配置信息加入到第一Mesh网络之中,从而可以实现智能设备与服务器之间的通信,进而实现该智能设备与服务器所控制的其他智能设备之间的通信(即使这些设备均不属于同一个厂商)。具体而言,在一种可能的应用之中,智能设备A和服务器之间,均属于不同的厂商,服务器控制该厂商的多个其他智能设备B,智能设备B可以存在Mesh网关所在的第一Mesh网络之中,也可以不存在,例如通过其他网关与服务器相连,或者与服务器直连。此时,服务器可与Mesh网关和其他的智能设备B进行通信,然而由于智能设备A与服务器属于不同的厂商,因此无法与服务器进行通信。在本申请之中,服务器可以将Mesh网关所属第一Mesh网络的Mesh启动配置信息,加密之后通过Mesh网关发送至智能设备A。智能设备A对Mesh启动配置信息解密之后,即可加入到第一Mesh网络之中,从而通过Mesh网关与服务器进行通信,进而与其他的智能设备B进行通信,或者直接通过服务器对其他智能设备B进行控制。因此,即使智能设备A和服务器不是同一厂商,也可以实现通信。综上,本申请实现了不同厂商设备之间的通信,解决了不同厂商的智能设备之间的通信问题。
如图5所示,本申请一个实施例所述的智能设备的通信系统结构图。其中,该系统包括智能设备100、Mesh网关200和服务器300。其中,智能设备100与Mesh网关200之间具有连接通道400,且Mesh网关200位于第一Mesh网络500。
在本申请的一个实施例之中,服务器300用于获取第一Mesh网络500的Mesh启动配置信息,并通过密钥(例如对称密钥)对其进行加密,以及将加密之后的Mesh启动配置信息发送至Mesh网关200。Mesh网关200用于将加密之后的Mesh启动配置信息发送至智能设备100。在本申请的另一个实施例之中,Mesh网关200在第一Mesh网络500之中,第一Mesh网络500之中的其他节点,例如多个其他的智能设备通过该第一Mesh网络500以及Mesh网关200与服务器300进行通信。然而此时智能设备100还未加入到第一Mesh网络400,因此无法与服务器300进行通信。
在本申请的另一个实施例之中,智能设备100用于接收Mesh网关200发送的Mesh启动配置信息(由服务器300根据密钥(例如对称密钥)进行加密的),并根据密钥解密Mesh启动配置信息,并根据解密之后的Mesh启动配置信息接入第一Mesh网络500。
在本申请之中,服务器300和智能设备100同步有密钥(例如对称密钥),因此服务器300使用该密钥对Mesh启动配置信息进行加密之后(通过Mesh网关200发送至智能设备100),智能设备100同样地可以使用该密钥对Mesh启动配置信息进行解密,从而得到解密的Mesh启动配置信息。之后,智能设备100就可以通过解密的Mesh启动配置信息加入到该第一Mesh网络500之中,从而实现与服务器300的通信,进而实现与服务器300所管理的其他智能设备600的通信。
在该实施例之中,服务器300通过Mesh网关200将加密之后的Mesh启动配置信息发送至智能设备100。该智能设备100在接收到Mesh启动配置信息之后,对该Mesh启动配置信息进行解密,从而能够获得解密之后的Mesh启动配置信息。智能设备100通过解密之后的Mesh启动配置信息加入到第一Mesh网络500之中,从而可以实现智能设备100与服务器300之间的通信,进而实现该智能设备100与服务器300所控制的其他智能设备600之间的通信(即使这些设备均不属于同一个厂商)。
具体而言,在一种可能的应用之中,智能设备A 100和服务器300之间,均属于不同的厂商,服务器300控制该厂商的多个其他智能设备B 600,智能设备B 600可以存在Mesh网关200所在的第一Mesh网络500之中,也可以不存在,例如通过其他网关与服务器300相连,或者与服务器300直连。此时,服务器300可与Mesh网关200和其他的智能设备B 600进行通信,然而由于智能设备A 100与服务器300属于不同的厂商,因此无法与服务器进行通信。在本申请之中,服务器300可以将Mesh网关200所属第一Mesh网络500的Mesh启动配置信息,加密之后通过Mesh网关200发送至智能设备A 100。智能设备A 100对Mesh启动配置信息解密之后,即可加入到第一Mesh网络500之中,从而通过Mesh网关200与服务器300进行通信,进而与其他的智能设备B 600进行通信,或者直接通过服务器300对其他智能设备B 600进行控制。因此,即使智能设备A 100和服务器300不是同一厂商,也可以实现通信。综上,本申请实现了不同厂商设备之间的通信,解决了不同厂商的智能设备之间的通信问题。
其中,图6为本申请一个实施例的智能设备的通信系统交互示意图。在该图中,包括如下步骤:
步骤S610,智能设备100建立与Mesh网关200之间的连接通道,其中,Mesh网关200位于第一Mesh网络500。
在本申请的一个实施例之中,智能设备100与Mesh网关200之间建立安全的连接通道400,从而可以避免信息的泄露。在其中的一些实施例之中,智能设备100与Mesh网关200之间可以通过蓝牙通信的方式建立连接通道400。当然在本申请的其他实施例之中,智能设备100还可以通过其他的无线或有线通信方式与Mesh网关200建立该连接通道,例如WiFi或者移动通信网络等。在本申请的一些实施例之中,提出了通过以下方式一或方式二建立连接通道400的方法。
在本申请的一个实施例之中可以用以下两种方式建立蓝牙方式连接通道。
方式一:
Mesh网关200接收智能设备100的连接请求,并与智能设备100同步LTK(Long TermKey,长期密钥),并通过该LTK建立安全的连接通道400。
方式二:
Mesh网关200与智能设备100进行Mesh网络的建立流程,以建立第二Mesh网络,其中,通过第二Mesh网络建立连接通道400。在该实施例之中,由于Mesh网关200与智能设备100需要安全的连接,因此可以在Mesh网关200与智能设备100之间单独建立一个第二Mesh网络,该第二Mesh网络不同于第一Mesh网络。通过该第二Mesh网络也可以安全通信。
在本申请的一个实施例之中,智能设备100和Mesh网关200可以属于同一个厂商,通过厂商的内部协议进行连接。在本申请的其他实施例之中,智能设备100和Mesh网关200也可以属于不同的厂商,此时需要为智能设备100和Mesh网关200建立安全的连接通道400,保证传输信息的安全性。在本申请的实施例之中,为了实现智能设备100和Mesh网关200的安全连接,在二者属于不同厂商的情况下,为二者建立安全的连接通道400,从而使得二者可以安全地传输数据。
在该实施例之中,第一Mesh网络500已经建立,Mesh网关200为该第一Mesh网络500之中与服务器300进行连接的网关,第一Mesh网络500之中的其他智能设备通过该Mesh网关200与服务器300进行通信。
步骤S630,服务器200与智能设备100进行同步,以在二者之间同步密钥(例如对称密钥)。在本申请的一个实施例之中,服务器200和智能设备100之间,可以通过图2所示的流程图同步密钥。
步骤S650,服务器200获取第一Mesh网络500的Mesh启动配置信息,并使用密钥对Mesh启动配置信息进行加密。服务器200将加密之后的Mesh启动配置信息发送至Mesh网关200。
步骤S670,Mesh网关200将该加密的Mesh启动配置信息发送至智能设备100。
在本申请的一个实施例之中,Mesh网关200对服务器300的消息透传给智能设备100。在本申请的其他实施例之中,Mesh网关200也可以对服务器300的消息进行格式转换,并转发给智能设备100。由于Mesh网关200之中没有密钥(例如对称密钥),因此Mesh网关200无法读取服务器300发送给智能设备100的数据,因此不会造成数据的泄露,具有安全保证。
步骤S690,智能设备100接收Mesh网关通过连接通道转发的Mesh启动配置信息,并通过密钥解密Mesh启动配置信息,以及根据解密之后的Mesh启动配置信息接入第一Mesh网络500。
在本申请的一个实施例之中,智能设备100和服务器300同步有密钥(例如对称密钥),因此服务器200和智能设备100可以用密钥进行加密传输。此时,由于Mesh网关200在第一Mesh网络500之中,因此服务器300之中存储有第一Mesh网络500的Mesh启动配置信息(Provisioning Data)。Mesh启动配置信息用于供智能设备100加入到该第一Mesh网络500之中。在该实施例之中,可通过与智能设备100同步的密钥对Mesh启动配置信息进行加密,从而形成加密的Mesh启动配置信息。
在本申请的另一个实施例之中,Mesh网关200在第一Mesh网络500之中,第一Mesh网络500之中的其他节点,例如多个其他的智能设备600通过该第一Mesh网络500以及Mesh网关200与服务器300进行通信。由于此时智能设备100还未加入到第一Mesh网络500,因此无法与服务器300进行通信。需要说明的是,虽然此时智能设备100与Mesh网关200之间有连接通道400,但是并不意味着该智能设备100可以加入到该第一Mesh网络500之中,智能设备100与Mesh网关200之间的连接通道400更多的是起到直连的作用。
在该实施例之中,该智能设备100在接收到Mesh启动配置信息之后,对该Mesh启动配置信息进行解密,从而能够获得解密之后的Mesh启动配置信息。智能设备100通过解密之后的Mesh启动配置信息加入到第一Mesh网络500之中,从而可以实现智能设备100与服务器300之间的通信,进而实现该智能设备100与服务器300所控制的其他智能设备600之间的通信(即使这些设备均不属于同一个厂商)。
在本申请的一个实施例之中,提出了一种智能设备。如图7所示,为本申请一个实施例的智能设备结构图。本申请一个实施例之中的智能设备1000包括第二连接通道建立模块1100、接收模块1300、解密模块1500和接入模块1700。在本申请的实施例之中,第二连接通道建立模块1100用于建立与Mesh网关之间的连接通道,其中,Mesh网关位于第一Mesh网络。接收模块1300用于接收Mesh网关通过连接通道转发的Mesh启动配置信息,其中,Mesh启动配置信息由服务器通过密钥加密生成。智能设备1000和服务器同步该密钥。解密模块1500用于通过密钥解密Mesh启动配置信息。接入模块1700用于根据解密之后的Mesh启动配置信息接入第一Mesh网络。
在本申请的一个实施例之中,连接通道可通过蓝牙相连。在本申请的其他实施例之中,也可以通过其他的方式连接。
在本申请的一个实施例之中,第二连接通道建立模块1100向Mesh网关发送连接请求,并与Mesh网关同步LTK以建立连接通道。
在本申请的另一个实施例之中,第二连接通道建立模块1100与Mesh网关进行Mesh网络的建立流程,以建立第二Mesh网络,其中,通过第二Mesh网络建立所述连接通道。
在本申请的另一个实施例之中,智能设备1000还包括第一密钥(例如对称密钥)同步模块1900,用于与服务器进行密钥的同步。
在本申请的一个实施例之中,提出了一种Mesh网关。如图8所示,为本申请一个实施例的Mesh网关结构图。在本申请的一个实施例之中,提出了一种Mesh网关2000包括第一连接通道建立模块2100、接收模块2300和转发模块2500。在本申请的一个实施例之中,第一连接通道建立模块2100用于建立与智能设备之间的连接通道。接收模块2300用于接收服务器发送的Mesh启动配置信息,其中,该Mesh启动配置信息由服务器通过密钥加密生成。转发模块2500,用于通过连接通道将Mesh启动配置信息发送至智能设备,以使所述智能设备通过密钥解密以获取用于接入第一Mesh网络的所述Mesh启动配置信息。
在本申请的一个实施例之中,Mesh网关2000还包括连接通道删除模块2700,用于在检测到智能设备接入所述第一Mesh网络之后,断开并删除该连接通道。
在本申请的一个实施例之中,该连接通道可通过蓝牙相连,当然在本申请的其他实施例之中,也可通过其他方式相连。
在本申请的一个实施例之中,第一连接通道建立模块2100接收智能设备的连接请求,并与智能设备同步LTK以建立连接通道。
在本申请的另一个实施例之中,第一连接通道建立模块2100与智能设备进行Mesh网络的建立流程,以建立第二Mesh网络,其中,通过第二Mesh网络建立连接通道。
在本申请的一个实施例之中,提出了一种服务器。如图9所示,为本申请一个实施例的服务器结构图。在本申请的一个实施例之中,提出了一种服务器3000包括连接建立模块3100、获取模块3300、加密模块3500和发送模块3700。在本申请的一个实施例之中,连接建立模块3100用于建立与Mesh网关之间的连接,其中,Mesh网关位于第一Mesh网络。获取模块3300用于获取第一Mesh网络的Mesh启动配置信息。加密模块3500用于使用密钥对Mesh启动配置信息进行加密。发送模块3700用于通过Mesh网关将加所述Mesh启动配置信息发送至智能设备,以使智能设备通过密钥对Mesh启动配置信息解密之后获取Mesh启动配置信息以接入第一Mesh网络。
在本申请的另一个实施例之中,服务器3000还包括第二密钥同步模块3900,用于与智能设备进行密钥的同步。
在本申请的一个实施例之中,还提出了一种智能设备的通信系统,包括如上所述的智能设备1000、如上所述的Mesh网关2000和如上所述的服务器3000。当然在本申请的其他实施例之中,也可以仅包括如上所述的智能设备1000、如上所述的Mesh网关2000或如上所述的服务器3000,甚至包括二者的组合。
在本申请的一个实施例之中,还提出了一种智能设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如上所述的方法。
图10示出了适于用来实现本申请实施方式的示例性智能设备的框图。图10显示的智能设备12仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图10所示,智能设备12以通用计算设备的形式表现。智能设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(Industry StandardArchitecture;以下简称:ISA)总线,微通道体系结构(Micro Channel Architecture;以下简称:MAC)总线,增强型ISA总线、视频电子标准协会(Video Electronics StandardsAssociation;以下简称:VESA)局域总线以及外围组件互连(Peripheral ComponentInterconnection;以下简称:PCI)总线。
智能设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被智能设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(Random Access Memory;以下简称:RAM)30和/或高速缓存存储器32。计算机设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图10未显示,通常称为“硬盘驱动器”)。尽管图10中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如:光盘只读存储器(Compact Disc Read OnlyMemory;以下简称:CD-ROM)、数字多功能只读光盘(Digital Video Disc Read OnlyMemory;以下简称:DVD-ROM)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本申请各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本申请所描述的实施例中的功能和/或方法。
智能设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机系统/服务器12交互的设备通信,和/或与使得该计算机系统/服务器12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,智能设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(Local Area Network;以下简称:LAN),广域网(Wide Area Network;以下简称:WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与计算机设备12的其它模块通信。应当明白,尽管图中未示出,可以结合计算机设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现前述实施例中提及的方法。
在本申请的一个实施例之中,还提出了一种Mesh网关,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如上所述的方法。
在本申请的一个实施例之中,还提出了一种服务器,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如上所述的方法。
在本申请的一个实施例之中,还提出了一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如上所述的方法。
需要说明的是,上述实施例可以单独实施,也可以两个或多个实施例组合实施。
在本申请实施例之中,在智能设备未加入到Mesh网络之前,通过Mesh网关与智能设备建立一个连接通道,优选具有安全性能,同时智能设备和服务器同步有密钥(例如对称密钥),因此服务器和智能设备之间可以通过该密钥传输Mesh启动配置信息,从而使得该智能设备可以根据该Mesh启动配置信息加入到Mesh网络之中,从而实现智能设备与服务器的通信。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (18)
1.一种智能设备的通信方法,应用于Mesh网关,其特征在于,包括:
建立与智能设备之间的连接通道;
接收服务器发送的网格Mesh启动配置信息,其中,所述Mesh启动配置信息由所述服务器通过密钥加密生成;以及
通过所述连接通道将所述Mesh启动配置信息发送至所述智能设备,以使所述智能设备通过密钥解密以获取用于接入第一Mesh网络的所述Mesh启动配置信息,所述密钥为所述智能设备和所述服务器同步的密钥;
所述方法还包括:
所述智能设备向所述服务器发送认证请求,其中,所述认证请求包括所述智能设备生成的第一随机数和算法参数列表;
所述服务器从所述算法参数列表之中选择目标算法参数生成第一临时密钥对;
所述服务器对所述第一临时密钥对之中的公钥和所述第一随机数进行签名以生成第一签名结果;
所述服务器将所述第一签名结果和所述服务器生成的第二随机数以及选择的所述目标算法参数发送至所述智能设备;
所述智能设备在对所述第一签名结果验证完成之后,根据所述目标算法参数生成第二临时密钥对,并对所述第二临时密钥对之中的公钥和所述第二随机数进行签名以生成第二签名结果,并将所述第二签名结果发送至所述服务器;
所述服务器在对所述第二签名结果验证完成之后,与所述智能设备进行密钥协商以生成所述密钥。
2.根据权利要求1所述的方法,其特征在于,还包括:
响应于检测到所述智能设备接入所述第一Mesh网络,释放所述连接通道。
3.根据权利要求1所述的方法,其特征在于,所述连接通道通过蓝牙相连。
4.根据权利要求3所述的方法,其特征在于,所述建立与智能设备之间的连接通道,包括:
接收所述智能设备的连接请求;
与所述智能设备同步长期密钥LTK以建立所述连接通道。
5.根据权利要求3所述的方法,其特征在于,所述建立与智能设备之间的连接通道,包括:
与所述智能设备进行Mesh网络的建立流程,以建立第二Mesh网络,其中,通过所述第二Mesh网络建立所述连接通道。
6.一种智能设备的通信方法,应用于智能设备,其特征在于,包括:
建立与Mesh网关之间的连接通道,其中,所述Mesh网关位于第一Mesh网络;
接收所述Mesh网关通过所述连接通道转发的Mesh启动配置信息,其中,所述Mesh启动配置信息由服务器通过密钥加密生成;以及
通过密钥解密所述Mesh启动配置信息,并根据解密之后的Mesh启动配置信息接入所述第一Mesh网络,所述密钥为所述智能设备和所述服务器同步的密钥;
所述密钥通过以下步骤在所述智能设备和所述服务器之间进行同步;
向所述服务器发送认证请求,其中,所述认证请求包括所述智能设备生成的第一随机数和算法参数列表;
所述服务器从所述算法参数列表之中选择目标算法参数生成第一临时密钥对;
接收所述服务器发送的第一签名结果和所述服务器生成的第二随机数以及所述服务器选择的所述目标算法参数,其中,所述第一签名结果由所述服务器对所述第一临时密钥对之中的公钥和所述第一随机数进行签名生成;
在对所述第一签名结果完成验证之后,根据所述目标算法参数生成第二临时密钥对,并对所述第二临时密钥对之中的公钥和所述第二随机数进行签名以生成第二签名结果,并将所述第二签名结果发送至所述服务器;
与所述服务器进行密钥协商以生成所述密钥。
7.根据权利要求6所述的方法,其特征在于,所述连接通道通过蓝牙相连。
8.根据权利要求7所述的方法,其特征在于,所述建立与Mesh网关之间的连接通道,包括:
向所述Mesh网关发送连接请求;
与所述Mesh网关同步长期密钥LTK以建立所述连接通道。
9.根据权利要求7所述的方法,其特征在于,所述建立与Mesh网关之间的连接通道,包括:
与所述Mesh网关进行Mesh网络的建立流程,以建立第二Mesh网络,其中,通过所述第二Mesh网络建立所述连接通道。
10.一种智能设备的通信方法,应用于服务器,其特征在于,包括:
建立与Mesh网关之间的连接,其中,所述Mesh网关位于第一Mesh网络;
获取所述第一Mesh网络的Mesh启动配置信息;
使用密钥对所述Mesh启动配置信息进行加密,并通过所述Mesh网关发送至智能设备,以使所述智能设备通过密钥对所述Mesh启动配置信息解密之后获取Mesh启动配置信息以接入所述第一Mesh网络,所述密钥为所述智能设备和所述服务器同步的密钥;
所述方法还包括:
接收所述智能设备发送的认证请求,其中,所述认证请求包括所述智能设备生成的第一随机数和算法参数列表;
从所述算法参数列表之中选择目标算法参数生成第一临时密钥对;
对所述第一临时密钥对之中的公钥和所述第一随机数进行签名以生成第一签名结果;
将所述第一签名结果和所述服务器生成的第二随机数以及选择的所述目标算法参数发送至所述智能设备;
接收所述智能设备发送的第二签名结果;
在对所述第二签名结果验证完成之后,与所述智能设备进行密钥协商以生成所述密钥。
11.一种智能设备的通信系统,其特征在于,包括智能设备、Mesh网关和服务器,其中,所述智能设备与所述Mesh网关之间具有连接通道,且所述Mesh网关位于第一Mesh网络,其中,
所述服务器,用于获取所述第一Mesh网络的Mesh启动配置信息,并通过密钥进行加密,以及将加密之后的所述Mesh启动配置信息发送至所述Mesh网关;
所述Mesh网关,用于将加密之后的所述Mesh启动配置信息发送至所述智能设备;
所述智能设备,用于接收所述Mesh网关发送的Mesh启动配置信息,并根据密钥解密所述Mesh启动配置信息,并根据解密之后的Mesh启动配置信息接入第一Mesh网络,所述密钥为所述智能设备和所述服务器同步的密钥;
所述智能设备还用于向所述服务器发送认证请求,其中,所述认证请求包括所述智能设备生成的第一随机数和算法参数列表;
所述服务器还用于从所述算法参数列表之中选择目标算法参数生成第一临时密钥对;对所述第一临时密钥对之中的公钥和所述第一随机数进行签名以生成第一签名结果;将所述第一签名结果和所述服务器生成的第二随机数以及选择的所述目标算法参数发送至所述智能设备;
所述智能设备还用于在对所述第一签名结果验证完成之后,根据所述目标算法参数生成第二临时密钥对,并对所述第二临时密钥对之中的公钥和所述第二随机数进行签名以生成第二签名结果,并将所述第二签名结果发送至所述服务器;
所述服务器还用于在对所述第二签名结果验证完成之后,与所述智能设备进行密钥协商以生成所述密钥。
12.一种Mesh网关,其特征在于,包括:
第一连接通道建立模块,用于建立与智能设备之间的连接通道;
接收模块,用于接收服务器发送的Mesh启动配置信息,其中,所述Mesh启动配置信息由所述服务器通过密钥加密生成;以及
转发模块,用于通过所述连接通道将所述Mesh启动配置信息发送至所述智能设备,以使所述智能设备通过密钥解密以获取用于接入第一Mesh网络的所述Mesh启动配置信息,所述密钥为所述智能设备和所述服务器同步的密钥;
所述智能设备还用于向所述服务器发送认证请求,其中,所述认证请求包括所述智能设备生成的第一随机数和算法参数列表;
所述服务器还用于从所述算法参数列表之中选择目标算法参数生成第一临时密钥对;对所述第一临时密钥对之中的公钥和所述第一随机数进行签名以生成第一签名结果;将所述第一签名结果和所述服务器生成的第二随机数以及选择的所述目标算法参数发送至所述智能设备;
所述智能设备还用于在对所述第一签名结果验证完成之后,根据所述目标算法参数生成第二临时密钥对,并对所述第二临时密钥对之中的公钥和所述第二随机数进行签名以生成第二签名结果,并将所述第二签名结果发送至所述服务器;
所述服务器还用于在对所述第二签名结果验证完成之后,与所述智能设备进行密钥协商以生成所述密钥。
13.一种智能设备,其特征在于,包括:
第二连接通道建立模块,用于建立与Mesh网关之间的连接通道,其中,所述Mesh网关位于第一Mesh网络;
接收模块,用于接收所述Mesh网关通过所述连接通道转发的Mesh启动配置信息,其中,所述Mesh启动配置信息由服务器通过密钥加密生成;以及
解密模块,用于通过密钥解密所述Mesh启动配置信息,所述密钥为所述智能设备和所述服务器同步的密钥;
接入模块,用于根据解密之后的Mesh启动配置信息接入所述第一Mesh网络;
所述密钥通过以下步骤在所述智能设备和所述服务器之间进行同步;
向所述服务器发送认证请求,其中,所述认证请求包括所述智能设备生成的第一随机数和算法参数列表;
所述服务器从所述算法参数列表之中选择目标算法参数生成第一临时密钥对;
接收所述服务器发送的第一签名结果和所述服务器生成的第二随机数以及所述服务器选择的所述目标算法参数,其中,所述第一签名结果由所述服务器对所述第一临时密钥对之中的公钥和所述第一随机数进行签名生成;
在对所述第一签名结果完成验证之后,根据所述目标算法参数生成第二临时密钥对,并对所述第二临时密钥对之中的公钥和所述第二随机数进行签名以生成第二签名结果,并将所述第二签名结果发送至所述服务器;
与所述服务器进行密钥协商以生成所述密钥。
14.一种服务器,其特征在于,包括:
连接建立模块,用于建立与Mesh网关之间的连接,其中,所述Mesh网关位于第一Mesh网络;
获取模块,用于获取所述第一Mesh网络的Mesh启动配置信息;
加密模块,用于使用密钥对所述Mesh启动配置信息进行加密;
发送模块,用于通过所述Mesh网关将加密的所述Mesh启动配置信息发送至智能设备,以使所述智能设备通过密钥对所述Mesh启动配置信息解密之后获取Mesh启动配置信息以接入所述第一Mesh网络,所述密钥为所述智能设备和所述服务器同步的密钥;
所述服务器还用于:
接收所述智能设备发送的认证请求,其中,所述认证请求包括所述智能设备生成的第一随机数和算法参数列表;
从所述算法参数列表之中选择目标算法参数生成第一临时密钥对;
对所述第一临时密钥对之中的公钥和所述第一随机数进行签名以生成第一签名结果;
将所述第一签名结果和所述服务器生成的第二随机数以及选择的所述目标算法参数发送至所述智能设备;
接收所述智能设备发送的第二签名结果;
在对所述第二签名结果验证完成之后,与所述智能设备进行密钥协商以生成所述密钥。
15.一种智能设备,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如权利要求6-9中任一所述的方法。
16.一种Mesh网关,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如权利要求1-5中任一所述的方法。
17.一种服务器,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如权利要求10中所述的方法。
18.一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-5中任一所述的方法;或,该程序被处理器执行时实现如权利要求10中所述的方法;或,该程序被处理器执行时实现如权利要求6-9中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011346969.6A CN112702241B (zh) | 2020-11-26 | 2020-11-26 | 智能设备的通信方法、系统及其装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011346969.6A CN112702241B (zh) | 2020-11-26 | 2020-11-26 | 智能设备的通信方法、系统及其装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112702241A CN112702241A (zh) | 2021-04-23 |
CN112702241B true CN112702241B (zh) | 2023-02-28 |
Family
ID=75507063
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011346969.6A Active CN112702241B (zh) | 2020-11-26 | 2020-11-26 | 智能设备的通信方法、系统及其装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112702241B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230247421A1 (en) * | 2022-02-03 | 2023-08-03 | Uab 360 It | Enabling a secure mesh network using public keys and communication parameters of devices |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106993278A (zh) * | 2017-04-07 | 2017-07-28 | 青檬微智科技(深圳)有限公司 | 一种自动控制智能设备接入的方法、相关设备及系统 |
CN107426722A (zh) * | 2016-05-23 | 2017-12-01 | 北京京东尚科信息技术有限公司 | 接入方法、智能设备、配置服务器和认证服务器 |
CN109743705A (zh) * | 2019-01-25 | 2019-05-10 | 欧普照明股份有限公司 | 一种可穿戴设备和Mesh网络的结合方法及系统 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101394281A (zh) * | 2008-09-27 | 2009-03-25 | 上海交通大学 | 基于无线局域网的无线网状网络接入安全认证方法 |
CN102142961B (zh) * | 2010-06-30 | 2014-10-08 | 华为技术有限公司 | 一种网关、节点和服务器进行鉴权的方法、装置及系统 |
CN105050081B (zh) * | 2015-08-19 | 2017-03-22 | 腾讯科技(深圳)有限公司 | 网络接入设备接入无线网络接入点的方法、装置和系统 |
CN105338595B (zh) * | 2015-10-20 | 2018-11-20 | 广东欧珀移动通信有限公司 | 基于智能终端系统的智能终端加入方法、装置及系统 |
CN109756324A (zh) * | 2017-11-02 | 2019-05-14 | 大唐移动通信设备有限公司 | 一种Mesh网络中的密钥协商方法、终端及网关 |
-
2020
- 2020-11-26 CN CN202011346969.6A patent/CN112702241B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107426722A (zh) * | 2016-05-23 | 2017-12-01 | 北京京东尚科信息技术有限公司 | 接入方法、智能设备、配置服务器和认证服务器 |
CN106993278A (zh) * | 2017-04-07 | 2017-07-28 | 青檬微智科技(深圳)有限公司 | 一种自动控制智能设备接入的方法、相关设备及系统 |
CN109743705A (zh) * | 2019-01-25 | 2019-05-10 | 欧普照明股份有限公司 | 一种可穿戴设备和Mesh网络的结合方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN112702241A (zh) | 2021-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11765172B2 (en) | Network system for secure communication | |
US20160269176A1 (en) | Key Configuration Method, System, and Apparatus | |
US7340612B1 (en) | Method for device registration in a wireless home network | |
CN105684344B (zh) | 一种密钥配置方法和装置 | |
CN102687483B (zh) | 设备的临时注册 | |
CN110998527B (zh) | 对计算设备的远程控制 | |
WO2009131538A1 (en) | A portable system and method for remotely accessing data | |
US10764275B2 (en) | Controller, communication method, and communication system | |
CN109905348B (zh) | 端到端认证及密钥协商方法、装置及系统 | |
CN114125832B (zh) | 一种网络连接方法及终端、待配网设备、存储介质 | |
JP7497438B2 (ja) | 証明書申請方法およびデバイス | |
CN111654481B (zh) | 一种身份认证方法、装置和存储介质 | |
CN113992346A (zh) | 一种基于国密加固的安全云桌面的实现方法 | |
CN111865870A (zh) | 一种参数发送方法及装置 | |
EP2239881B1 (en) | Method for ensuring communication security in home network and apparatus for same | |
CN112702241B (zh) | 智能设备的通信方法、系统及其装置 | |
CN112751664B (zh) | 一种物联网组网方法、装置和计算机可读存储介质 | |
WO2014071885A1 (zh) | 一种信息配置方法、设备及系统 | |
CN118282778B (zh) | 多元算力底座中算力节点的密钥管理方法、数据传输方法及系统 | |
CN117729056B (zh) | 一种设备身份认证方法和系统 | |
WO2023141998A1 (zh) | 设备认证方法、装置、设备、存储介质及程序产品 | |
CN116033430A (zh) | 基于sim卡的cpe管理流通信方法、装置、设备及介质 | |
CN115242395A (zh) | 数据通信方法、装置、分布式系统及存储介质 | |
CN115361116A (zh) | 公开环境中秘钥分发的方法、验证方法及相关设备 | |
CN115361134A (zh) | 基于鸿蒙系统的终端身份认证方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |