一种设备关联方法、秘钥更新方法及装置与流程

文档序号:11156473阅读:646来源:国知局
一种设备关联方法、秘钥更新方法及装置与制造工艺

本申请涉及通信领域,尤其涉及一种设备关联方法、秘钥更新方法及装置。



背景技术:

物联网(Internet of Things)是在互联网的基础上,将其用户端延伸和扩展到任何物品与物品之间,进行信息交换和通信的一种网络概念。即,物联网是一个基于互联网、传统电信网等信息承载体,让所有能够被独立寻址的普通物理对象实现互联互通的网络。它具有普通对象设备化、自治终端互联化和普适服务智能化的特征。

随着物联网技术的发展以及智能化生活的需求不断提高,智能设备逐渐被接入物联网,从而基于物联网实现对智能设备的远程监控和控制。接入物联网的智能设备可称为物联网智能设备,物联网智能设备可与物联网应用服务器进行信息交互。为了提高通信安全性,物联网智能设备与物联网应用服务器之间的通信通常需要加密。

现有技术中,物联网智能设备与物联网应用服务器之间通信所使用的秘钥通常预置在物联网智能设备以及应用服务器中,且一般不会改变,因此如果一旦泄露,则会威胁物联网智能设备与物联网应用服务器之间的通信安全。



技术实现要素:

本申请实施例提供一种设备关联方法、秘钥更新方法及装置,用以实现秘钥更新以提高通信安全性。

本申请实施例提供的设备关联方法,包括:

第一设备从应用服务器获取第二设备更新秘钥用的参数;

所述第一设备将所述第二设备更新秘钥用的参数发送给所述第二设备;

所述第一设备获取所述第二设备的设备身份标识,并向所述应用服务器发送关联请求,所述关联请求用于请求所述应用服务器将所述设备身份标识与所述第一设备进行关联。

本申请实施例提供的一种秘钥更新方法,包括:

第二设备接收第一设备发送的注册指令,所述注册指令中携带有更新私钥用的参数;

所述第二设备根据所述注册指令,使用所述参数更新所述第二设备的秘钥,并向应用服务器发起注册。

本申请实施例提供的另一种秘钥更新方法,包括:

应用服务器接收第一设备发送的参数获取请求,所述参数获取请求中包括所述第二设备的基本信息;

所述应用服务器根据所述参数获取请求向所述第一设备返回第二设备更新秘钥用的参数,以使所述第一设备指示所述第二设备根据所述更新秘钥用的参数更新所述第二设备的秘钥。

本申请实施例提供的一种第一设备,包括:

第一获取单元,用于从应用服务器获取第二设备更新秘钥用的参数;

第一发送单元,用于将所述第二设备更新秘钥用的参数发送给所述第二设备;

第二获取单元,用于获取所述第二设备的设备身份标识;

第二发送单元,用于向所述应用服务器发送关联请求,所述关联请求用于请求所述应用服务器将所述设备身份标识与所述第一设备进行关联。

本申请实施例提供的一种第二设备,包括:

接收单元,用于接收第一设备发送的注册指令,所述注册指令中携带有更新私钥用的参数;

更新单元,用于根据所述注册指令,使用所述参数更新所述第二设备的秘 钥;

注册单元,用于根据所述注册指令向应用服务器发起注册。

本申请实施例提供的一种应用服务器,包括:

接收单元,用于接收第一设备发送的参数获取请求,所述参数获取请求中包括所述第二设备的基本信息;

发送单元,用于根据所述参数获取请求向所述第一设备返回第二设备更新秘钥用的参数,以使所述第一设备指示所述第二设备根据所述更新秘钥用的参数更新所述第二设备的秘钥。

本申请的上述实施例中,第一设备可向第二设备发送更新秘钥用的参数,以使第二设备根据该参数更新该第二设备与应用服务器之间进行通信时所用的秘钥,从而实现秘钥更新,提高了第二设备与应用服务器之间通信的安全性。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例适用的网络架构的示意图;

图2为本申请实施例提供的在设备关联流程示意图;

图3a至图3f为本申请实施例提供的用户界面示意图;

图4为本申请实施例提供的第一设备的结构示意图;

图5为本申请实施例提供的第二设备的结构示意图;

图6为本申请实施例提供的应用服务器的结构示意图。

具体实施方式

为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申 请作进一步地详细描述,显然,所描述的实施例仅仅是本申请一部份实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。

本申请实施例可应用于物联网。图1示例性地示出了本申请实施例所适用的物联网架构。

如图1所示,物联网中与本申请实施例相关的网元主要涉及以下几种类型:物联网智能设备、物联网应用服务器、认证服务器、物联网应用客户端设备。其中,物联网智能设备可以通过网络与物联网应用服务器进行信息交互,以实现物联网服务器对物联网智能设备的控制;物联网应用客户端设备可以通过网络与认证服务器、物联网应用服务器进行交互,以实现登录物联网应用服务器的过程,以及通过物联网应用服务器对物联网智能设备进行控制的过程;物联网应用客户端设备还能够与物联网智能设备进行通信,以实现对物联网智能设备的控制。

上述网络架构中的物联网智能设备为广义概念的智能设备,即,具有与物联网应用服务器进行信息交互功能,能够根据物联网应用服务器发送的指令执行相应操作的设备。比如,可以是智能家居设备(如智能冰箱、智能空调、智能电视、智能冰柜等等),也可以是智能车载设备等,在此不再一一列举。

上述网络架构中的物联网应用服务器,安装有物联网应用服务器端应用程序,能够与物联网智能设备以及物联网客户端应用设备通信,实现物联网业务。优选地,物联网应用服务器可以采用云计算技术,以基于云计算技术的强大功能实现丰富的物联网业务。

