设备替换的方法、调试工具、硬件设备和装置与流程

文档序号:33321467发布日期:2023-03-03 20:53阅读:57来源:国知局
设备替换的方法、调试工具、硬件设备和装置与流程

1.本技术涉及物联网(intemet of things,iot)领域,并且更为具体地,涉及一种设备替换的方法、调试工具、硬件设备和装置。


背景技术:

2.iot是随着信息技术的发展和传感器技术发展,通过部署具有一定感知、计算、执行和通信等能力的各种设备,获得物理世界的信息,通过网络实现信息的传输、协同和处理,从而实现人与物通信、物与物通信的互连的网络,从而为社会生活带来了便捷的生活方式和工作方式。
3.如今,越来越多的设备接入iot系统。通常,注册器(registrar)用于决定是否允许一个新的设备接入iot系统。在某些情况下,registrar可能出现不可用的情况。若registrar不可用,它会阻止系新的设备接入iot系统,这可能会带来比较严重的麻烦。比如,iot系统中的某个设备发生损坏,需要更换新的设备,但由于registrar不可用新的设备却接入不到iot系统中。


技术实现要素:

4.本技术提供了一种设备替换的方法、调试工具、硬件设备和装置,在物联网系统中某个设备发生损坏的情况下,能够有效保证物联网系统的通信的正常进行。
5.第一方面,提供了一种设备替换的方法,包括:调试工具获取第一设备的第一证书和第一私有密钥,所述第一私有密钥为硬件设备采用第二设备的公共密钥对所述第一设备的私有密钥加密得到的,所述硬件设备用于对密钥进行加密和解密,所述第二设备为所述第一设备的替换设备,所述第一证书用于在所述第二设备替换所述第一设备之前所述第一设备接入物联网系统;所述调试工具向所述第二设备发送所述第一私有密钥和所述第一证书,所述第一私有密钥用于所述第二设备获取所述第一设备的私有密钥,所述第一设备的私有密钥和所述第一证书用于所述第二设备替换所述第一设备。
6.上述技术方案,在第二设备需要替换第一设备的情况下,调试工具获取到第一设备的第一证书和第一私有密钥后,向第二设备转发第一证书和第一私钥,这样,第二设备就可以基于第一私钥获取到第一设备的私钥,并基于第一设备的私钥和第一设备的第一证书替换第一设备。由于上述技术方案不需要为第二设备颁发证书,也就不用重新为第二设备配置序列号等参数,使得可以在较短的时间内实现第二设备替换第一设备的目的,有效提高了处理速度。
7.进一步地,通过引入用于对密钥(如第一设备的私钥)执行加密和解密操作的硬件设备,保证了第一设备的私钥的安全性。
8.在一些可能的实现方式中,所述方法还包括:所述调试工具获取第二私有密钥和所述第二设备的第二证书,所述第二证书为制造商为所述第二设备颁发的证书且包括所述第二设备的公共密钥,所述第二私有密钥是所述第一设备采用所述硬件设备的公共密钥对
所述第一设备的私有密钥加密得到的;所述调试工具向所述硬件设备发送所述第二私有密钥和所述第二证书;所述调试获取第一私有密钥,包括:所述调试工具接收所述硬件设备发送的所述第一私有密钥。
9.上述技术方案,第一设备采用硬件设备的公钥对自身的私钥进行加密,由于用于对第一设备的私钥解密的硬件设备的私钥仅存储在硬件设备中,其他设备无法从硬件设备中获取到硬件设备的私钥,从而能够提高第一设备的私钥的安全性,防止恶意设备的攻击。此外,第二设备的第二证书中包括第二设备的公共密钥,调试工具将第二证书发送给硬件设备,便于硬件设备后续可以采用第二证书中的第二设备的公共密钥对第一设备的私钥进行加密,如此第一设备的私钥只有第二设备能够进行解密,进一步保证了第一设备的私钥的安全性。
10.在一些可能的实现方式中,所述调试工具获取第二私有密钥,包括:所述调试工具接收所述第一设备发送的第二私有密钥;所述调试工具存储所述第二私有密钥。
11.在一些可能的实现方式中,所述调试工具获取所述第一设备的第二证书,包括:所述调试工具建立与所述第二设备之间的传输层安全性tls连接;所述调试工具通过所述tls连接,接收所述第二设备发送的所述第二证书。
12.在一些可能的实现方式中,所述方法还包括:所述调试工具根据所述第一设备的属性信息和所述第二设备的属性信息,建立所述映射关系,所述属性信息包括序列号和/或媒体接入控制mac地址;所述调试工具根据所述映射关系,对所述第二证书进行验证。
13.上述技术方案,在调试工具接收到第二证书后,根据第一设备和第二设备之间的映射关系对第二证书进行验证,能够防止恶意设备对第二证书的篡改,有效保证了第二证书的准确性。
14.进一步地,由于设备的序列号和mac地址可以是最能体现设备身份的参数,因此,根据序列号和/或mac地址确定的第一设备和第二设备之间的映射关系可以有效地与其他设备进行区分。进一步地,通过建立映射关系,这样调试工具就可以基于映射关系与第二设备进行通信,避免了除了第二设备之外的设备也获取到第一设备的私钥和第一证书问题,保证了第一设备的私钥和第一证书的安全性。
15.在一些可能的实现方式中,所述方法还包括:所述调试工具接收所述硬件设备发送的所述硬件设备的公共密钥;所述调试工具向所述第一设备发送所述硬件设备的公共密钥。
16.在一些可能的实现方式中,所述第一证书为注册器在可用的情况下为所述第一设备颁发的证书;所述调试工具获取第一设备的第一证书,包括:所述调试工具接收所述注册器发送的所述第一证书;所述调试工具存储所述第一证书;所述调试工具获取第一私有密钥,包括:当所述注册器不可用时,所述调试工具获取所述第一私有密钥。
17.由于注册器决定是否允许新的设备加入物联网系统,设备只有获取到注册器为其颁发的证书才能加入物联网系统,在注册器不可用的情况下,若使用其它装置如调试工具代替注册器为新的设备颁发证书,那么用于代替注册器的装置就需要得到注册器的密钥,这是极其不安全的。上述技术方案,在注册器不可用的情况下,调试工具获取用于第二设备替换第一设备所需的第一证书和第一私钥,这样就不用其它装置代替注册器为第二设备颁发证书,避免了其他设备为了颁发第二设备的证书而获取到注册器的私钥的问题,保证了
注册器的私钥只保存在注册器中,很大程度上提高了整个系统的安全性。
18.第二方面,提供了一种设备替换的方法,包括:硬件设备接收调试工具发送的第二私有密钥,所述第二私有密钥是所述第一设备采用所述硬件设备的公共密钥对所述第一设备的私有密钥加密得到的;所述硬件设备采用所述硬件设备的私有密钥对所述第二私有密钥进行解密,得到所述第一设备的私有密钥;所述硬件设备采用第二设备的公共密钥对所述第一设备的私有密钥进行加密,得到第一私有密钥,所述第二设备为所述第一设备的替换设备;所述硬件设备向所述调试工具发送所述第一私有密钥,所述第一私有密钥用于所述第二设备获取所述第一设备的私有密钥。
19.上述技术方案,在第一设备需要替换为第二设备的情况下,通过引入硬件设备,并利用硬件设备自身生成的公钥和私钥实现对第一设备的私钥的加密和解密。由于用于解密的硬件设备的私钥仅存储在硬件设备中,其他设备无法从硬件设备中提取出硬件设备的私钥,有利于提高第一设备的私钥的安全性,防止恶意设备的攻击。进一步地,硬件设备采用第二证书中的第二设备的公钥对第一设备的私钥进行加密,如此第一设备的私钥只有第二设备能够进行解密,进一步保证了第一设备的私钥的安全性。
20.在一些可能的实现方式中,所述方法还包括:所述硬件设备接收所述调试工具发送的所述第二设备的第二证书,所述第二证书为制造商为所述第二设备颁发的证书且包括所述第二设备的公共密钥。
21.在一些可能的实现方式中,所述方法还包括:所述硬件设备向所述调试工具发送所述硬件设备的公共密钥。
22.第三方面,提供了一种设备替换的方法,包括:第二设备获取第一设备的第一证书和所述第一设备的私有密钥,所述第一证书用于在所述第二设备替换所述第一设备之前所述第一设备接入物联网系统;所述第二设备基于所述第一证书和所述第一设备的私有密钥,替换所述第一设备。
23.上述技术方案,在第二设备需要替换第一设备的情况下,第二设备获取到第一证书和第一私钥后就可以基于第一设备的私钥和第一设备的第一证书替换第一设备,不需要注册器为其颁发证书,也不需要为其配置序列号等参数,使得可以在较短的时间内实现替换第一设备的目的,有效提高了处理速度。
24.在一些可能的实现方式中,所述第二设备获取所述第一设备的私有密钥,包括:所述第二设备接收调试工具发送的第一私有密钥,所述第一私有密钥为硬件设备采用第二设备的公共密钥对所述第一设备的私有密钥加密得到的;所述第二设备采用所述第二设备的私有密钥对所述第一私有密钥进行解密,得到所述第二设备的私有密钥。
25.在一些可能的实现方式中,所述方法还包括:所述第二设备通过传输层安全性tls连接,向调试工具发送所述第二设备的第二证书,所述第二证书制造商为所述第二设备颁发的证书且包括所述第二设备的公共密钥。
26.在一些可能的实现方式中,第一证书为注册器在可用的情况下为所述第一设备颁发的证书;所述第二设备获取第一设备的第一证书,包括:当所述注册器不可用时,所述第二设备接收调试工具发送的所述第一证书。
27.由于注册器决定是否允许新的设备加入物联网系统,设备只有获取到注册器为其颁发的证书才能加入物联网系统,在注册器不可用的情况下,若使用其它装置如调试工具
代替注册器为新的设备颁发证书,那么用于代替注册器的装置就需要得到注册器的密钥,这是极其不安全的。上述技术方案,在注册器不可用的情况下,第二设备通过获取第一设备的私钥和第一证书就能替换第一设备,不用其它装置代替注册器为第二设备颁发证书,很大程度上提高了整个系统的安全性。
28.第四方面,提供了一种设备替换的方法,包括:第一设备获取硬件设备的公共密钥;所述第一设备采用所述硬件设备的公共密钥对所述第一设备的私有密钥进行加密,得到第二私有密钥;所述第一设备向调试工具发送所述第二私有密钥和所述第一设备的第一证书,所述第一证书用于在第二设备替换所述第一设备之前所述第一设备接入物联网系统且用于所述第二设备替换所述第一设备。
29.第五方面,提供了一种调试工具,包括用于执行上述第一方面或其各实现方式中的方法的各单元。
30.第六方面,提供了一种硬件设备,包括用于执行上述第二方面或其各实现方式中的方法的各单元。
31.第七方面,提供了一种设备替换的装置,包括用于执行上述第三方面或其各实现方式中的方法的各单元。
32.第八方面,提供了一种设备替换的装置,包括用于执行上述第四方面或其各实现方式中的方法的各单元。
33.第九方面,提供了一种调试工具,包括:存储器,用于存储程序;处理器,用于执行所述存储器存储的程序,当所述存储器存储的程序被执行时,所述处理器用于执行上述第一方面或其各实现方式中的方法。
34.第十方面,提供了一种硬件设备,包括:存储器,用于存储程序;处理器,用于执行所述存储器存储的程序,当所述存储器存储的程序被执行时,所述处理器用于执行上述第二方面或其各实现方式中的方法。
35.第十一方面,提供了一种设备替换的装置,包括:存储器,用于存储程序;处理器,用于执行所述存储器存储的程序,当所述存储器存储的程序被执行时,所述处理器用于执行上述第三方面或其各实现方式中的方法。
36.第十二方面,提供了一种设备替换的装置,包括:存储器,用于存储程序;处理器,用于执行所述存储器存储的程序,当所述存储器存储的程序被执行时,所述处理器用于执行上述第四方面或其各实现方式中的方法。
附图说明
37.图1是registrar可用的情况下设备加入系统的示意性流程图。
38.图2是本技术实施例的一种设备替换的方法的示意性图。
39.图3是本技术实施例的另一种设备替换的方法的示意性图。
40.图4是本技术实施例的再一种设备替换的方法的示意性图。
41.图5是本技术实施例的再一种设备替换的方法的示意性图。
42.图6是本技术实施例的一种设备替换的方法的示意性流程图。
43.图7是本技术实施例的调试工具的示意性框图。
44.图8是本技术实施例的硬件设备的示意性框图。
45.图9是本技术实施例的设备替换的装置的示意性框图。
46.图10是本技术实施例的设备替换的装置的示意性框图。
47.图11是本技术实施例的装置的示意性框图。
48.附图标记列表:
49.a;设备a;
50.c:调试工具;
51.r:registrar;
52.110-180,方法100的步骤;
53.210,调试工具获取第一设备的第一证书和第一私钥;
54.220,调试工具向第二设备发送第一私钥和第一证书;
55.310,硬件设备接收调试工具发送的第二私有密钥;
56.320,硬件设备采用硬件设备的私钥对第二私钥进行解密,得到第一设备的私钥;
57.330,硬件设备采用第二设备的公钥对第一设备的私钥进行加密,得到第一私钥;
58.340,硬件设备向调试工具发送第一私钥;
59.410,第二设备获取第一设备的第一证书和第一设备的私钥;
60.420,第二设备基于第一证书和第一设备的私钥,替换第一设备;
61.510,第一设备获取硬件设备的公共密钥;
62.520,第一设备采用硬件设备的公共密钥对第一设备的私有密钥进行加密,得到第二私有密钥;
63.530,第一设备向调试工具发送第二私有密钥和第一设备的第一证书。
64.x,第二设备;
65.h:硬件设备;
66.601-623,方法600的步骤;
67.700,调试工具;
68.710,获取单元;
69.720,通信单元;
70.800,硬件设备;
71.810,通信单元;
72.820,解密单元;
73.830,加密单元;
74.900,设备替换的装置;
75.910,获取单元;
76.920,处理单元;
77.1000,设备替换的装置;
78.1010,获取单元;
79.1020,加密单元;
80.1030,通信单元;
81.1100,装置;
82.1101,存储器;
83.1102,处理器;
84.1103,通信接口;
85.1104,总线。
具体实施方式
86.下面结合附图,对本技术实施例中的技术方案进行描述。应理解,本说明书中的具体的例子只是为了帮助本领域技术人员更好地理解本技术实施例,而非限制本技术实施例的范围。
87.应理解,在本技术的各种实施例中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本技术实施例的实施过程构成任何限定。
88.还应理解,本说明书中描述的各种实施方式,既可以单独实施,也可以组合实施,本技术实施例对此不作限定。
89.除非另有说明,本技术实施例所使用的所有技术和科学术语与本技术的技术领域的技术人员通常理解的含义相同。本技术中所使用的术语只是为了描述具体的实施例的目的,不是旨在限制本技术的范围。
90.iot是一个基于互联网、传统电信网络等信息承载体,让所有能够被独立寻址的普通物理对象实现会联互通的网络。随着iot的深入发展,各类种类繁多的iot设备开始接入iot系统。
91.其中,iot设备可以为射频识别设备、传感器、全球定位系统设备、激光扫描器、智能家居设备、商业建筑设备等。当iot设备为商业建筑设备时,iot设备可以包括但不限于照明设备、温控器、调光器等,本技术实施例将其统称为fa-设备。后文将以iot设备为fa-设备为例描述本技术实施例,此时,iot系统可以称为fa-系统。但应理解,本技术实施例并不限于此。
92.fa-设备还可以具有至少一种网络接口,比如以太网接口或无线局域网接口。进一步地,fa-设备还可以具有互联网联网能力以与其它设备进行通信,比如可以基于上述的网络接口与其它设备进行通信。
93.注册器(registrar)决定是否允许fa-设备接入fa-系统。若允许fa-设备接入fa-设备接入fa-系统,则registrar可以向该fa-设备颁发数字证书(后文简称为证书)。
94.由于fa-设备无法自行接入fa-系统,因此,fa-设备可以通过调试工具(commissioning tool)接入fa-系统。示例性地,调试工具可以为个人电脑、掌上电脑、平板电脑、智能终端或个人数字助理(personal digital assistant,pda)等。调试工具可以充当fa-设备和registrar之间的中介,比如,将fa-设备发送的注册请求转发给registrar,再比如,将registrar为fa-设备颁发的证书转发给fa-设备。
95.图1示出了fairhair标准中一种可能的fa-设备接入fa-系统的方法100的示意性流程图。在图1中,fa-设备为设备a。
96.在110中,由于设备a不能主动发送注册请求,因此,调试工具向设备a发送第一注册请求消息,该第一注册请求消息用于指示设备a请求接入fa-系统。
97.在120中,设备a接收到了第一注册请求消息后,生成包括公共密钥(public key,
简称为公钥)和私有密钥(private key,简称为私钥)的密钥对。
98.其中,私钥为设备a自身保存的密钥,公钥为可以向其他设备公开的密钥,例如,设备a可以通过蓝牙广播其生成的公钥。或者,设备a可以基于以太网接口或无线局域网接口运行网页浏览器,在网页中展示公钥。
99.设备a生成的密钥对也可以称为本地设备标识符(locally device identifier,ldevid)密钥对。例如,若设备a处于某栋楼中,则ldevid为设备a在这栋楼中的标识符,即ldevid可以为这栋楼的管理者对设备a提供的身份证明。
100.与ldevid对应的是初始设备标识符(initial device identity,idevid),idevid是fa-设备制造商对fa-设备唯一身份的声明,idevid主题字段可以包括带有fa-设备唯一序列号(serialnumber)的属性。也就是说,idevid是fa-设备(例如设备a)在出厂时制造商设备为该fa-设备提供的标识。可以看出,ldevid与idevid之间的主要区别是标识符的提供者不同。
101.在130中,设备a向调试工具发送第二注册请求消息。
102.该第二注册请求消息可以作为对第一注册请求消息的响应,用于指示设备a请求接入fa-系统。
103.在140中,调试工具将第二注册请求消息转发给registrar。
104.在150中,registrar为设备a颁发数字证书(简称为证书)。
105.其中,设备a的证书中可以包括设备a的公钥信息(subject public key info)、设备a的名称(subject)以及registrar的签名(signature)。公钥信息可以包括设备a的公钥和公钥算法信息,registrar的签名为registrar使用其自身的私钥对证书的签名。
106.此外,设备a的证书还可以包括设备a的序列号(serial number)、registrar的名称(issuer)、证书的有效期(validity)等信息。
107.在registrar为设备a颁发证书之前,registrar可以验证该第二注册请求消息,以验证第二注册请求消息是否为设备a发送的。若第二注册请求消息是设备a发送的,则registrar为设备a颁发证书。
108.其中,第二注册请求消息中可以包括设备a生成的公钥,registrar可以将第二注册请求消息中的公钥和获取到的设备a的公钥进行比较,若第二注册请求消息中的公钥与获取到的设备a的公钥相同,则registrar为设备a颁发证书。
109.进一步地,第二注册请求消息还可以包括设备a的标识信息,registrar可以根据a的标识信息确定第二注册请求消息是设备a发送的,之后,registrar为设备a颁发证书。
110.在160中,registrar向调试工具发送第一注册请求响应消息,第一注册响应消息中包括registrar为设备a颁发的证书。
111.在170中,调试工具接收到第一注册请求响应消息后,向设备a转发该第一注册请求响应消息。
112.在180中,设备a接收到第一注册请求响应消息后,基于第一注册请求响应消息中的证书接入fa-系统。
113.在图1所示的fa-设备接入fa-系统的流程中,可以看出,fa-设备要接入fa-系统,需要registrar为其颁发证书。但在有些情况下,可能会出现registrar不可用的情况。如果registrar不可用,则新的fa-设备就不可能接入fa-系统中,这可能会带来比较严重的麻
烦。比如,fa-系统中的某个设备(如图1中的设备a)发生损坏,需要更换新的设备,但由于registrar不可用,新的设备却接入不到fa-系统中。
114.基于此,本技术实施例提出了一种设备替换的方法,在fa-系统中某个设备发生损坏的情况下,能够在较短的时间内用新的设备替换损坏了的设备,从而保证fa-系统中通信的正常进行。
115.其中,本技术实施例的设备替换的方法可以应用于但不限于fairhair标准中。
116.图2示出了本技术实施例的设备替换的方法200的示意性流程图。方法200可以由调试工具执行,调试工具可以是图1中的调试工具。方法200可以包括以下内容中的至少部分内容。
117.在210中,获取第一设备的第一证书和第一私钥,该第一私钥为硬件设备采用第二设备的公钥对第一设备的私钥加密得到的,第二设备为第一设备的替换设备,第一证书用于在第二设备替换第一设备之前第一设备接入物联网系统。
118.在220中,向第二设备发送第一私钥和第一证书,第一私钥用于第二设备获取第一设备的私钥,第一设备的私钥和第一证书用于第二设备替换第一设备。
119.图3示出了本技术实施例的设备替换的方法300的示意性流程图。方法300可以由硬件设备执行,可以包括以下内容中的至少部分内容。
120.在310中,接收调试工具发送的第二私钥,第二私钥是第一设备采用硬件设备的公钥对第一设备的私钥加密得到的。
121.在320中,采用硬件设备的私钥对第二私钥进行解密,得到第一设备的私钥。
122.在330中,硬件设备采用第二设备的公钥对第一设备的私钥进行加密,得到第一私钥,第二设备为第一设备的替换设备。
123.在340中,向调试工具发送第一私钥,第一私钥用于第二设备获取第一设备的私钥。
124.图4示出了本技术实施例的设备替换的方法400的示意性流程图。方法400可以由第二设备执行,第二设备为第一设备的替换设备。方法400可以包括以下内容中的至少部分内容。
125.在410中,第二设备获取第一设备的第一证书和第一设备的私钥,第一证书用于在第二设备替换第一设备之前第一设备接入物联网系统。
126.在420中,第二设备基于第一证书和第一设备的私钥,替换第一设备。
127.图5出了本技术实施例的设备替换的方法500的示意性流程图。方法500可以由第以设备执行。方法500可以包括以下内容中的至少部分内容。
128.在510中,第一设备获取硬件设备的公共密钥。
129.在520中,第一设备采用硬件设备的公共密钥对第一设备的私有密钥进行加密,得到第二私有密钥。
130.在530中,第一设备向调试工具发送第二私有密钥和第一设备的第一证书,第一证书用于在第二设备替换第一设备之前第一设备接入物联网系统且用于第二设备替换第一设备。
131.下面将结合图2-图5进一步描述本技术实施例的设备替换的方法。应理解,实施例中多从调试工具侧角度描述,可以理解,y从r接收,意味着r进行了发送,比如,硬件设备从
调试工具接收第二私钥,意味着调试工具向硬件设备发送了第二私钥。
132.图2-图5中的第一设备可以为图1中的设备a,第一设备发生损坏需要更换。比如,若第一设备为空调,空调不能制冷或不能制热;再比如,若第一设备为照明设备,照明设备的保险丝由于过热而融化,使得照明设备发不了光。
133.本技术实施例的硬件设备可以用于对密钥进行加密和解密,比如可以用于对第二私钥进行解密,再比如可以用于对第一设备的私钥进行加密。
134.可选地,用于解密的硬件设备的私钥可以仅存储在硬件设备中,其他设备无法从硬件设备中提取出硬件设备的私钥。
135.可选地,硬件设备可以插在调试工具上,硬件设备例如可以为通用串行总线接口的闪存盘(universal serial bus flash disk,简称u盘),或者,可以为与u盘类似的设备。
136.可选地,在图2-图5中,registrar不可用,例如,registrar发生损坏,或者,当前范围内的设备已全部接入fa-系统,registrar认为自身的任务已完成,从而处于休眠状态。
137.由于registrar决定是否允许新的fa-设备加入fa-系统,新的fa-设备只有得到registrar为其颁发的证书才能加入fa-系统,在registrar不可用的情况下若使用其它装置如调试工具代替registrar为新的fa-设备颁发证书,那么用于代替registrar的装置就需要得到注册器的密钥,这是极其不安全的。
138.上述技术方案,在registrar不可用的情况下,第二设备通过获取第一设备的私钥和第一证书就能替换第一设备,不用其它装置代替注册器为第二设备颁发证书,避免了其他设备为了颁发第二设备的证书而获取到registrar的私钥的问题,保证了registrar的私钥只保存在registrar中,很大程度上提高了整个系统的安全性。
139.第一证书可以是第一设备未损坏前且registrar在可用的情况下,registrar为第一设备颁发的,第一设备可以通过第一证书加入fa-系统。比如,第一证书可以是ldevid证书。第一证书可以包括第一设备的公钥信息、第一设备的名称以及registrar的签名。此外,第一证书还可以包括第一设备的序列号、registrar的名称、第一证书的有效期等信息。
140.第二私钥是第一设备在损坏前采用硬件设备的公钥对第一设备的私钥加密得到的。在第一设备对其私钥加密之前,第一设备可以先获取到硬件设备的公钥。示例性地,硬件设备可以向所有设备广播其公钥,从而第一设备可以获取到硬件设备的公钥。再示例性地,硬件设备可以向调试工具发送其公钥,调试工具接收到硬件设备的公钥后再转发给第一设备。比如,调试工具可以在图1的步骤110中向设备a发送第一注册请求消息时,将硬件设备的公钥承载于第一注册请求消息中。再比如,调试工具可以在图1中的步骤170中,在调试工具向设备a转发注册响应消息的同时,向设备a发送硬件设备的公钥。
141.在第一设备对其私钥加密时,第一设备可以利用非对称加密算法对其私钥进行加密。非对称加密算法指的是若用公钥对数据进行加密,则只有用对应的私钥才能将加密的数据进行解密。这里的非对称加密算法可以包括但不限于rsa算法、椭圆曲线加密(elliptic curve cryptography,ecc)算法、背包算法、rabin算法或迪菲-赫尔曼密钥交换(diffie-hellman key exchange,d-h)算法等。
142.第一设备利用非对称加密算法采用硬件设备的公钥对其私钥进行加密,能够提高第一设备的私钥的安全性,防止恶意设备的攻击。
143.在第一设备对其私钥进行加密得到第二私钥后,第一设备可以将第二私钥发送给
调试工具,之后,调试工具可以存储第二私钥。此外,第一设备还可以将第一证书发送给调试工具。与第二私钥类似,调试工具同样可以存储第一证书。
144.可选地,调试工具可以将第二私钥和/或第一证书存储在云端,或者,可以将第二私钥和/或第一证书存储在自身的安全模块或者其他模块中。
145.第二私钥和/或第一证书存储在调试工具中同时用于第二私钥解密的硬件设备的私钥仅存储在硬件设备中,避免了将第二私钥、第一证书以及硬件设备的私钥存储在同一设备的问题,进一步提高了第一设备的私钥的安全性。
146.在registrar不可用且第一设备发生损坏后,第二设备需要获取到第一设备的私钥和第一证书,这样,第二设备就可以根据第一设备的私钥和第一证书代替第一设备执行后续操作,比如,代替第一设备与其他设备进行数据传输等。
147.为了避免除了第二设备之外的设备也获取到第一设备的私钥和第一证书,保证第一设备的私钥和第一证书的安全性,调试工具可以获取第一设备与第二设备之间的映射关系,从而基于映射关系与第二设备进行通信。
148.作为一种示例,调试工具可以建立映射关系。可选地,调试工具可以根据第一设备的属性信息和第二设备的属性信息,建立映射关系。其中,第一设备的属性信息可以为但不限于设备的序列号、设备的媒体接入控制(media access control,mac)地址、设备的标识信息等。
149.可选地,第一设备的属性信息和第二设备的属性信息可以是预先设置在调试工具上的。需要说明的是,除了第一设备和第二设备之外,调试工具上可以预先设备有多种设备的属性信息。
150.可选地,第一设备的属性信息可以是第一设备在未损坏前发送给调试工具的,第二设备的属性信息可以是例如管理者配置在调试工具上的。
151.作为另一种示例,第一设备和第二设备之间的映射关系可以是用户比如管理员在调试工具上配置的。例如,管理员可以根据第一设备的属性信息和第二设备的属性信息在调试工具上配置第一设备和第二设备之间的映射关系。
152.上述技术方案,由于设备的序列号和mac地址可以是最能体现设备身份的参数,因此,根据序列号和/或mac地址确定的第一设备和第二设备之间的映射关系可以有效地与其他设备进行区分。
153.为了使第二设备获取到第一设备的私钥和第一证书,可选地,调试工具可以先获取到第二设备的第二证书,其中,第二证书是制造商为第二设备颁发的证书,即在第二设备出厂时制造商为第二设备颁发的证书。其中,第二证书可以包括第二设备的公钥信息、第二设备的名称、第二设备的序列号等信息。作为示例,第二证书可以是idevid证书。
154.可选地,调试工具可以建立与第二设备之间的传输层安全性(transport layer security,tls)连接,通过tls连接,接收第二设备发送的第二证书。
155.为了保证第二证书的准确性,即保证第二证书是第二设备的证书,进一步地,调试工具可以对第二证书进行验证。具体地,调试工具可以根据映射关系,对第二证书进行验证。例如,调试工具可以将第二证书中的序列号与映射关系中的第二设备的序列号进行比较,若第二证书中的序列号与映射关系中的第二设备的序列号相同,则可以确定接收到的第二证书是第二设备的证书。
156.或者,调试工具可以根据获取到的第二设备的公钥和第二证书中的公钥进行比较,若相同,则调试工具可以确定接收到的第二证书是第二设备的证书。
157.在调试工具获取到第二证书后,可选地,调试工具可以将第二证书存储在云端。若第二私钥也存储在云端,则硬件设备可以从云端获取到第二证书和第二私钥。或者,调试工具可以将第二证书和之前存储的第二私钥发送给硬件设备。其中,硬件设备和调试工具之间可以通过但不限于usb协议进行通信,比如,调试工具可以通过usb协议将第二证书和第二私钥发送给硬件设备。
158.硬件设备获取到第二私钥后,采用其自身的私钥对第二私钥进行解密,得到第一设备的私钥。之后,硬件设备采用第二证书中的第二设备的公钥对第一设备的私钥进行加密,得到第一私钥。同样,硬件设备可以利用非对称加密算法对第一设备的私钥进行加密,以保证第一设备的私钥的安全性。
159.接下来,硬件设备可以将第一私钥发送给调试工具。调试工具接收到第一私钥后,将第一私钥以及之前存储的第一证书发送给第二设备。其中,调试工具可以同时向第二设备发送第一私钥和第一证书,也可以分时向第二设备发送第一私钥和第一证书,本技术实施例对此不作具体限定。
160.第二设备接收到第一私钥和第一证书后,可以采用自己的私钥对第一私钥进行解密,得到第一设备的私钥。之后,第二设备就可以利用第一设备的私钥和第一证书加入系统,以代替第一设备执行操作。
161.为了更加清楚的理解本技术实施例的设备替换的方法200-500,以下结合图6描述本技术一种可能的实施例的设备替换的方法600。
162.在601中,调试工具向第一设备发送第三注册请求消息,该第三注册请求消息用于指示第一设备请求接入fa-系统,且第三注册请求消息包括硬件设备的公钥。
163.在602中,第一设备生成包括公钥和私钥的密钥对。
164.在603中,第一设备向调试工具发送第四注册请求消息。
165.其中,该第四注册请求消息为对第三注册请求消息的相应,用于指示使用设备请求接入fa-系统。
166.在604中,调试工具将第四注册请求消息转发给registrar。
167.在605中,registrar为第一设备颁发第一证书。
168.在颁发第一证书之前,registrar可以验证第四注册请求消息。若确定第四注册请求是第一设备发送的,则registrar可以为第一设备颁发第一证书。
169.在606中,registrar向调试工具发送第二注册请求响应消息,第二注册请求响应消息包括第一证书。
170.在607中,调试工具保存第一证书。
171.在608中,调试工具将第二注册请求响应消息转发给第一设备。
172.在609中,第一设备从第二注册请求响应消息中提取出第一证书,并对其私钥进行加密,得到第二私钥。
173.其中,第一设备可以采用在601中接收到的硬件设备的公钥对其私钥进行加密。
174.在610中,第一设备向调试工具发送第二私钥。
175.在611中,调试工具保存第二私钥。
176.在612中,第一设备加入fa-系统并开始运行。
177.在613中,registrar不可用。
178.比如,registrar处于休眠状态,或者,registrar发生损坏。
179.在614中,第一设备发生损坏,需要在较短时间内进行更换。
180.在615中,调试工具建立第一设备和第二设备之间的映射关系。
181.可选地,调试工具可以根据第一设备的属性信息和第二设备的属性信息建立映射关系。属性信息可以包括序列号、mac地址等。
182.在616中,第二设备向调试工具发送第二证书。
183.调试工具可以先建立与第二设备之间的tls连接,第二设备通过tls连接向调试工具发送第二证书。
184.在617中,调试工具根据映射关系验证第二证书。
185.例如,调试工具可以根据映射关系中的第二设备的序列号与第二证书中的序列号进行比较,若相同,则第二证书是第二设备的证书。
186.在618中,调试工具将第二证书和第二私钥发送给硬件设备。
187.其中,第二证书包括第二设备的公钥。
188.在619中,硬件设备对第二私钥进行解密并加密,得到第一私钥。
189.具体而言,硬件设备采用其私钥对第二私钥进行解密,得到第一设备的私钥,并采用第二设备的公钥对第一设备的私钥进行加密,得到第一私钥。
190.在620中,硬件设备将第一私钥发送给调试工具。
191.在621中,调试工具将第一私钥和第一证书发送给第二设备。
192.在622中,第二设备对第一私钥进行解密。
193.具体而言,第二设备采用自身的私钥对第一私钥进行解密,得到第一设备的私钥。
194.在623中,第二设备基于第一证书和第一设备的私钥,代替第一设备加入fa-系统中。
195.应理解,在本技术实施例中,“第一”、“第二”、“第三”和“第四”仅仅为了区分不同的对象,但并不对本技术实施例的范围构成限制。
196.本技术实施例,在第二设备需要替换第一设备的情况下,调试工具获取到第一设备的第一证书和第一私有密钥后,向第二设备转发第一证书和第一私钥,这样,第二设备就可以基于第一私钥获取到第一设备的私钥,并基于第一设备的私钥和第一设备的第一证书替换第一设备。由于上述技术方案不需要为第二设备颁发证书,也就不用重新为第二设备配置序列号等参数,使得可以在较短的时间内实现第二设备替换第一设备的目的,有效提高了处理速度。
197.进一步地,本技术实施例通过引入硬件设备,并利用硬件设备自身生成的公钥和私钥实现对第一设备的私钥的加密和解密。由于用于解密的硬件设备的私钥仅存储在硬件设备中,其他设备无法从硬件设备中提取出硬件设备的私钥,有利于提高第一设备的私钥的安全性,防止恶意设备的攻击。
198.上文详细描述了本技术实施例的方法实施例,下面描述本技术实施例的装置实施例,装置实施例与方法实施例相互对应,因此未详细描述的部分可参见前面各方法实施例,装置可以实现上述方法中任意可能实现的方式。
199.图7示出了本技术一个实施例的调试工具700的示意性框图。该调试工具700可以执行上述本技术实施例的设备替换的方法200,该调试工具700可以为前述方法中的调试工具。
200.如图7所示,该调试工具700包括:
201.获取单元710,用于获取第一设备的第一证书和第一私有密钥,所述第一私有密钥为硬件设备采用第二设备的公共密钥对所述第一设备的私有密钥加密得到的,所述硬件设备用于对密钥进行加密和解密,所述第二设备为所述第一设备的替换设备,所述第一证书于在所述第二设备替换所述第一设备之前所述第一设备接入物联网系统;
202.通信单元720,用于向所述第二设备发送所述第一私有密钥和所述第一证书,所述第一私有密钥用于所述第二设备获取所述第一设备的私有密钥,所述第一设备的私有密钥和所述第一证书用于所述第二设备替换所述第一设备。
203.可选地,在本技术一个实施例中,获取单元710还用于:获取第二私有密钥和所述第二设备的第二证书,所述第二证书为制造商为所述第二设备颁发的证书且包括所述第二设备的公共密钥,所述第二私有密钥是所述第一设备采用所述硬件设备的公共密钥对所述第一设备的私有密钥加密得到的;
204.通信单元720还用于:向所述硬件设备发送所述第二私有密钥和所述第二证书,接收所述硬件设备发送的所述第一私有密钥。
205.可选地,在本技术一个实施例中,通信单元720还用于:接收所述第一设备发送的第二私有密钥;
206.调试工具700还包括:存储单元,用于存储所述第二私有密钥。
207.可选地,在本技术一个实施例中,获取单元710具体用于:建立与所述第二设备之间的传输层安全性tls连接;
208.通信单元720还用于:通过所述tls连接,接收所述第二设备发送的所述第二证书。
209.可选地,在本技术一个实施例中,获取单元710还用于:根据所述第一设备的属性信息和所述第二设备的属性信息,建立所述映射关系,所述属性信息包括序列号和/或媒体接入控制mac地址;
210.调试工具700还包括:验证单元,用于根据所述映射关系,对所述第二证书进行验证。
211.可选地,在本技术一个实施例中,通信单元720还用于:接收所述硬件设备发送的所述硬件设备的公共密钥;向所述第一设备发送所述硬件设备的公共密钥。
212.可选地,在本技术一个实施例中,所述第一证书为注册器在可用的情况下为所述第一设备颁发的证书,通信单元720还用于:接收所述注册器发送的所述第一证书;
213.存储单元还用于:存储所述第一证书;
214.获取单元710具体用于:当所述注册器不可用时,所述调试工具获取所述第一私有密钥。
215.图8示出了本技术一个实施例的硬件设备800的示意性框图。该硬件设备800可以执行上述本技术实施例的设备替换的方法300,该硬件设备800可以为前述方法中的硬件设备。
216.如图8所示,该硬件设备800包括:
217.通信单元810,用于接收调试工具发送的第二私有密钥,所述第二私有密钥是所述第一设备采用所述硬件设备的公共密钥对所述第一设备的私有密钥加密得到的;
218.解密单元820,用于采用所述硬件设备的私有密钥对所述第二私有密钥进行解密,得到所述第一设备的私有密钥;
219.加密单元830,用于采用第二设备的公共密钥对所述第一设备的私有密钥进行加密,得到第一私有密钥,所述第二设备为所述第一设备的替换设备;
220.通信单元810还用于,向所述调试工具发送所述第一私有密钥,所述第一私有密钥用于所述第二设备获取所述第一设备的私有密钥。
221.可选地,在本技术一个实施例中,通信单元810还用于:接收所述调试工具发送的所述第二设备的第二证书,所述第二证书为制造商为所述第二设备颁发的证书且包括所述第二设备的公共密钥。
222.可选地,在本技术一个实施例中,通信单元810还用于:所述硬件设备向所述调试工具发送所述硬件设备的公共密钥。
223.图9示出了本技术一个实施例的设备替换的装置900的示意性框图。该设备替换的装置900可以执行上述本技术实施例的设备替换的方法400,该设备替换的装置900可以为前述方法中的第二设备。
224.如图9所示,该设备替换的装置900可以包括:
225.获取单元910,用于获取第一设备的第一证书和所述第一设备的私有密钥,所述第一证书用于在所述第二设备替换所述第一设备之前所述第一设备接入物联网系统;
226.处理单元920,用于基于所述第一证书和所述第一设备的私有密钥,替换所述第一设备。
227.可选地,在本技术一个实施例中,设备替换的装置900还可以包括通信单元,用于接收调试工具发送的第一私有密钥,所述第一私有密钥为硬件设备采用第二设备的公共密钥对所述第一设备的私有密钥加密得到的;
228.设备替换的装置900还可以包括解密单元,用于采用所述第二设备的私有密钥对所述第一私有密钥进行解密,得到所述第二设备的私有密钥。
229.可选地,在本技术一个实施例中,通信单元还用于:通过传输层安全性tls连接,向调试工具发送所述第二设备的第二证书,所述第二证书为制造商为所述第二设备颁发的证书且包括所述第二设备的公共密钥。
230.可选地,在本技术一个实施例中,第一证书为注册器在可用的情况下为所述第一设备颁发的证书,通信单元还用于:当所述注册器不可用时,接收调试工具发送的所述第一证书。
231.图10示出了本技术另一个实施例的设备替换的装置1000的示意性框图。该设备替换的装置1000可以执行上述本技术实施例的设备替换的方法500,该设备替换的装置1000可以为前述方法中的第一设备。
232.如图10所示,该设备替换的装置1000可以包括:
233.获取单元1010,用于获取硬件设备的公共密钥;
234.加密单元1020,用于采用所述硬件设备的公共密钥对所述第一设备的私有密钥进行加密,得到第二私有密钥;
235.通信单元1030,用于向调试工具发送所述第二私有密钥和所述第一设备的第一证书,所述第一证书用于在第二设备替换所述第一设备之前所述第一设备接入物联网系统且用于所述第二设备替换所述第一设备。
236.图11是本技术实施例的装置的硬件结构示意图。图11所示的装置1100可以为调试工具、硬件设备或设备替换的装置,装置1100包括存储器1101、处理器1102、通信接口1103以及总线1104。其中,存储器1101、处理器1102、通信接口1103通过总线1104实现彼此之间的通信连接。
237.存储器1101可以是只读存储器(read-only memory,rom),静态存储设备和随机存取存储器(random access memory,ram)。存储器1101可以存储程序,当存储器1101中存储的程序被处理器1102执行时,处理器1102和通信接口1103用于执行本技术实施例的设备替换的方法的各个步骤。
238.处理器1102可以采用通用的中央处理器(central processing unit,cpu),微处理器,应用专用集成电路(application specific integrated circuit,asic),图形处理器(graphics processing unit,gpu)或者一个或多个集成电路,用于执行相关程序,以实现本技术实施例的装置中的单元所需执行的功能,或者执行本技术实施例的设备替换的方法。
239.处理器1102还可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,本技术实施例的设备替换的方法的各个步骤可以通过处理器1102中的硬件的集成逻辑电路或者软件形式的指令完成。
240.上述处理器1102还可以是通用处理器、数字信号处理器(digital signal processing,dsp)、asic、现成可编程门阵列(field programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本技术实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1101,处理器1102读取存储器1101中的信息,结合其硬件完成本技术实施例的装置中包括的单元所需执行的功能,或者执行本技术实施例的设备替换的方法。
241.通信接口1103使用例如但不限于收发器一类的收发装置,来实现装置1100与其他设备或通信网络之间的通信。例如,装置1100为调试工具时,可以通过通信接口1103向第二设备发送第一私钥和第一证书。
242.总线1104可包括在装置1100各个部件(例如,存储器1101、处理器1102、通信接口1103)之间传送信息的通路。
243.应注意,尽管上述装置1100仅仅示出了存储器、处理器、通信接口,但是在具体实现过程中,本领域的技术人员应当理解,装置1100还可以包括实现正常运行所必须的其他器件。同时,根据具体需要,本领域的技术人员应当理解,装置1100还可包括实现其他附加功能的硬件器件。此外,本领域的技术人员应当理解,装置1100也可仅仅包括实现本技术实施例所必须的器件,而不必包括图11中所示的全部器件。
244.本技术实施例还提供了一种计算机可读存储介质,存储用于设备执行的程序代码,所述程序代码包括用于执行上述设备替换的方法中的步骤的指令。
245.本技术实施例还提供了一种计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行上述设备替换的方法。
246.上述的计算机可读存储介质可以是暂态计算机可读存储介质,也可以是非暂态计算机可读存储介质。
247.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
248.在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
249.本技术中使用的用词仅用于描述实施例并且不用于限制权利要求。如在实施例以及权利要求的描述中使用的,除非上下文清楚地表明,否则单数形式的“一个”和“所述”旨在同样包括复数形式。类似地,如在本技术中所使用的术语“和/或”是指包含一个或一个以上相关联的列出的任何以及所有可能的组合。另外,当用于本技术中时,术语“包括”指陈述的特征、整体、步骤、操作、元素,和/或组件的存在,但不排除一个或一个以上其它特征、整体、步骤、操作、元素、组件和/或这些的分组的存在或添加。
250.所描述的实施例中的各方面、实施方式、实现或特征能够单独使用或以任意组合的方式使用。所描述的实施例中的各方面可由软件、硬件或软硬件的结合实现。所描述的实施例也可以由存储有计算机可读代码的计算机可读介质体现,该计算机可读代码包括可由至少一个计算装置执行的指令。所述计算机可读介质可与任何能够存储数据的数据存储装置相关联,该数据可由计算机系统读取。用于举例的计算机可读介质可以包括只读存储器、随机存取存储器、紧凑型光盘只读储存器(compact disc read-only memory,cd-rom)、硬盘驱动器(hard disk drive,hdd)、数字视频光盘(digital video disc,dvd)、磁带以及光数据存储装置等。所述计算机可读介质还可以分布于通过网络联接的计算机系统中,这样计算机可读代码就可以分布式存储并执行。
251.上述技术描述可参照附图,这些附图形成了本技术的一部分,并且通过描述在附图中示出了依照所描述的实施例的实施方式。虽然这些实施例描述的足够详细以使本领域技术人员能够实现这些实施例,但这些实施例是非限制性的;这样就可以使用其它的实施例,并且在不脱离所描述的实施例的范围的情况下还可以做出变化。比如,流程图中所描述的操作顺序是非限制性的,因此在流程图中阐释并且根据流程图描述的两个或两个以上操作的顺序可以根据若干实施例进行改变。作为另一个例子,在若干实施例中,在流程图中阐释并且根据流程图描述的一个或一个以上操作是可选的,或是可删除的。另外,某些步骤或功能可以添加到所公开的实施例中,或两个以上的步骤顺序被置换。所有这些变化被认为包含在所公开的实施例以及权利要求中。
252.另外,上述技术描述中使用术语以提供所描述的实施例的透彻理解。然而,并不需要过于详细的细节以实现所描述的实施例。因此,实施例的上述描述是为了阐释和描述而呈现的。上述描述中所呈现的实施例以及根据这些实施例所公开的例子是单独提供的,以添加上下文并有助于理解所描述的实施例。上述说明书不用于做到无遗漏或将所描述的实施例限制到本技术的精确形式。根据上述教导,若干修改、选择适用以及变化是可行的。在某些情况下,没有详细描述为人所熟知的处理步骤以避免不必要地影响所描述的实施例。
253.以上所述,仅为本技术实施例的具体实施方式,但本技术实施例的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术实施例揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术实施例的保护范围之内。因此,本技术实施例的保护范围应以所述权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1