上述网络架构中的物联网应用客户端设备,安装有物联网客户端应用程序,能够与物联网应用服务器交互,能够远程或者本地监控物联网智能设备。物联网应用客户端设备可以包括多种类型,比如可以是移动设备(如手机),也可以是个人计算机(PC)等。

上述网络架构中,各种网元可以通过网络进行信息交互,该网络可以是广 域网、局域网或互联网,或者采用移动通信技术的互联网。物联网智能设备可通过有线方式或无线方式接入互联网,物联网应用客户端设备也可以通过有线方式或无线方式接入互联网,物联网应用服务器以及认证服务器通常采用有线方式与互联网连接。

上述网络架构中,物联网应用客户端设备与物联网智能设备之间可以通过图中所示的网络进行通信,也可以采用其他方式进行通信,比如采用近距离通信技术进行通信,所述近距离通信技术是相对于蜂窝通信而言的,无需通过蜂窝网络中的基站进行通信,比如近距离通信技术可以采用蓝牙通信技术、红外通信技术等。

通常,物联网智能设备由设备生产商提供,而物联网应用服务器、物联网客户端应用程序以及认证服务器由物联网服务提供商提供。为了使物联网智能设备可以接入到物联网应用服务器,需要在物联网智能设备中集成物联网服务提供商提供的接入模块,这样,物联网智能设备在出厂后才能根据需要接入到物联网应用服务器。其中,物联网智能设备中集成的接入模块可以是硬件形态的装置,比如内置于物联网智能设备中实现接入功能的芯片,也可以是软件形态的应用程序,比如物联服务客户端插件程序。

本申请实施例中,与物联网智能设备相关的一些概念可包括:

-物联网智能设备的基本信息(base information)。具体地,可包括设备型号、设备种类、设备的MAC(Media Access Control,媒体访问控制)地址、设备标识(比如设备序列号)等信息中的一种或多种。物联网智能设备的基本信息可以呈现在物联网智能设备上,比如在物联网智能设备外表面上以文字形式标识该设备的型号、种类、MAC地址、序列号等;物联网智能设备的基本信息也可以以二维码形式呈现在物联网智能设备的外表面上,通过扫描该二维码并提交查询请求给网络侧服务器(如物联网应用服务器)可获取该物联网智能设备的基本信息;物联网智能设备的基本信息还可以内置在该设备中,比如存储在该设备的非易 失性存储器中。

-物联网智能设备的秘钥(secret)。物联网智能设备使用该秘钥对发送给物联网应用服务器的数据进行加密,以及对物联网应用服务器发送来的数据进行解密。物联网智能设备的秘钥可预先由物联网服务提供商分配,并内置在物联网智能设备中,比如存储在该物联网智能设备的非易失性存储器中。本申请实施例中,物联网智能设备的秘钥可以是对称秘钥(如一个字节串序列)也可以是非对称秘钥(如证书私钥)。对称密钥加密,又称私钥加密或会话密钥加密算法,即发送方和接收方使用同一个密钥去加密和解密数据。非对称密钥加密系统,又称公钥密钥加密,它需要使用不同的密钥来分别完成加密和解密操作,一个公开发布,即公开密钥,另一个由用户自己秘密保存,即私用密钥。发送方用公开密钥去加密,而接收方则用私用密钥去解密。

-物联网智能设备的设备身份标识(UUID),用于标识物联网智能设备,在物联网智能设备与物联网应用服务器的通信过程中,可将该标识作为物联网智能设备的唯一标识。一种可能情况是,物联网智能设备在物联网应用服务器上注册后,该标识由物联网应用服务器分配并发送给物联网智能设备,并保存在物联网智能设备上以及物联网应用服务器上;另一种可能情况是,物联网智能设备在出厂前已获得该设备的UUID(比如统一由物联网服务提供商分配)并烧录在该设备内。UUID可以为一个字节序列或者一本证书等。

在相关技术中,物联网智能设备的秘钥被预先设置在物联网智能设备内,且一旦设置完成,不会再改变。该物联网智能设备的注册过程中,其秘钥被上传给物联网应用服务器,这样,物联网应用服务器可以使用该秘钥对发送给该物联网智能设备的数据进行加密,以及对该物联网智能设备发送来的数据进行解密。

相关技术中,物联网智能设备需要在物联网服务器上注册并与物联网应用 客户端设备进行关联,才能实现对物联网智能设备的远程监控和控制。其中,物联网智能设备注册过程由该智能设备发起,注册并获得UUID后,将该UUID发送给物联网应用客户端设备,物联网应用客户端设备向物联网应用服务器请求将自身与该UUID关联。当然,在UUID被预先配置在物联网智能设备内部的情况下,物联网智能设备可以省略注册过程。

为了提高安全性,物联网智能设备的信息(如基本信息、秘钥等)通常被存储在物联网智能设备的安全存储区域,该区域只能由特定系统应用程序访问而无法被用户应用程序访问。但是,在物联网智能设备的生产过程中,其信息可能已经被泄露,在物联网智能设备出厂后,也会存在智能设备的信息被泄露的风险。物联网智能设备可能涉及用户的个人隐私甚至人身安全,因此一旦物联网智能设备的信息被泄露,并被非法用户所利用,则会带来严重的安全问题。

举例来说,如果物联网智能设备的基本信息被泄露,则非法的物联网客户端设备可以获得该智能设备注册得到的UUID,进而与该智能设备关联,对该智能设备进行控制;如果物联网智能设备的秘钥被泄露,则非法用户可以模拟智能设备向物联网服务器发起DOS(Denial of Service,拒绝服务)攻击。

为了提高安全性,本申请实施例提供了秘钥更新方案,并对物联网智能设备的注册过程以及关联过程进行了相应改进。下面结合附图对本申请实施例进行详细描述。

首先需要说明的是,本申请实施例提供的流程可以应用在物联网中,以应用在物联网中为例,以下各流程中,所涉及到的第一设备可以是上述网络架构中的物联网应用客户端设备,第二设备可以是上述网络架构中的物联网智能设备,应用服务器可以是上述网络架构中的物联网应用服务器。当然,本申请实施例也不仅仅应用于物联网,此种情况下,所涉及到的第一设备、第二设备和应用服务器可以根据具体应用场景的不同而进行不同的解释。

参见图2,为本申请实施例提供的设备关联流程示意图,如图所示,该流程可包括如下步骤:

步骤201:第一设备从应用服务器获取第二设备更新秘钥用的参数。

具体实施时,该步骤可包括以下过程:第一设备向应用服务器发送参数获取请求,该参数获取请求中包括第二设备的基本信息;应用服务器接收到该参数获取请求之后,获取该第二设备更新秘钥用的参数,并将该参数携带于获取响应返回给第一设备。

其中,第一设备发送的参数获取请求中携带的第二设备的基本信息中,可以包括以下信息之一或组合:第二设备的设备标识、第二设备的MAC地址、第二设备的设备型号、第二设备的设备种类等。进一步地,该参数获取请求中还可以携带第二设备的秘钥。优选地,该参数获取请求中可以仅携带第二设备的设备标识或MAC地址等能够唯一标识该第二设备的信息。

其中,从应用服务器获取第二设备更新秘钥用的参数,可以有以下几种优选方式:

方式1:应用服务器上预先设置有更新秘钥用的参数池(即参数集合),应用服务器在接收到参数获取请求后,可从该参数池中选择一个参数作为第二设备更新秘钥用的参数。在从参数池中选择参数时,可采用随机选择方式或按照预先约定的某种策略(比如轮询选择策略)来进行选择。

方式2:应用服务器上预先设置有生成更新秘钥用的参数的算法规则,应用服务器在接收到参数获取请求后,可根据该算法规则生成参数作为第二设备更新秘钥用的参数。

作为一个例子,如果第一设备发送的参数获取请求中携带有第二设备的秘钥,则应用服务器可根据预先设置的算法规则,对参数获取请求中携带的第二设备的秘钥进行运算,将运算结果作为第二设备更新秘钥用的参数。进一步地,在进行运算时,可以根据算法规则引入其他一些输入参数,比如当前时间、第二设备的MAC地址等。

方式3:应用服务器在接收到参数获取请求后,生成一个随机数作为第二设备更新秘钥用的参数。该随机数的长度可预先约定,比如一个字节长度。

需要说明的是,上述仅示例性地列举了几种优选方式,应用服务器获取第二设备更新秘钥用的参数的方式并不仅限于上述几种。

步骤202:第一设备将第二设备更新秘钥用的参数发送给该第二设备。

具体实施时,可采用以下两种方式中的一种,实现步骤202。

方式一

第一设备向第二设备发送携带有第二设备更新秘钥用的参数的注册指令,该注册指令用于指示第二设备根据该参数更新第二设备的秘钥,并向应用服务器发起注册。其中,第二设备上的该秘钥在该第二设备与应用服务器之间进行通信时使用,比如对发送给应用服务器的数据进行加密,或者对从应用服务器接收到的数据进行解密。

具体实施时,如步骤201中所述,第一设备可向应用服务器发送参数获取请求,并接收应用服务器返回的参数获取响应。当第一设备接收到应用服务器返回的参数获取响应后,即可向第二设备发送注册指令。该注册指令中携带有第二设备更新秘钥用的参数,该参数是第一设备在步骤201中获取到的。

第二设备接收到第一设备发送的注册指令后,使用该参数更新第二设备的秘钥,并向应用服务器发起注册过程,并将注册后获得的UUID发送给第一设备。

具体实施时,第二设备发起的注册过程可包括:第二设备向应用服务器发送注册请求,该注册请求中携带有第二设备的基本信息以及更新后的秘钥,或者包括第二设备的基本信息、第二设备原有的秘钥以及更新秘钥用的参数;应用服务器接收到该注册请求后,对该第二设备进行注册,为该第二设备分配UUID,并在注册成功后向该第二设备返回注册响应,该注册响应中包含该第二设备的UUID。

进一步地,应用服务器在对第二设备进行注册过程中,可以根据该注册请求中携带的更新秘钥用的参数对该第二设备的秘钥进行更新,得到新的秘钥,该新的秘钥将用来对发送给该第二设备的数据进行加密或者对从该第二设备 接收的数据进行解密。应用服务器可以根据该第二设备的新的秘钥以及该第二设备的基本信息,对所述第二设备进行注册,例如,保存该第二设备的基本信息以及新的秘钥,为该第二设备分配UUID。其中,应用服务器所采用的秘钥更新算法与该第二设备所采用的秘钥更新算法相同,以保证第二设备与应用服务器上所存储的秘钥一致。

作为一个例子,应用服务器接收到的注册请求中可包括第二设备原有的秘钥以及更新秘钥用的随机数,应用服务器根据该第二设备原有的秘钥以及该随机数,依据预设的秘钥生成算法生成新的秘钥,作为该第二设备更新后的秘钥。可选地,应用服务器上可预先存储有该第二设备原有的秘钥,这样第二设备发送的注册请求中可以不用携带第二设备原有的秘钥。

方式二

第一设备将获得到的更新秘钥用的参数携带在一般的消息中发送给第二设备,该消息不同于方式一中的注册指令,即该消息仅用于传输更新秘钥用的参数,而不包含指示第二设备发起注册的含义。

上述方式一适用于第二设备的UUID未预先预置在该第二设备内的情况,需要通过注册过程从应用服务器获取UUID;上述方式二适用于第二设备的UUID预置在该设备内的情况,无需通过注册过程获取UUID。

步骤203:第一设备获取第二设备的UUID,并向应用服务器发送关联请求,该关联请求用于请求应用服务器将该UUID与第一设备进行关联。

根据上述步骤202中的不同实现方式,步骤203中第一设备获取第二设备的UUID的过程也相应有多种方式。举例来说,如果步骤202中采用方式一,则在步骤203中,第二设备注册完成后可向第一设备返回注册响应,第一设备接收第二设备发送的注册响应,注册响应中携带有第二设备注册后得到的UUID;如果步骤202中采用方式二,则步骤203中,第一设备可扫描第二设备上的二维码,并向应用服务器发送UUID获取请求,其中携带该二维码的信息,应用服务器接收到该请求后,根据该二维码信息获取第二设备的UUID, 并向第一设备返回获取响应,第一设备接收应用服务器返回的获取响应,获得该获取响应中携带的第二设备的UUID。

在步骤204中,第一设备向应用服务器发送的关联请求中携带有该第二设备的UUID。应用服务器接收到该关联请求后,建立该UUID与该第一设备之间的对应关系,即对该UUID与该第一设备进行关联。具体地,建立该UUID与该第一设备之间的对应关系是指,将该UUID与该第一设备登录应用服务器所使用的用户账户信息(比如用户ID)建立对应关系。

进一步地,应用服务器关联操作成功后,向该第一设备返回关联成功响应消息。第一设备接收到该关联成功响应消息后,将该对应关系存储在该第一设备中。

上述图2所示的流程中,第二设备的秘钥可以是对称秘钥类型的私钥或者是非对称秘钥类型的证书私钥。可选地,更新秘钥用的参数可以是随机数或者证书私钥。第二设备和应用服务器在更新第二设备的秘钥时,在一些实施例中,可以将更新秘钥用的参数以及第二设备原有的秘钥等参数作为输入参数代入预先设置的秘钥生成函数,生成新的秘钥;在另一些实施例中,还可以将更新秘钥用的参数作为新的秘钥来替换第二设备原有的秘钥。当然,还可以采用其他方式得到第二设备的新的秘钥,在此不再一一列举。

例如,第二设备和应用服务器可采用对称秘钥加密和/或解密与对方之间传输的数据,这种情况下,第二设备的秘钥为对称秘钥类型的私钥,比如一个字节串序列,相应地,更新秘钥用的参数可以是一个随机数。这样,更新第二设备秘钥的过程为:根据该随机数和第二设备原有的对称类型秘钥计算新的对称类型秘钥,并使用新的对称类型秘钥替换该第二设备原有的对称类型秘钥。

再例如,第二设备和应用服务器采用非对称秘钥加密和/或解密与对方之间传输的数据,这种情况下,第二设备的秘钥以及更新秘钥用的参数为证书私钥。这样,更新第二设备秘钥的过程为:使用新的证书私钥更新第二设备原有的证书私钥。

通过以上描述可以看出,第一设备可向第二设备发送更新秘钥用的参数,以使第二设备根据该参数更新该第二设备与应用服务器之间进行通信时所用的秘钥,从而实现秘钥更新,提高了第二设备与应用服务器之间通信的安全性。

举例来说,如果物联网智能设备内置的秘钥被泄露,则在相关技术中,由于秘钥一旦设置则不会再更新,非法用户可以利用该秘钥模拟智能设备向物联网应用服务器发起DOS攻击;在同样场景下,若采用本发明上述实施例,则虽然物联网智能设备内置的秘钥被泄露,但是对于合法的物联网智能设备来说,在接收到物联网应用客户端设备发送的更新秘钥用的参数后需要更新秘钥,后续使用更新的秘钥与应用服务器进行通信,而对于非法的物联网智能设备来说,不会生成合法的新秘钥,自然无法与应用服务器进行通信,从而提高了安全性。

优选地,在一些实施例中,在上述图2所示流程的基础上,在步骤201之前还可包括以下步骤200(如图2中的虚线框所示):

步骤200:第一设备登录应用服务器。

具体实施时,在步骤200中,第一设备向应用服务器发送登录请求消息,其中携带有用户账户信息。应用服务器接收到该登录请求消息后,将其中携带的账户信息发送给验证服务器,由验证服务器对该账户信息进行验证,并将验证结果发送给应用服务器。如果验证结果表明验证通过,则应用服务器向该第一设备返回登录成功响应,并允许第一设备进行后续交互,比如第一设备可执行后续步骤201,否则,应用服务器拒绝该第一设备进行后续交互。

可以看出,由于第一设备需要登录应用服务器,而在登录过程中需要进行身份认证,即只有合法的第一设备才能执行后续的步骤,因此进一步提高了安全性。举例来说,如果第二设备的基本信息被泄露,则在相关技术中,非法的物联网客户端设备可以获得该智能设备注册得到的UUID,进而与该智能设备关联,对该智能设备进行控制;在同样场景下,若采用本发明上述实施例,则虽然物联网智能设备的基本信息被泄露,但是只有合法的物联网客户端设备才 能触发物联网智能设备进行注册以获得UUID,非法的物联网客户端设备由于登录应用服务器时不会验证通过,自然不会触发物联网智能设备进行注册,因而不会获得物联网智能设备的UUID。

优选地,在一些实施例中,第二设备注册完成之后,或者第一设备与第二设备的UUID关联之后,还可以由第二设备发起更新第二设备的秘钥的过程。具体地,由第二设备发起的秘钥更新过程可包括:

第二设备从应用服务器获取更新秘钥用的参数(比如,第二设备向应用服务器发送更新秘钥请求,该更新秘钥请求用于请求获取第二设备更新秘钥用的参数;应用服务器接收到该秘钥更新请求后,根据该更新秘钥请求,向该第二设备发送秘钥更新指令,其中携带有更新秘钥用的参数),第二设备在接收到该秘钥更新指令后,根据该秘钥更新指令中携带的更新秘钥用的参数更新该第二设备的秘钥,并可在更新成功后,向应用服务器发送更新成功的通知消息。进一步地,应用服务器在接收到该秘钥更新请求或者在接收到第二设备发送的表明秘钥更新成功的通知消息后,根据发送给该第二设备的更新秘钥用参数更新该第二设备的秘钥,从而保证第二设备侧和应用服务器侧保持一致的秘钥。

其中,优选地,第二设备可在以下时机从应用服务器获取更新秘钥用的参数,或向应用服务器发送秘钥更新请求:

-根据设定周期或设定时间,从应用服务器获取更新秘钥用的参数或向应用服务器发送秘钥更新请求;该周期的长度或者发送时间,可预先配置在第二设备中,或者也可以由应用服务器进行配置或修改,或者也可以由第一设备进行设置或修改(比如第一设备与该第二设备连接后,发送设置或修改周期的指令)。

-在设定事件发生时,从应用服务器获取更新秘钥用的参数或向应用服务器发送秘钥更新请求。以第二设备为智能空调为例,当智能空调检测到在短时间内向应用服务器发起频繁攻击(比如密集发送大量数据包)时,向应用服务器发送秘钥更新请求。因为这种情况有可能是因智能空调的 秘钥被泄露,并被非法用户用来模拟该智能空调向应用服务器发起DOS攻击所造成的,通过秘钥更新过程,合法的智能空调可更新得到新的秘钥,而非法智能空调则无法更新得到新的秘钥,从而避免非法智能空调对应用服务器的DOS攻击。

-在接收到的管理指令后,从应用服务器获取更新秘钥用的参数或向应用服务器发送秘钥更新请求,例如,当第二设备接收到第一设备发送的秘钥更新指令后,向应用服务器发送秘钥更新请求。

优选地,在一些实施例中,第二设备注册完成之后,或者第一设备与第二设备的UUID关联之后,还可以由第一设备发起更新第二设备的秘钥的过程。具体地,由第一设备发起的秘钥更新过程可包括:

第一设备向第二设备发送秘钥更新指令,该秘钥更新指令用于指示第二设备从应用服务器获取更新秘钥用的参数并根据从应用服务器获取到的更新秘钥用的参数更新第二设备的秘钥;第二设备接收到该秘钥更新指令后,向应用服务器发送更新秘钥请求,该更新秘钥请求用于请求获取第二设备更新秘钥用的参数;应用服务器接收到该秘钥更新请求后,根据该更新秘钥请求,向该第二设备返回秘钥更新响应,其中携带有更新秘钥用的参数;第二设备在接收到该秘钥更新响应后,根据该更新秘钥用的参数更新该第二设备的秘钥,并可在更新成功后,向应用服务器发送更新成功的通知消息。进一步地,应用服务器在接收到该秘钥更新请求或者在接收到第二设备发送的表明秘钥更新成功的通知消息后,根据发送给该第二设备的更新秘钥用参数更新该第二设备的秘钥,从而保证第二设备侧和应用服务器侧保持一致的秘钥。上述过程中,第二设备和应用服务器之间交互的信息可使用第二设备的秘钥进行加密。

其中,优选地,第一设备可以在以下时机向第二设备发送秘钥更新指令:

-根据设定周期或设定时间,向第二设备发送秘钥更新指令。该周期的长度或者发送时间,可预先约定,或者也可以由应用服务器进行配置或修改,或者也可以允许用户进行设置或修改(比如用户在第一设备提供的 用户界面上输入周期或时间,从而对该之前或时间进行设置)。

-在设定事件发生时,向第二设备发送秘钥更新指令。例如,当应用服务器在短时间内收到第二设备发送的大量数据包时,认为有可能发生攻击,因此可向与该第二设备的UUID关联的第一设备发送通知消息,用来通知第一设备向第二设备发送秘钥更新指令。

-根据获得的用户操作信息,向第二设备发送秘钥更新指令。例如,第一设备可以提供用户界面,允许用户通过该用户界面提交更新秘钥的指令。

优选地,在一些实施例中,第二设备注册完成之后,或者第一设备与第二设备的UUID关联之后,还可以由第一设备发起更新第二设备的秘钥的过程。具体地,由第一设备发起的秘钥更新过程可包括:

第一设备从应用服务器获取第二设备更新秘钥用的参数(比如,第一设备向应用服务器发送参数获取请求消息,应用服务器根据该参数获取请求消息获取第二设备更新秘钥用的参数,并通过获取响应消息返回给第一设备),第一设备获得第二设备更新秘钥用的参数后,向第二设备发送秘钥更新指令,该秘钥更新指令中携带有当前获取到的第二设备更新秘钥用的参数,第二设备根据该指令使用该秘钥更新指令中携带的参数更新第二设备的秘钥,并可在更新成功后,向第一设备发送更新成功的通知消息。进一步地,第一设备可向应用服务器发送更新成功的通知消息,应用服务器在接收到表明秘钥更新成功的通知消息后,可根据发送给该第二设备的更新秘钥用参数更新该第二设备的秘钥,从而保证第二设备侧和应用服务器侧保持一致的秘钥。

其中,优选地,第一设备从应用服务器获取第二设备更新秘钥用的参数的时机可包括以下几种:

-根据设定周期或设定时间,从应用服务器获取第二设备更新秘钥用的参数。该周期的长度或者发送时间,可预先约定,或者也可以由应用服务器进行配置或修改,或者也可以允许用户进行设置或修改(比如用户在 第一设备提供的用户界面上输入周期或时间,从而对该之前或时间进行设置)。

-在设定事件发生时,从应用服务器获取第二设备更新秘钥用的参数。例如,当应用服务器在短时间内收到第二设备发送的大量数据包时,认为有可能发生攻击,因此可向与该第二设备的UUID关联的第一设备发送通知消息。

-根据获得的用户操作信息,从应用服务器获取第二设备更新秘钥用的参数。例如,第一设备可以提供用户界面,允许用户通过该用户界面提交获取秘钥更新参数并进一步更新第二设备秘钥的指令。

优选地,在一些实施例中,第二设备注册完成之后,或者第一设备与第二设备的UUID关联之后,还可以由应用服务器发起更新第二设备的秘钥的过程。具体地,由应用服务器发起的秘钥更新过程可包括:

应用服务器向第二设备发送秘钥更新指令,该秘钥更新指令中携带有更新秘钥用的参数,该秘钥更新指令用于指示第二设备根据所述秘钥更新指令中携带的更新秘钥用参数更新所述第二设备的秘钥;第二设备接收到该秘钥更新指令后,根据该指令中携带的更新秘钥用参数,更新第二设备的秘钥,并可进一步在更新成功后向该应用服务器返回秘钥更新成功响应;应用服务器在接收到第二设备返回的秘钥更新成功响应后,根据第二设备更新秘钥用的参数更新第二设备的秘钥。

其中,优选地,应用服务器可以在以下时机向第二设备发送秘钥更新指令:

-根据设定周期或设定时间,向第二设备发送秘钥更新指令。该周期的长度或者发送时间,可预先约定,或者也可以允许用户进行设置或修改(比如用户在第一设备提供的用户界面上输入周期或时间,并将设置的周期或时间通过配置请求消息发送给应用服务器,从而对该之前或时间进行设置)。

-在设定事件发生时,向第二设备发送秘钥更新指令。例如,应用服务器 在短时间内接收到第二设备发送来的大量数据包时,可向第二设备发送秘钥更新指令。

-根据接收到的管理指令,向第二设备发送秘钥更新指令。例如,应用服务器可以提供用户界面,以供管理员身份的用户提交管理命令,从而触发该应用服务器向第二设备发送秘钥更新指令。再例如,应用服务器可接收来自于管理服务器(或管理系统)发送的管理指令,从而触发该应用服务器向第二设备发送秘钥更新指令。

优选地,在一些实施例中,第二设备注册完成之后,或者第一设备与第二设备的UUID关联之后,还可以由应用服务器发起更新第二设备的秘钥的过程。具体地,由应用服务器发起的秘钥更新过程可包括:

应用服务器向第一设备发送秘钥更新指令,该秘钥更新指令中携带有更新秘钥用的参数,该秘钥更新指令用于指示第一设备将所述秘钥更新指令中携带的更新秘钥用参数发送给第二设备以进行秘钥更新;第一设备接收到该秘钥更新指令后,向第二设备发送秘钥更新指令,其中携带更新秘钥用参数;第二设备接收到该秘钥更新指令后,用该指令中携带的参数更新第二设备的秘钥,并可进一步在更新成功后向该应用服务器返回秘钥更新成功响应或者通过第一设备向应用服务器返回秘钥更新成功响应;应用服务器在接收到第二设备的秘钥更新成功响应后,根据第二设备更新秘钥用的参数更新第二设备的秘钥。

其中,优选地,应用服务器可以在以下时机向第一设备发送秘钥更新指令:

-根据设定周期或设定时间,向第一设备发送秘钥更新指令。该周期的长度或者发送时间,可预先约定,或者也可以允许用户进行设置或修改(比如用户在第一设备提供的用户界面上输入周期或时间,并将设置的周期或时间通过配置请求消息发送给应用服务器,从而对该之前或时间进行设置)。

-在设定事件发生时,向第一设备发送秘钥更新指令。例如,应用服务器在短时间内接收到第二设备发送来的大量数据包时,可向与该第二设备 关联的第一设备发送秘钥更新指令。

-根据接收到的管理指令,向第一设备发送秘钥更新指令。例如,应用服务器可以提供用户界面,以供管理员身份的用户提交管理命令,从而触发该应用服务器向第一设备发送秘钥更新指令。再例如,应用服务器可接收来自于管理服务器(或管理系统)发送的管理指令,从而触发该应用服务器向第一设备发送秘钥更新指令。

可以看出,通过上述实施例提供的秘钥更新流程,可以定期或不定期地对第二设备的秘钥进行更新,进一步提高了通信安全性。

为了更清楚地理解上述实施例,下面结合物联网中的具体应用场景对本申请实施例进行详细描述。

在该具体应用场景中,手机上安装有名称为“智能设备管理”的应用程序(App),且该应用程序的图标显示在该手机的屏幕中,如图3a所示。

当用户点击手机屏幕上该应用程序的图标后,该应用程序被启动,“用户登录”界面呈现在屏幕上,如图3b所示,用户可在该用户登录界面上输入用户名和密码,并提交登录请求到应用服务器。应用服务器接收到登录请求后,通过认证服务器对用户账户信息进行验证,验证通过后向该手机返回登录成功响应消息。

该手机上的“智能设备管理”App接收到登录成功响应后,展示“获取智能设备信息”界面,如图3c所示,该界面可提供扫描窗口用于扫描智能设备的二维码,用户可以将智能设备上印制的二维码扫描到该窗口中,该应用程序在扫描二维码后可自动将扫描到的信息携带于参数获取请求消息发送给应用服务器。应用服务器接收到该参数获取请求消息后,根据其中携带的智能设备的二维码信息确定对应的智能设备,并生成一个随机数,将该随机数携带于参数获取响应消息发送给该手机。

在另一些实施例中,“获取智能设备信息”界面,也可以提供信息输入框,运行用户手动输入智能设备信息。

该手机上的“智能设备管理”App接收到应用服务器返回的参数获取响应后,将其中携带的随机数发送给相应的智能设备,以触发该智能设备发起注册过程。在此之前,该手机与该智能设备已经建立通信连接。可选地,该手机上的“智能设备管理”App还可以提供如图3d所示的“智能设备注册管理”界面,当用户通过该界面提交智能设备注册指令后,该App才将其中携带的随机数发送给相应的智能设备,以触发该智能设备发起注册过程。

此后的智能设备注册流程同前所述,在此不再赘述。

当该手机的“智能设备管理”App接收到应用服务器发送的智能设备注册成功的响应消息后,可展示如图3e所示的“设备关联管理”界面,当用户选择与某个智能设备关联时,该App可向应用服务器发送携带有该智能设备的UUID的关联请求,此后的关联操作可如前述实施例所述,在此不再重复。

进一步地,当需要取消与某个智能设备的关联关系时,可打开如图3e所示的该App中的“设备关联管理”界面,从已关联的智能设备中选择一个智能设备,并提交取消关联请求消息,该App可向应用服务器发送携带有该智能设备的UUID的关联取消请求消息,以使应用服务器取消该UUID与登录该手机的该App的用户账户的关联关系。

进一步地,当需要更新智能设备的秘钥时,可打开如图3f所示的“智能设备秘钥管理”界面,从已关联的智能设备中选择一个智能设备,提交秘钥更新指令,该App向该智能设备发送秘钥更新指令,此后的秘钥更新流程可如前述实施例所述,在此不再重复。

基于相同的技术构思,本申请实施例还提供了一种第一设备,该第一设备可以是物联网系统架构中的物联网应用客户端设备,相应地,以下描述中所涉及到的第二设备为物联网智能设备,所述应用服务器为物联网应用服务器。

如图4所示,该第一设备可包括:

第一获取单元41,用于从应用服务器获取第二设备更新秘钥用的参数,该参数用于第二设备更新该第二设备的秘钥,该秘钥可以为对称秘钥类型的私钥 或者非对称秘钥类型的证书私钥;

第一发送单元42,用于将所述第二设备更新秘钥用的参数发送给所述第二设备;

第二获取单元43,用于获取所述第二设备的设备身份标识;

第二发送单元44,用于向所述应用服务器发送关联请求,所述关联请求用于请求所述应用服务器将所述设备身份标识与所述第一设备进行关联。

优选地,第一获取单元41可具体用于:向所述应用服务器发送参数获取请求,所述参数获取请求中包括所述第二设备的基本信息;接收所述应用服务器根据所述参数获取请求返回的第二设备更新秘钥用的参数。

其中,所述第二设备的基本信息中包括以下信息之一或组合:第二设备的设备标识、第二设备的媒体访问控制MAC地址、第二设备的设备型号、第二设备的设备种类。

优选地,第一发送单元42可具体用于:向所述第二设备发送携带有所述参数的注册指令,所述注册指令用于指示所述第二设备根据所述参数更新与所述应用服务器通信时使用的秘钥,并向所述应用服务器发起注册;相应地,第二获取单元43可具体用于:接收所述第二设备发送的注册响应,所述注册响应中携带有所述第二设备注册后得到的设备身份标识。

优选地,第二获取单元43可具体用于:获得所述第二设备的二维码信息,并向所述应用服务器发送设备身份标识获取请求,所述设备身份标识获取请求中携带有所述第二设备的二维码信息;接收所述应用服务器返回的获取响应,所述获取响应中携带有所述应用服务器根据所述第二设备的二维码信息获取到的所述第二设备的设备身份标识。

优选地,该第一设备中还可包括更新单元45,用于向所述第二设备发送第一秘钥更新指令,所述第一秘钥更新指令用于指示所述第二设备从所述应用服务器获取更新秘钥用的参数并根据从所述应用服务器获取到的更新秘钥用的参数更新所述第二设备的秘钥;或者,该更新单元45用于从应用服务器获取 第二设备更新秘钥用的参数,向所述第二设备发送第二秘钥更新指令,所述第二秘钥更新指令中携带有当前获取到的第二设备更新秘钥用的参数,所述第二秘钥更新指令用于指示所述第二设备根据所述秘钥更新指令中携带的参数更新所述第二设备的秘钥。

其中,所述第一秘钥更新指令的发送时机或者所述第一设备从应用服务器获取第二设备更新秘钥用的参数的时机,包括:

根据设定周期或设定时间;或者,

在设定事件发生时;或者,

根据获得的用户操作信息。

优选地,该第一设备中还可包括登录单元46,用于从应用服务器获取第二设备更新秘钥用的参数之前,登录所述应用服务器。

基于相同的技术构思,本申请实施例还提供了一种第二设备,该第二设备可以是物联网系统架构中的物联网智能设备,相应地,以下描述中所涉及到的第一设备为物联网应用客户端设备,所述应用服务器为物联网应用服务器。

如图5所示,该第二设备可包括:

接收单元51,用于接收第一设备发送的注册指令,所述注册指令中携带有更新私钥用的参数;

更新单元52,用于根据所述注册指令,使用所述参数更新所述第二设备的秘钥;

注册单元53,用于根据所述注册指令向应用服务器发起注册。

优选地,所述更新私钥用的参数是所述第一设备从所述应用服务器获取到的。

优选地,注册单元53可具体用于:向所述应用服务器发送注册请求,所述注册请求中携带有所述第二设备的基本信息以及更新后的秘钥,或者包括所述第二设备的基本信息、所述第二设备原有的秘钥以及所述更新秘钥用的参数;接收所述应用服务器返回的注册响应,所述注册响应中包括所述第二设备 的设备身份标识。

优选地,更新单元52还可用于在接收所述第一设备发送的秘钥更新指令,根据所述秘钥更新指令从所述服务器获取更新秘钥用的参数;根据从所述应用服务器获取到的更新秘钥用的参数,更新所述第二设备的秘钥;或者更新单元52可用于:接收所述应用服务器发送的秘钥更新指令,根据所述应用服务器发送的秘钥更新指令中携带的更新秘钥用参数,更新所述第二设备的秘钥;或者更新单元52可用于:从所述应用服务器获取更新秘钥用的参数,根据从所述应用服务器获取到的更新秘钥用的参数,更新所述第二设备的秘钥。

其中,从所述服务器获取更新秘钥用的参数的时机,包括:

根据设定周期或设定时间;或者,

在设定事件发生时;或者,

根据获得的用户操作信息。

优选地,所述第二设备采用对称秘钥加密和/或解密与所述应用服务器之间传输的数据,所述第二设备的秘钥为对称秘钥类型的私钥;或者,所述第二设备采用非对称秘钥加密和/或解密与所述应用服务器之间传输的数据,所述第二设备的秘钥为证书私钥。

优选地,更新单元52可具体用于:根据所述更新秘钥用的参数和所述第二设备原有的秘钥计算得到新的秘钥,并使用新的秘钥替换所述第二设备原有的秘钥;或者,使用更新秘钥用的参数替换所述第二设备原有的秘钥。

基于相同的技术构思,本申请实施例还提供了一种应用服务器,该应用服务器可以是物联网系统架构中的物联网智能设备,相应地,以下描述中所涉及到的第一设备为物联网应用客户端设备,所述第二设备为物联网智能设备。

如图6所示,该应用服务器可包括:

接收单元61,用于接收第一设备发送的参数获取请求,所述参数获取请求中包括所述第二设备的基本信息;

发送单元62,用于根据所述参数获取请求向所述第一设备返回第二设备更 新秘钥用的参数,以使所述第一设备指示所述第二设备根据所述更新秘钥用的参数更新所述第二设备的秘钥。

进一步地,该应用服务器还可包括:注册处理单元63,用于在向所述第一用户设备返回第二设备更新秘钥用的参数之后,接收所述第二设备根据所述第一设备的指示发送的注册请求,所述注册请求中携带有所述第二设备的基本信息以及更新后的秘钥,或者包括所述第二设备的基本信息、所述第二设备原有的秘钥以及所述更新秘钥用的参数;根据所述注册请求对所述第二设备进行注册,并向所述第一设备返回所述第二设备的设备身份标识。

优选地,注册处理单元63可具体用于:根据所述注册请求中携带的更新秘钥用的参数对所述第二设备的秘钥进行更新,得到新的秘钥;根据所述新的秘钥以及所述第二设备的基本信息,对所述第二设备进行注册。

优选地,该应用服务器还可包括:更新单元64,用于接收所述第二设备发送的更新秘钥请求,所述更新秘钥请求用于请求获取第二设备更新秘钥用的参数;根据所述更新秘钥请求,并通过秘钥更新指令将获取到的第二设备更新秘钥用的参数发送给所述第二设备,并根据发送给所述第二设备的更新秘钥用参数更新所述第二设备的秘钥;或者,更新单元64用于:向所述第二设备发送秘钥更新指令,所述秘钥更新指令中携带有更新秘钥用的参数,所述秘钥更新指令用于指示所述第二设备根据所述秘钥更新指令中携带的更新秘钥用参数更新所述第二设备的秘钥;在接收到所述第二设备返回的秘钥更新成功响应后,根据所述第二设备更新秘钥用的参数更新所述第二设备的秘钥;或者,更新单元64用于:向所述第一设备发送秘钥更新指令,所述秘钥更新指令中携带有更新秘钥用的参数,所述秘钥更新指令用于指示所述第一设备将所述秘钥更新指令中携带的更新秘钥用参数发送给所述第二设备以更新所述第二设备的秘钥;在接收到所述第二设备的秘钥更新成功响应后,根据所述第二设备更新秘钥用的参数更新所述第二设备的秘钥。

其中,更新单元64可具体用于:根据设定周期或设定时间,发送秘钥更 新指令;或者,在设定事件发生时,发送秘钥更新指令;或者,根据接收到的管理指令,发送秘钥更新指令。

优选地,所述应用服务器采用对称秘钥加密和/或解密与所述第二设备之间传输的数据,所述第二设备的秘钥为对称秘钥类型的私钥;或者,所述应用服务器采用非对称秘钥加密和/或解密与所述应用服务器之间传输的数据,所述第二设备的秘钥为证书私钥。

优选地,更新单元64可具体用于:根据所述更新秘钥用的参数和所述第二设备原有的秘钥计算得到新的秘钥,并使用新的秘钥替换所述第二设备原有的秘钥;或者,使用更新秘钥用的参数替换所述第二设备原有的秘钥。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要 求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。

显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

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