CN110602690A - 一种应用于ZigBee系统的加密方法及装置 - Google Patents

一种应用于ZigBee系统的加密方法及装置 Download PDF

Info

Publication number
CN110602690A
CN110602690A CN201910783852.5A CN201910783852A CN110602690A CN 110602690 A CN110602690 A CN 110602690A CN 201910783852 A CN201910783852 A CN 201910783852A CN 110602690 A CN110602690 A CN 110602690A
Authority
CN
China
Prior art keywords
network key
node
type
key
network
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.)
Granted
Application number
CN201910783852.5A
Other languages
English (en)
Other versions
CN110602690B (zh
Inventor
舒玉华
时锐
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201910783852.5A priority Critical patent/CN110602690B/zh
Publication of CN110602690A publication Critical patent/CN110602690A/zh
Application granted granted Critical
Publication of CN110602690B publication Critical patent/CN110602690B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/03Protecting confidentiality, e.g. by encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • H04W12/043Key management, e.g. using generic bootstrapping architecture [GBA] using a trusted network node as an anchor
    • H04W12/0431Key distribution or pre-distribution; Key agreement

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本申请实施例公开一种应用于ZigBee系统的加密方法及装置,该方法中,在确定ZigBee系统中的目标节点的安全类型之后,根据目标节点的安全类型,确定该目标节点对应的网络密钥,以及确定用于加密该网络密钥的链路密钥,再通过该链路密钥对所述网络密钥进行加密,并向目标节点传输加密后的网络密钥,以使该目标节点获取网络密钥,从而为不同安全类型的节点分配的网络密钥不同。这种情况下,即使某一安全类型的节点的网络密钥被泄露,也无法获取到其他安全类型的节点的网络密钥,从而提高了其他安全类型的节点的网络密钥的泄露难度,并提高了ZigBee系统的安全性。

Description

一种应用于ZigBee系统的加密方法及装置
技术领域
本申请涉及通信技术领域,具体涉及一种应用于ZigBee系统的加密方法及装置。
背景技术
ZigBee协议又被称为紫蜂协议,该协议为一种低速短距离传输的无线网上协议,具有低复杂度和低耗电等优势,因此应用日益广泛。
ZigBee系统通常包括信任中心以及与该信任中心相连接的各个节点(即下挂设备)。为了保障节点的网络层安全,各个节点的网络层在进行通信时,通常采用网络密钥(network key)对通信数据进行加解密,以提高网络层的安全性。其中,该network key由ZigBee系统中的信任中心生成,并且,信任中心会通过链路密钥(link key)对network key进行加密,然后将加密后的network key传输至节点,以使节点获取network key。
目前,根据节点对安全性的需求,信任中心通常采用两种方式对network key加密。其中,对于安全性需求较低的节点,信任中心通常采用预配置全局链路密钥(pre-config gobal link key)对network key进行加密。其中,pre-config gobal link key为ZigBee协议定义的密钥,或者为厂商预先设置的密钥,较易被获取,导致该network key较易被泄露。因此,对于安全性需求较高的节点,采用第二种方式对network key加密。该加密方式中,信任中心获取该节点的安装码,再根据安装码生成相应的预配置唯一链路密钥(pre-config unique link key),然后通过pre-config unique link key对network key进行加密,以希望达到该network key不易被获取的目的,从而提高该节点的安全性。
但是,现有的加密方式中,信任中心为ZigBee系统中各个节点所生成的networkkey相同。这种情况下,即使安全性需求较高的节点的network key不易被获取,但是,通过截取安全性较低的节点的network key,仍可获取ZigBee系统中各个节点的network key。因此,安全性较高的节点的network key仍然较易被泄露,导致ZigBee系统安全性较低。
发明内容
为了解决现有技术中,ZigBee系统中的network key较易被泄露,导致ZigBee系统安全性较低的问题,本申请实施例公开一种应用于ZigBee系统的加密方法及装置。
第一方面,本申请实施例公开一种应用于ZigBee系统的加密方法,包括:
所述ZigBee系统中的信任中心确定ZigBee系统中的目标节点的安全类型,所述目标节点为需要获取网络密钥的节点,所述目标节点的安全类型用于指示所述目标节点对安全性的需求;
所述信任中心根据所述目标节点的安全类型,确定所述目标节点对应的网络密钥,以及确定用于加密所述网络密钥的链路密钥,其中,不同安全类型的目标节点所对应的网络密钥不同;
所述信任中心通过所述链路密钥对所述网络密钥加密,并向所述目标节点传输加密后的网络密钥。
在本申请实施例中,能够根据节点的安全类型进一步细分为其分配的networkkey,从而为不同安全类型的节点分配的network key不同。这种情况下,即使某一安全类型的节点的network key被泄露,也无法获取到其他安全类型的节点的network key,从而提高了其他安全类型的节点的network key的泄露难度,并提高了ZigBee系统的安全性。
一种可选的设计中,所述信任中心根据所述目标节点的安全类型,确定所述目标节点对应的网络密钥,包括:
当预先未生成第一类型网络密钥时,所述信任中心生成所述第一类型网络密钥,其中,所述第一类型网络密钥为所述目标节点的安全类型对应的网络密钥;
或者,当预先生成有第一类型网络密钥时,所述信任中心根据所述第一类型网络密钥的有效期,确定所述第一类型网络密钥是否有效;
当所述第一类型网络密钥有效时,所述信任中心确定所述第一类型网络密钥为所述目标节点对应的网络密钥,或者,确定重新生成的第一类型网络密钥为所述目标节点对应的网络密钥;
当所述第一类型网络密钥失效时,所述信任中心确定重新生成的第一类型网络密钥为所述目标节点对应的网络密钥。
通过本申请实施例,能够根据目标节点的安全类型,确定所述目标节点对应的network key。并且,该实施例在确定目标节点对应的network key时,为network key设置相应的有效期,从而能够根据目标节点的安全类型,以及network key的有效期综合确定目标节点对应的network key。这种情况下,能够及时更换network key,从而提高networkkey的泄露难度,进一步提高了ZigBee系统的安全性。
一种可选的设计中,在所述信任中心确定重新生成的第一类型网络密钥为所述目标节点对应的网络密钥之后,还包括:
所述信任中心确定所述ZigBee系统中,与所述目标节点的安全类型相同的其他节点;
所述信任中心向所述其他节点传输所述加密后的网络密钥。
通过上述步骤,能够使所述其他节点获取信任中心重新生成的第一类型networkkey,以保障ZigBee系统中安全类型相同的各个节点应用相同的网络密钥。
一种可选的设计中,所述安全类型包括高安全类型和弱安全类型;不同安全类型的目标节点所对应的链路密钥不同。
一种可选的设计中,所述目标节点的安全类型为高安全类型时,与所述目标节点的安全类型相对应的链路密钥为根据所述目标节点的安装码生成的预配置唯一链路密钥,所述预配置唯一链路密钥用于加密高安全类型相对应的网络密钥。
当所述目标节点的安全类型为高安全类型时,用于加密network key的link key与该目标节点的安装码相对应,从而能够使加密不同的目标节点采用不同的link key对network key进行加密,进一步提高了network key的泄露难度。
一种可选的设计中,所述目标节点的安全类型为弱安全类型时,与所述目标节点的安全类型相对应的链路密钥为预配置全局链路密钥,所述预配置全局链路密钥用于加密弱安全类型相对应的网络密钥。
通过上述操作,对于安全需求不高的目标节点,将pre-config gobal link key作为用于加密所述network key的link key,而pre-config gobal link key较易被获取,从而提高了对network key的加密效率。
一种可选的设计中,所述信任中心确定ZigBee系统中的目标节点的安全类型,包括:所述信任中心接收所述ZigBee系统中的配网控制设备传输的所述目标节点的安全类型。
第二方面,本申请实施例公开一种应用于ZigBee系统的加密方法,所述ZigBee系统包括信任中心、第一节点和第二节点,所述第一节点的安全类型与所述第二节点的安全类型不同,所述安全类型用于指示节点对安全性的需求,所述方法包括:
所述信任中心根据所述第一节点对应的第一安全类型,确定所述第一节点对应的第一网络密钥,并确定用于加密所述第一网络密钥的第一链路密钥;
所述信任中心根据所述第二节点对应的第二安全类型,确定所述第二节点对应的第二网络密钥,并确定用于加密所述第二网络密钥的第二链路密钥,其中,所述第一网络密钥和所述第二网络密钥不同;
所述信任中心向所述第一节点传输通过所述第一链路密钥加密后的第一网络密钥,并向所述第二节点传输通过所述第二链路密钥加密后的第二网络密钥。
一种可选的设计中,所述信任中心根据所述第一节点对应的第一安全类型,确定所述第一节点对应的第一网络密钥,包括:
当预先未生成所述第一节点的安全类型对应的第二类型网络密钥时,所述信任中心生成所述第二类型网络密钥,所述第二类型网络密钥为所述第一节点对应的第一网络密钥;
或者,当预先生成有所述第一节点的安全类型对应的第二类型网络密钥时,所述信任中心根据所述第二类型网络密钥的有效期,确定所述第二类型网络密钥是否有效;
当所述第二类型网络密钥有效时,所述信任中心确定所述第二类型网络密钥为所述第一网络密钥,或者,确定重新生成的第二类型网络密钥为所述第一网络密钥;
当所述第二类型网络密钥失效时,所述信任中心确定重新生成的第二类型网络密钥为所述第一网络密钥。
一种可选的设计中,在所述信任中心确定重新生成的第二类型网络密钥为所述第一网络密钥之后,还包括:
所述信任中心确定所述ZigBee系统中,与所述第一节点的安全类型相同的其他节点;
所述信任中心向所述节点传输所述加密后的第一网络密钥。
一种可选的设计中,所述安全类型包括高安全类型和弱安全类型;不同安全类型的节点所对应的链路密钥不同。
一种可选的设计中,所述第一节点的安全类型为高安全类型时,所述第一链路密钥为根据所述第一节点的安装码生成的预配置唯一链路密钥,所述预配置唯一链路密钥用于加密高安全类型相对应的网络密钥。
一种可选的设计中,所述第二节点的安全类型为弱安全类型时,所述第二链路密钥为预配置全局链路密钥,所述预配置全局链路密钥用于加密弱安全类型相对应的网络密钥。
一种可选的设计中,所述ZigBee系统还包括新增的第三节点,所述方法还包括:
所述信任中心确定所述第三节点对应的安全类型;
当所述第三节点对应的安全类型为所述第一安全类型时,所述信任中心向所述第三节点传输通过所述第一链路密钥加密后的第一网络密钥;
当所述第三节点对应的安全类型为所述第二安全类型时,所述信任中心向所述第三节点传输通过所述第二链路密钥加密后的第二网络密钥。
第三方面,本申请实施例公开一种应用于ZigBee系统的加密装置,所述装置包含在所述ZigBee系统中的信任中心中,或者所述装置为所述信任中心,所述装置包括:
处理器、存储器和收发器;
其中,所述存储器,用于存储程序指令;
所述收发器,用于收发数据;
所述处理器,用于调用并执行所述存储器中存储的程序指令,所述处理器执行所述程序指令时,使得所述装置执行如第一方面或第二方面任一项所述的方法。
第四方面,本申请实施例公开一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得所述计算机执行第一方面或第二方面任一所述的方法。
第五方面,本申请实施例公开一种包含指令的计算机程序产品,当所述计算机程序产品在电子设备上运行时,使得所述电子设备执行如第一方面或第二方面任一所述的方法。
本申请实施例中,在确定ZigBee系统中的目标节点的安全类型之后,根据目标节点的安全类型,确定该目标节点对应的network key,以及确定用于加密该network key的link key,再通过该link key对所述network key进行加密,并向目标节点传输加密后的network key,以使该目标节点获取network key。
在本申请实施例中,可基于节点的安全类型,确定该节点的network key。也就是说,能够根据节点的安全类型进一步细分为其分配的network key,从而为不同安全类型的节点分配的network key不同。这种情况下,即使某一安全类型的节点的network key被泄露,也无法获取到其他安全类型的节点的network key,从而提高了其他安全类型的节点的network key的泄露难度,并提高了ZigBee系统的安全性。
附图说明
图1为本申请实施例应用的一种ZigBee系统的示意图;
图2为本申请实施例应用的一种应用于ZigBee系统的加密方法中的各种密钥之间的关系;
图3为本申请实施例公开的一种应用于ZigBee系统的加密方法的工作流程示意图;
图4为本申请实施例公开的又一种应用于ZigBee系统的加密方法的工作流程示意图;
图5为本申请实施例公开的一种ZigBee系统的示意图;
图6为本申请实施例公开的又一种应用于ZigBee系统的加密方法的工作流程示意图;
图7为本申请实施例中的一种ZigBee系统的示意图;
图8为本申请实施例公开的一种应用于ZigBee系统的加密装置的结构示意图。
具体实施方式
为了解决现有技术中,ZigBee系统中的network key较易被泄露,导致ZigBee系统安全性较低的问题,本申请实施例公开一种应用于ZigBee系统的加密方法及装置。
其中,参见图1所示的系统示意图,ZigBee系统通常包括信任中心100以及与所述信任中心100相连接的各个节点,所述各个节点又可称为该信任中心100的下挂设备。信任中心为一种用于在ZigBee系统中分配安全密钥的可信任的设备,能够提供安全管理、安全密钥分配和设备认证的功能。该信任中心100通常被设置在ZigBee系统的协调器或路由器中。而且,根据各个节点对安全性的要求,与信任中心100相连接的各个节点可分为对安全性要求较高的高安全性节点210,以及对安全性要求较低的弱安全性节点220。另外,各个节点以及信任中心通常包括物理层、网络层和应用层。
在ZigBee协议中,定义了多种类型的密钥。其中,ZigBee 3.0协议定义的密钥包括:网络密钥(network key)和链路密钥(link key),而link key还包括:预配置全局链路密钥(pre-config gobal link key)和唯一链路密钥(unique link key)。进一步的,unique link key包括:预配置唯一链路密钥(pre-config unique link key)、信任中心链路密钥(trust center link key)和应用链路密钥(application link key)。
另外,为了提高ZigBee系统的安全性,ZigBee协议分别定义了网络层安全和应用层安全的概念。其中,网络层安全指的是ZigBee系统的各个节点的网络层在进行通信时,采用network key对通信数据进行加解密,以提高网络层通信的安全性;应用层安全指的是节点间的应用层在进行通信时,通过应用链路密钥(application link key)对通信数据进行加解密,以提高应用层通信的安全性。
也就是说,物理层用于建立空口通信的连接,进行空口通信;网络层用于建立网络层的通信连接,实现节点间的网络层通信,在进行网络层通信的过程中,通过network key对通信数据进行加解密;应用层用于建立应用层的通信连接,实现节点间的应用层通信,另外,在进行应用层通信时,通过application link key对通信数据进行加解密。
这种情况下,依据ZigBee 3.0协议的定义,各种密钥的区别和用途可参照表1:
表1
为了使节点获取network key,每当有新的节点加入该ZigBee系统时,信任中心会生成相应的network key,并对该network key加密,再将加密之后的network key传输至该节点,该节点在获取加密之后的network key后,对其进行解密处理,获取相应的networkkey,然后通过network key进行网络层的通信。其中,信任中心在对network key加密时,可采用pre-config gobal link key和pre-config unique link key等密钥。
信任中心还可生成application link key,并且通过network key对applicationlink key进行加密。另外,当信任中心获取pre-config unique link key时,还可以通过pre-config unique link key和network key共同对application link key进行加密,然后,信任中心再将加密后的application link key传输至节点,以便节点获取applicationlink key,并通过application link key进行应用层的通信。
另外,根据上述对各种密钥的介绍可知,network key还可用于对trust centerlink key和application link key进行加密,并且,当存在pre-config unique link key时,pre-config unique link key也可用于对trust center link key和applicationlink key进行加密。这种情况下,各种密钥之间的关系如图2所示。
根据表1以及上述对各类型密钥的描述,可知pre-config gobal link key和pre-config unique link key对network key进行加密,在图2中,预配置全局链路密钥和预配置唯一链路密钥分别指向网络密钥的实线箭头,即表示这一关系。
另外,network key还用于对trust center link key和application link key进行加密,在图2中,网络密钥分别指向信任中心链路密钥和应用链路密钥的实线箭头,即表示这一关系。
而且,上述描述中还指出,当信任中心获取了pre-config unique link key时,还可以通过pre-config unique link key和network key共同对application link key进行加密,在图2中,预配置唯一链路密钥指向应用链路密钥的虚线箭头,即表示这一关系;另外,当信任中心获取了pre-config unique link key时,pre-config unique link key还可用于对trust center link key进行加密,在图2中,预配置唯一链路密钥指向信任中心链路密钥的虚线箭头,即表示这一关系。
根据表1中对ZigBee系统中各种密钥的介绍,以及图2中对各种密钥的关系的介绍可知,ZigBee系统中各个节点在进行网络层通信时不仅需要应用network key,并且,在对trust center link key和application link key加密时,也需要应用network key,因此,network key是ZigBee系统中比较重要的一种密钥。
在现有技术中,信任中心会为加入ZigBee系统的各个节点生成相同的networkkey,如果该节点对安全性要求不高,信任中心通常采用pre-config gobal link key对network key进行加密,再将加密后的network key传输至该节点。另外,如果该节点对安全性要求较高,则信任中心会获取该节点的安装码,再根据安装码生成相应的pre-configunique link key,通过pre-config unique link key对network key进行加密,然后将加密后的network key传输至该安全性要求较高的节点。
其中,pre-config gobal link key为ZigBee协议定义的密钥,或者为厂商预先设置的密钥,因此,公开性较高,较易被获取。这种情况下,信任中心在将通过pre-configgobal link key加密后的network key传输至节点的过程中,如果该加密后的network key被截取,截取方较易对其进行解密,从而导致network key较易被泄露。
另外,通过pre-config unique link key对network key进行加密时,信任中心在将加密后的network key传输至节点的过程中,即使该加密后的network key被截取,也不易被解密。但是,由于信任中心为ZigBee系统的各个节点生成的network key均相同,通过截取所述信任中心为安全性较低的节点所加密的network key,即可获取整个ZigBee系统中各个节点的network key。也就是说,即使对安全性较高的节点的network key采用pre-config unique link key,通过安全性较低的节点的network key,即可获取整个ZigBee系统中各个节点的network key。
如果network key被泄露,则节点间进行网络层的通信时,通过network key加密的通信数据较易被获取,从而降低了ZigBee系统的安全性。
进一步的,由于network key还用于对trust center link key和applicationlink key加密,因此,network key被泄露之后,trust center link key和applicationlink key也较易被泄露,其中,application link key用于对应用层通信的通信数据进行加密,在application link key被泄露之后,通过application link key加密的通信数据也较易被获取,从而进一步降低了ZigBee系统的安全性。
为了解决现有技术中,network key较易被泄露,导致ZigBee系统的安全性低的问题,本申请通过以下各个实施例公开一种应用于ZigBee系统的加密方法及装置。
本申请第一实施例公开一种应用于ZigBee系统的加密方法。该方法通常应用于ZigBee系统中的信任中心,该信任中心可生成各个节点所需的network key。
参见图3所示的工作流程示意图,本申请实施例公开的应用于ZigBee系统的加密方法包括以下步骤:
步骤S11、确定ZigBee系统中的目标节点的安全类型。
其中,所述目标节点为需要获取网络密钥(network key)的节点,所述目标节点的安全类型用于指示所述目标节点对安全性的需求。
节点的安全类型与该节点对安全性的需求相关。通常情况下,节点的安全类型可分为高安全类型和弱安全类型,当某一节点对安全性的需求较高时,该节点的安全类型即为高安全类型,当某一节点对安全性的需求较低时,该节点的安全类型即为低安全类型。
当然,在本申请的应用过程中,根据各个节点对安全性的需求,节点的安全类型还可以进一步划分,从而将节点的安全类型划分为更多种,本申请对此不做限定。
在本申请实施例中,目标节点指的是需要获取network key的节点。在一种可行的实现方式中,目标节点为新加入ZigBee系统的节点,这种情况下,新加入ZigBee系统的节点会生成network key获取请求,并向信任中心传输该请求。信任中心在接收到所述networkkey获取请求之后,将该节点确定为目标节点,并确定该目标节点的安全类型。
另外,可通过多种方式确定ZigBee系统中的目标节点的安全类型。在一种可行的实现方式中,可通过工作人员向信任中心传输所述目标节点的安全类型。或者,在另一种可行的实现方式中,ZigBee系统中的配网控制设备获取目标节点的安全类型,并向该信任中心传输所述目标节点的安全类型,这种情况下,接收所述ZigBee系统中的配网控制设备传输的所述目标节点的安全类型,从而确定确定ZigBee系统中的目标节点的安全类型。
步骤S12、根据所述目标节点的安全类型,确定所述目标节点对应的network key,以及确定用于加密所述network key的链路密钥(link key),其中,不同安全类型的目标节点所对应的network key不同。
在本申请实施例中,为不同安全类型的节点分配不同的network key,也就是说,为高安全类型的节点分配的network key与为弱安全类型的节点分配的network key不同。因此,在该步骤中,根据目标节点的安全类型,确定所述目标节点对应的network key。
另外,某一节点对应的network key,指的是该节点进行网络层通信时,对通信数据进行加密时所采用的network key。
进一步的,针对不同安全类型的节点,本申请实施例还可采用不同的link key对其进行加密,以便通过不同加密方式对不同安全类型的节点对应的network key,从而提高network key的泄露难度。
步骤S13、通过所述link key对所述network key加密,并向所述目标节点传输加密后的network key。
目标节点接收到所述加密后的network key之后,对其进行解密,并在后续的网络层通信过程中,通过network key对通信数据进行加密。
本申请实施例公开一种应用于ZigBee系统的加密方法,在该方法中,针对不同安全类型的节点,分配不同的network key,其中,节点的安全类型包括高安全类型和弱安全类型。具体的,该方法中,在确定ZigBee系统中的目标节点的安全类型之后,根据目标节点的安全类型,确定该目标节点对应的network key,以及确定用于加密该network key的link key,再通过该link key对所述network key进行加密,并向目标节点传输加密后的network key,以使该目标节点获取network key。
在本申请实施例中,可基于节点的安全类型,确定该节点的network key,也就是说,能够根据节点的安全类型进一步细分为其分配的network key,从而为不同安全类型的节点分配的network key不同。这种情况下,即使某一安全类型的节点的network key被泄露,也无法获取到其他安全类型的节点的network key,从而提高了其他安全类型的节点的network key的泄露难度,并提高了ZigBee系统的安全性。
在步骤S12中,公开根据所述目标节点的安全类型,确定所述目标节点对应的网络密钥(network key)的步骤。该步骤可包括以下操作:
当预先未生成第一类型network key时,生成所述第一类型network key,其中,所述第一类型network key为所述目标节点的安全类型对应的network key。
在本申请实施例中,节点加入ZigBee系统之后,信任中心会为该节点分配相应的network key。这种情况下,信任中心可预先生成有第一类型network key。例如,假设目标节点为高安全类型的节点,则第一类型network key为高安全类型的节点所对应的networkkey,如果ZigBee系统中预先加入了其他的高安全类型的节点,则信任中心预先可为其他的高安全类型的节点生成第一类型network key,然后,有新的高安全类型的节点加入ZigBee系统之后,该信任中心再为新加入的节点分配已经生成的第一类型network key。
或者,信任中心也可能预先并未生成第一类型network key。例如,假设目标节点为高安全类型的节点,ZigBee系统中预先加入的节点均为弱安全类型的节点,或者,ZigBee系统中之前并未加入任何节点,则信任中心可能未预先生成第一类型network key。
这种情况下,当预先未生成第一类型network key时,生成所述第一类型networkkey,该第一类型network key即作为目标节点对应的network key。
或者,当预先生成有第一类型network key时,所述根据所述目标节点的安全类型,确定所述目标节点对应的network key,包括以下步骤:
第一步,根据所述第一类型network key的有效期,确定所述第一类型networkkey是否有效。
在本申请实施例中,预先为第一类型network key设置相应的有效期,并且,还能够根据第一类型network key的生成时间以及当前时间的时间差,确定第一类型networkkey是否有效。其中,当第一类型network key的生成时间以及当前时间的时间差不大于所述有效期时,则表明该第一类型network key有效,另外,当所述时间差大于所述有效期时,则可确定第一类型network key失效。
第二步,当所述第一类型network key有效时,确定所述第一类型network key为所述目标节点对应的network key,或者,确定重新生成的第一类型network key为所述目标节点对应的network key。
当所述第一类型network key有效时,则可继续沿用所述第一类型network key,这种情况下,确定所述第一类型network key为所述目标节点对应的network key。另外,为了提高network key的泄露难度,还可以重新生成第一类型network key,将重新生成的第一类型network key作为目标节点对应的network key。
另外,当所述第一类型network key失效时,确定重新生成的第一类型networkkey为所述目标节点对应的network key。
当所述第一类型network key失效时,则不再沿用所述第一类型network key,而是重新生成第一类型network key,将重新生成的第一类型network key作为目标节点对应的network key。
通过本申请实施例,能够根据目标节点的安全类型,确定所述目标节点对应的network key。并且,该实施例在确定目标节点对应的network key时,为network key设置相应的有效期,从而能够根据目标节点的安全类型,以及network key的有效期综合确定目标节点对应的network key。这种情况下,能够及时更换network key,从而提高networkkey的泄露难度,进一步提高了ZigBee系统的安全性。
为了详细阐述如何确定目标节点对应的network key,本申请公开以下实施例。参见图4所示的工作流程示意图,本申请实施例公开的应用于ZigBee系统的加密方法包括以下步骤:
步骤S21、确定ZigBee系统中的目标节点的安全类型,所述目标节点为需要获取网络密钥(network key)的节点。
步骤S21的操作与的步骤S11的操作相同,可相互参照,此处不再赘述。
步骤S22、确定是否预先生成第一类型network key,若否,执行步骤S23的操作,若是,执行步骤S24的操作。其中,所述第一类型network key为所述目标节点的安全类型对应的network key。
步骤S23、当预先未生成第一类型network key时,生成所述第一类型networkkey,从而确定目标节点对应的network key为所述第一类型network key。其中,所述第一类型network key为所述目标节点的安全类型对应的network key,也就是说,当所述目标节点的安全类型为高安全类型时,则所述第一类型network key为高安全类型对应的network key,当所述目标节点的安全类型为低安全类型时,则所述第一类型network key为低安全类型对应的network key。
步骤S24、当预先生成有第一类型network key时,确定所述根据所述第一类型network key的有效期,确定所述第一类型network key是否有效。若是,执行步骤S25的操作,若否,执行步骤S26的操作。
步骤S25、当所述第一类型network key有效时,确定所述第一类型network key为所述目标节点对应的network key,或者,确定重新生成的第一类型network key为所述目标节点对应的network key。然后,再执行步骤S27的操作。
步骤S26、当所述第一类型network key失效时,确定重新生成的第一类型networkkey为所述目标节点对应的network key。然后,再执行步骤S27的操作。
步骤S27、确定用于加密所述network key的链路密钥(link key)。
步骤S28、通过所述link key对所述network key加密,并向所述目标节点传输加密后的network key。
其中,步骤S28的具体操作过程与步骤S13的具体操作过程相同,可相互参照,此处不再赘述。
在步骤S21至步骤S28公开的实施例中,在确定预先生成有目标节点对应的network key(即第一类型network key)时,还基于第一类型network key的有效期,确定第一类型network key是否有效,不再应用失效的第一类型network key,从而实现对第一类型network key的及时更换,提高了第一类型network key的泄露难度。
进一步的,为了明确本申请实施例公开的方法中,确定目标节点对应的networkkey的方式,以下公开了表2,在表2对应的示例中,设定ZigBee系统中各个节点的安全类型包括高安全类型和弱安全类型。
表2
根据表2可知,在确定目标节点对应的network key时,当目标节点的安全类型为弱安全类型时,如果当前已经生成的network key仅为弱安全类型对应的network key(即network key 1),并且当前的network key(即network key 1)有效时,可确定network key1为所述目标节点对应的network key,或者,还可以生成新的network key 1,将重新生成的network key 1作为所述目标节点对应的network key。
另外,当目标节点的安全类型为弱安全类型时,如果当前已经生成的network key仅为高安全类型对应的network key(即network key 2),这种情况下,无论当前的networkkey(即network key 2)是否有效,均需生成弱安全类型对应的network key(即networkkey 1),并将生成的network key 1作为所述目标节点对应的network key。
当目标节点的安全类型为弱安全类型时,如果当前已经生成的network key仅为弱安全类型对应的network key(即network key 1),并且当前的network key(即networkkey 1)失效时,则需要生成新的network key 1,将重新生成的network key 1作为所述目标节点对应的network key。
当目标节点的安全类型为弱安全类型时,如果当前已经生成的network key同时包括弱安全类型对应的network key(即network key 1)和高安全类型对应的network key(即network key 2),在确定目标节点对应的network key时,无需考虑network key 2,而是确定network key 1是否有效。其中,当network key 1有效时,可确定network key 1为所述目标节点对应的network key,或者,还可以生成新的network key 1,将重新生成的network key 1作为所述目标节点对应的network key;当network key 1失效时,则需要生成新的network key 1,将重新生成的network key 1作为所述目标节点对应的networkkey。
在确定目标节点对应的network key时,当目标节点的安全类型为高安全类型时,如果当前已经生成的network key仅为高安全类型对应的network key(即network key2),并且当前的network key(即network key 2)有效时,可确定network key 2为所述目标节点对应的network key,或者,还可以生成新的network key 2,将重新生成的networkkey 2作为所述目标节点对应的network key。
另外,当目标节点的安全类型为高安全类型时,如果当前已经生成的network key仅为弱安全类型对应的network key(即network key 1),这种情况下,无论当前的networkkey(即network key 1)是否有效,均需生成高安全类型对应的network key(即networkkey 2),并将生成的network key 2作为所述目标节点对应的network key。
当目标节点的安全类型为高安全类型时,如果当前已经生成的network key仅为高安全类型对应的network key(即network key 2),并且当前的network key(即networkkey 2)失效时,则需要生成新的network key 2,将重新生成的network key 2作为所述目标节点对应的network key。
当目标节点的安全类型为高安全类型时,如果当前已经生成的network key同时包括弱安全类型对应的network key(即network key 1)和高安全类型对应的network key(即network key 2),在确定目标节点对应的network key时,无需考虑network key 1,而是确定network key 2是否有效。其中,当network key 2有效时,可确定network key 2为所述目标节点对应的network key,或者,还可以生成新的network key 2,将重新生成的network key 2作为所述目标节点对应的network key;当network key 2失效时,则需要生成新的network key 2,将重新生成的network key 2作为所述目标节点对应的networkkey。
进一步的,在通过步骤S25,确定重新生成的第一类型network key为所述目标节点对应的network key之后,或者,在通过步骤S26,确定重新生成的第一类型network key为所述目标节点对应的network key之后,本申请实施例还包括以下操作:
所述信任中心确定所述ZigBee系统中,与所述目标节点的安全类型相同的其他节点;
所述信任中心向所述其他节点传输所述加密后的网络密钥。
与所述目标节点的安全类型相同的其他节点之间进行通信时,以及与所述目标节点的安全类型相同的其他节点在与目标节点进行通信时,需要应用到网络密钥,并且,与所述目标节点的安全类型相同的其他节点应用的网络密钥也为第一类型network key。这种情况下,信任中线在确定重新生成的第一类型network key为所述目标节点对应的networkkey之后,需要向所述其他节点传输加密后的所述重新生成的第一类型network key,以便所述其他节点获取信任中心重新生成的第一类型network key,以保障ZigBee系统中安全类型相同的各个节点应用相同的网络密钥。
例如,当目标节点的安全类型为高安全类型时,信任中心在确定重新生成的第一类型network key为所述目标节点对应的network key之后,还会将重新生成的第一类型network key进行加密处理,并将加密后的重新生成的第一类型network key传输至ZigBee系统中其他的高安全类型的节点,从而使ZigBee系统中各个高安全类型的节点均能够应用所述重新生成的第一类型network key。
另外,在本申请实施例中,为了提高network key的泄露难度,通常对不同安全类型的节点的network key进行加密的链路密钥(link key)不同。
这种情况下,在本申请实施例的一种可行的安全类型的划分方式中,所述安全类型包括高安全类型和弱安全类型,其中,不同安全类型的目标节点所对应的链路密钥不同。
在一种可行的实现方式中,当所述目标节点的安全类型为高安全类型时,与所述目标节点的安全类型相对应的链路密钥为根据所述目标节点的安装码生成的预配置唯一链路密钥(pre-config unique link key),所述预配置唯一链路密钥用于加密高安全类型相对应的网络密钥。
这种情况下,当所述目标节点的安全类型为高安全类型时,用于加密network key的link key与该目标节点的安装码相对应,从而能够使加密不同的目标节点采用不同的link key对network key进行加密,进一步提高了network key的泄露难度。
或者,当所述目标节点的安全类型为弱安全类型时,与所述目标节点的安全类型相对应的链路密钥为预配置全局链路密钥(pre-config gobal link key),所述预配置全局链路密钥用于加密弱安全类型相对应的网络密钥
这种情况下,对于安全需求不高的目标节点,将pre-config gobal link key作为用于加密所述network key的link key,而pre-config gobal link key较易被获取,从而提高了对network key的加密效率。
基于上述实施例的介绍可知,在本申请实施例中,当安全类型包括高安全类型和弱安全类型时,针对目标节点的安全类型,可采用两种不同的对network key进行加密的方式。这种情况下,本申请实施例公开图5所示的系统示意图。
参见图5,在ZigBee系统包括信任中心100以及与所述信任中心100相连接的各个节点,与信任中心100相连接的各个节点可分为对安全性要求较高的高安全性节点210(即高安全类型的节点),以及对安全性要求较低的弱安全性节点220(即弱安全类型的节点)。另外,各个节点以及信任中心通常包括物理层、网络层和应用层。
在信任中心的网络层中,包括第一分配模块和第二分配模块,两种分配模块分别用于为不同安全类型的节点分配该节点对应的network key,其中,具体的分配方式可参照上述实施例。另外,该网络层中还包括第一加密模块和第二加密模块,两种加密模块分别用于确定不同安全类型的节点对应的network key的link key,再通过该link key对networkkey进行加密,其具体的确定link key的方式可参见上述实施例。
其中,第一分配模块用于为弱安全类型的节点分配相应的network key(即network key 1),并且,可由第一加密模块对network key 1进行加密,再将加密后的network key 1传输至弱安全性节点220。另外,第二分配模块用于为弱安全类型的节点分配相应的network key(即network key 2),并且,可由第一加密模块对network key 1进行加密,再将加密后的network key 2传输至高安全性节点210。
进一步的,信任中心在获取network key 1之后,还可通过network key 1对application key 1进行加密,再将加密后的application key 1传输至弱安全性节点220,以使弱安全性节点通过application key 1进行应用层通信。另外,信任中心在获取network key 2之后,还可通过network key 2对application key 2进行加密,再将加密后的application key 2传输至高安全性节点210,以使弱安全性节点通过application key2进行应用层通信。
另外,在该ZigBee系统中,还可以包括配网控制设备300,该配网控制设备300可向信任中心100传输目标节点的安全类型,从而使信任中心能够确定目标节点的安全类型。也就是说,在本申请实施例中,所述信任中心确定ZigBee系统中的目标节点的安全类型,包括以下操作:所述信任中心接收所述ZigBee系统中的配网控制设备传输的所述目标节点的安全类型,从而根据所述配网控制设备传输的目标节点的安全类型,确定所述目标节点的安全类型。
其中,配网控制设备为一种用于为节点进行网络信息配置,以使该节点能够加入ZigBee网络中的设备。所述配网控制设备可以为手机、平板电脑和计算机等设备,该设备通过接收工作人员的输入,能够获取到节点的相关信息,其中,该节点的相关信息中包括该节点的安全类型,从而能够确定各个节点的安全类型。另外,所述配网控制设备还可以为其他具备设备发现,能够为节点配置网络信息功能的设备,本申请实施例对此不做限定。
在本申请另一实施例中,公开一种应用于ZigBee系统的加密方法。其中,所述ZigBee系统包括信任中心、第一节点和第二节点,所述第一节点的安全类型与所述第二节点的安全类型不同,所述安全类型用于指示节点对安全性的需求。
参见图6所示的工作流程示意图,本申请实施例公开的方法包括以下步骤:
步骤S31、所述信任中心根据所述第一节点对应的第一安全类型,确定所述第一节点对应的第一网络密钥(network key),并确定用于加密所述第一网络密钥(network key)的第一链路密钥(link key)。
其中,第一network key以及第一link key与所述第一节点的安全类型相对应,也就是说,当所述第一节点的第一安全类型为高安全类型时,所述第一network key为高安全类型的network key,并且,所述第一link key为高安全类型对应的link key;相应的,当所述第一节点的第一安全类型为弱安全类型时,所述第一network key为弱安全类型的network key,并且,所述第一link key为弱安全类型对应的link key。
步骤S32、所述信任中心根据所述第二节点对应的第二安全类型,确定所述第二节点对应的第二网络密钥(network key),并确定用于加密所述第二网络密钥(network key)的第二链路密钥(link key),其中,所述第一网络密钥(network key)和所述第二网络密钥(network key)不同。
其中,第二network key以及第二link key与所述第二节点的安全类型相对应。
另外,由于所述第一节点的安全类型与所述第二节点的安全类型不同,因此,第一network key与第二network key不同。进一步的,第一link key与第二link key往往也不相同。
进一步的,在实际的应用场景中,步骤S31与步骤S32在执行过程中并没有严格的时间限制,还可以先执行步骤S32的操作,然后再执行步骤S31的操作,或者,同时执行步骤S31和步骤S32的操作,本申请实施例对此不做限定。
步骤S33、所述信任中心向所述第一节点传输通过所述第一链路密钥加密后的第一网络密钥(network key),并向所述第二节点传输通过所述第二链路密钥加密后的第二网络密钥(network key)。
这种情况下,第一节点在接收到加密后的第一network key之后,可对其进行解密,并在后续的网络层通信的过程中,通过第一network key对通信数据进行加密。并且,第二节点在接收到加密后的第二network key之后,可对其进行解密,并在后续的网络层通信的过程中,通过第二network key对通信数据进行加密。
本申请实施例公开一种应用于ZigBee系统的加密方法,应用该方法的ZigBee系统中的第一节点和第二节点的安全类型不同。在该方法中,信任中心能够根据第一节点对应的第一安全类型,确定第一节点对应的第一network key以及第一link key,并且,根据第二节点对应的第二安全类型,确定第二节点对应的第二network key以及第二link key。由于第一安全节点的安全类型与第二节点的安全类型不同,相应的,第一network key与第二network key不同。然后,信任中心向第一节点传输通过第一link key加密后的第一network key,以及向第二节点传输通过第二link key加密后的第二network key。这种情况下,第一节点能够获取第一network key,从而能够在进行网络层通信时,通过第一network key对通信数据加密,并且,第二节点能够获取第二network key,从而能够在进行网络层通信时,通过第二network key对通信数据加密。
在本申请实施例中,可基于节点的安全类型,确定该节点的network key,也就是说,能够根据节点的安全类型进一步细分为其分配的network key,从而为不同安全类型的节点分配不同的network key。通过本申请实施例的方案,即使某一种安全类型的节点的network key被泄露,也无法获取到其他安全类型的节点的network key,从而提高了其他安全类型的节点的network key的泄露难度,相应的提高了ZigBee系统的安全性。
另外,在本申请实施中,公开了信任中心根据所述第一节点对应的第一安全类型,确定所述第一节点对应的第一网络密钥的操作,该操作可包括以下步骤:
当预先未生成所述第一节点的安全类型对应的第二类型network key时,所述信任中心生成所述第二类型network key,所述第二类型network key为所述第一节点对应的第一network key。
在本申请实施例中,根据各个节点的安全类型,确定各个节点对应的networkkey,其中,第一节点的安全类型对应的network key即为第二类型network key。当预先未生成第二类型network key时,信任中心会生成第二类型network key,并将其作为所述第一节点对应的第一network key。
或者,当预先生成有所述第一节点的安全类型对应的第二类型network key时,所述信任中心根据所述第二类型network key的有效期,确定所述第二类型network key是否有效。
在本申请实施例中,预先为第二类型network key设置相应的有效期,并且,还能够根据第二类型network key的生成时间以及当前时间的时间差,确定第二类型networkkey是否有效。其中,当第二类型network key的生成时间以及当前时间的时间差不大于所述有效期时,则表明该第二类型network key有效,另外,当所述时间差大于所述有效期时,则可确定第二类型network key失效。
当所述第二类型network key有效时,所述信任中心确定所述第二类型networkkey为所述第一network key,或者,确定重新生成的第二类型network key为所述第一network key。
当所述第二类型network key有效时,则可继续沿用所述第二类型network key,这种情况下,确定所述第二类型network key为所述第一network key。另外,为了提高network key的泄露难度,还可以重新生成第二类型network key,将重新生成的第二类型network key作为第一network key。
当所述第二类型network key失效时,所述信任中心确定重新生成的第二类型network key为所述第一network key。
当所述第二类型network key失效时,则不再沿用所述第二类型network key,而是重新生成第二类型network key,将重新生成的第一类型network key作为第一节点的第一network key。
通过上述步骤,能够根据第一节点的安全类型,确定所述第一节点对应的第一network key。并且,该实施例在确定第一network key时,为network key设置相应的有效期,从而能够根据第一节点的安全类型,以及network key的有效期综合确定第一节点对应的第一network key。这种情况下,能够及时更换network key,从而提高network key的泄露难度,提高了ZigBee系统的安全性。
另外,信任中心还能够根据第二节点对应的第二安全类型,确定第二节点对应的第二网络密钥,在确定所述第二网络密钥时,可采用以下步骤:
当预先未生成所述第二节点的安全类型对应的第三类型网络密钥时,所述信任中心生成所述第三类型网络密钥,所述第三类型网络密钥为所述第二节点对应的第二网络密钥;
或者,
当预先生成有所述第二节点的安全类型对应的第三类型网络密钥时,所述信任中心根据所述第三类型网络密钥的有效期,确定所述第三类型网络密钥是否有效;
当所述第三类型网络密钥有效时,所述信任中心确定所述第三类型网络密钥为所述第二网络密钥,或者,确定重新生成的第三类型网络密钥为所述第二网络密钥;
当所述第三类型网络密钥失效时,所述信任中心确定重新生成的第三类型网络密钥为所述第二网络密钥。
在本申请实施例中,根据各个节点的安全类型,确定各个节点对应的networkkey,其中,第二节点的安全类型对应的network key即为第三类型network key。
另外,在本申请实施例中,还需要预先为第三类型network key设置有效期,其中,所述第二类型network key和第三类型network key的有效期可以相同,或者,第二类型network key和第三类型network key的有效期也可以不同,即为不同安全类型的networkkey设置不同的有效期。这种情况下,通常设置安全类型越高的network key的有效期越短。
进一步的,在所述信任中心确定重新生成的第二类型network key为所述第一network key之后,还包括:
所述信任中心确定所述ZigBee系统中,与所述第一节点的安全类型相同的其他节点;
所述信任中心向所述节点传输所述加密后的第一network key。
例如,当所述第一节点为高安全类型的节点时,信任中心还需要确定ZigBee系统中其他的高安全类型的节点,并向其传输加密后的第一network key。
在本申请实施例中,节点的安全类型包括高安全类型和弱安全类型,当某一节点对安全性的需求较高时,该节点的安全类型即为高安全类型,当某一节点对安全性的需求较低时,该节点的安全类型即为低安全类型。
当然,在本申请的应用过程中,节点的安全类型还可以进一步划分,从而将节点的安全类型划分为更多种,本申请对此不做限定。
进一步的,在一种可行的实现方式中,不同安全类型的节点所对应的link key不同。
由于节点对应的link key用于对该节点对应的network key进行加密,因此,不同安全类型的节点对应的link key不同,能够进一步提高network key泄露的难度。
具体的,当所述第一节点的安全类型为高安全类型时,所述第一链路密钥为根据所述第一节点的安装码生成的预配置唯一链路密钥(pre-config unique link key),所述预配置唯一链路密钥(pre-config unique link key)用于加密高安全类型相对应的网络密钥。
其中,当所述第一节点的安全类型为高安全类型时,用于加密第一network key的第一link key与第一节点的安装码相对应,从而能够针对不同的高安全类型的节点的第一network key,采用不同的第一link key对其进行加密,进一步提高了network key的泄露难度。
另外,所述第二节点的安全类型为弱安全类型时,所述第二链路密钥为预配置全局链路密钥,所述预配置全局链路密钥用于加密弱安全类型相对应的网络密钥。
也就是说,对于安全需求不高的节点(即弱安全类型的节点),将pre-configgobal link key作为用于加密该network key的link key,pre-config gobal link key较易被获取,从而提高了对network key的加密效率。
进一步的,ZigBee系统中往往还会加入新的节点。其中,当所述ZigBee系统还包括新增的第三节点时,所述方法还包括:
所述信任中心确定所述第三节点对应的安全类型;
当所述第三节点对应的安全类型为所述第一安全类型时,所述信任中心向所述第三节点传输通过所述第一link key加密后的第一network key,也就是说,所述信任中心为所述第三节点分配所述第一network key;
当所述第三节点对应的安全类型为所述第二安全类型时,所述信任中心向所述第三节点传输通过所述第二link key加密后的第二network key,也就是说,所述信任中心为所述第三节点分配所述第二network key。
在ZigBee系统中往往包括多个节点,所述多个节点与信任中心相连接,并且,ZigBee系统中还可以加入新的节点。通过上述步骤可知,当ZigBee系统中加入新的节点时,信任中心会根据新增的节点的安全类型,为其分配相应的network key。也就是说,信任中心能够根据之前分配的network key,以及新增的节点的安全类型,为新增的节点分配相应的network key,从而能够根据新增的节点的类型为该节点分配相应的network key。
进一步的,当ZigBee系统中的各个节点的安全类型均与新增的节点的安全类型不同时,信任中心会根据新增的节点的安全类型,分配新的network key。
为了明确如何为ZigBee系统中新增的节点分配network key,本申请公开以下示例。参见图7所示的ZigBee系统的示意图,其中,图7为一种星型的ZigBee系统的网络拓扑图,在该示例中,所述ZigBee系统中包括第一节点10和第二节点20,第一节点10和第二节点20均与信任中心30相连接,其中,第一节点10和第二节点20的安全类型不同。
所述信任中心30根据第一节点10对应的第一安全类型,确定第一节点10对应的第一network key,再通过第一link key对所述第一network key进行加密,再将加密后的第一network key传输至第一节点10,从而为第一节点10分配第一network key。另外,所述信任中心30根据第二节点20对应的第一安全类型,确定第二节点20对应的第二network key,再通过第二link key对所述第二network key进行加密,再将加密后的第二network key传输至第二节点20,从而为第二节点20分配第二network key。其中,第一network key与第二network key不同。
当ZigBee系统中新增第三节点40时,信任中心30确定第三节点40的安全类型。其中,当第三节点40的安全类型为高安全类型,第一节点的安全类型也为高安全类型时,信任中心30确定所述第三节点40的安全类型与第一节点10的安全类型相同,则将通过第一linkkey加密后的第一network key传输至第三节点40,从而为第三节点40分配第一networkkey。
当第三节点40的安全类型为弱安全类型,第二节点20的安全类型也为弱安全类型时,信任中心30确定所述第三节点40的安全类型与第二节点20的安全类型相同,则将通过第二link key加密后的第二network key传输至第三节点40,从而为第三节点40分配第二network key。
进一步的,当各个节点的安全类型的划分更为多样时,例如安全类型划分为三种,分别为弱安全类型、中等安全类型和高安全类型,所述第三节点40的安全类型可能与第一节点10和第二节点20的安全类型均不相同。当第三节点40的安全类型与第一节点10和第二节点20的安全类型均不相同时,信任中心30确定第三节点40对应的network key为第三network key,并通过第三link key对第三network key进行加密,再将加密后的第三network key传输至第三节点40,即为第三节点40分配第三network key。其中,第三network key与第一network key和第二network key均不相同。
通过上述实施例,信任中心能够根据新增的节点的安全类型,为ZigBee系统中新增的节点分配相应的network key。
下述为本发明装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。
在本申请实施例中公开一种应用于ZigBee系统的加密装置,该装置通常应用于ZigBee系统中的信任中心,该信任中心可生成各个节点所需的network key。
参见图8所示的结构示意图,本申请实施例公开的应用于ZigBee系统的加密装置包括:
处理器110、存储器120和收发器130;
其中,所述存储器120,用于存储程序指令;
所述处理器110,用于调用并执行所述存储器中存储的程序指令,所述处理器执行所述程序指令时,使得所述装置执行前述各方法实施例中的方法。
在本申请实施例中,可基于节点的安全类型,确定该节点的network key,也就是说,能够根据节点的安全类型进一步细分为其分配的network key,从而为不同安全类型的节点分配的network key不同。这种情况下,即使某一安全类型的节点的network key被泄露,也无法获取到其他安全类型的节点的network key,从而提高了其他安全类型的节点的network key的泄露难度,并提高了ZigBee系统的安全性。
进一步的,当ZigBee系统中加入新的节点时,信任中心会根据新增的节点的安全类型,为其分配相应的network key。也就是说,信任中心能够根据之前分配的networkkey,以及新增的节点的安全类型,为新增的节点分配相应的network key,从而能够根据新增的节点的类型为该节点分配相应的network key。
另外,当ZigBee系统中的各个节点的安全类型均与新增的节点的安全类型不同时,信任中心会根据新增的节点的安全类型,分配新的network key。
具体实现中,本申请实施例还提供一种计算机可读存储介质,其中,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,可使所述计算机实施包括图3、图4和图6对应的实施例中的全部或部分步骤。该计算机可读存储介质设置在任意设备中,所述任意设备可为随机存取存储器(random-access memory,RAM),该存储器也可以包括非易失性存储器(non-volatile memory),例如只读存储器(read-only memory,ROM),快闪存储器(flash memory),硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD);存储器还可以包括上述种类的存储器的组合等。
具体实现中,本申请实施例还提供一种包含指令的计算机程序产品,当所述计算机程序产品在电子设备上运行时,使得所述电子设备执行包括图3、图4和图6对应的实施例中的全部或部分步骤。
本申请实施例中所描述的各种说明性的逻辑单元和电路可以通过通用处理器,数字信息处理器,专用集成电路(ASIC),现场可编程门阵列(FPGA)或其它可编程逻辑装置,离散门或晶体管逻辑,离散硬件部件,或上述任何组合的设计来实现或操作所描述的功能。通用处理器可以为微处理器,可选地,该通用处理器也可以为任何传统的处理器、控制器、微控制器或状态机。处理器也可以通过计算装置的组合来实现,例如数字信息处理器和微处理器,多个微处理器,一个或多个微处理器联合一个数字信息处理器核,或任何其它类似的配置来实现。
本申请实施例中所描述的方法或算法的步骤可以直接嵌入硬件、处理器执行的软件单元、或者这两者的结合。软件单元可以存储于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动磁盘、CD-ROM或本领域中其它任意形式的存储媒介中。示例性地,存储媒介可以与处理器连接,以使得处理器可以从存储媒介中读取信息,并可以向存储媒介存写信息。可选地,存储媒介还可以集成到处理器中。处理器和存储媒介可以设置于ASIC中,ASIC可以设置于UE中。可选地,处理器和存储媒介也可以设置于UE中的不同的部件中。
应理解,在本申请的各种实施例中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
本说明书的各个部分均采用递进的方式进行描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点介绍的都是与其他实施例不同之处。尤其,对于装置和系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例部分的说明即可。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。

Claims (17)

1.一种应用于ZigBee系统的加密方法,其特征在于,包括:
所述ZigBee系统中的信任中心确定ZigBee系统中的目标节点的安全类型,所述目标节点为需要获取网络密钥的节点,所述目标节点的安全类型用于指示所述目标节点对安全性的需求;
所述信任中心根据所述目标节点的安全类型,确定所述目标节点对应的网络密钥,以及确定用于加密所述网络密钥的链路密钥,其中,不同安全类型的目标节点所对应的网络密钥不同;
所述信任中心通过所述链路密钥对所述网络密钥加密,并向所述目标节点传输加密后的网络密钥。
2.根据权利要求1所述的方法,其特征在于,所述信任中心根据所述目标节点的安全类型,确定所述目标节点对应的网络密钥,包括:
当预先未生成第一类型网络密钥时,所述信任中心生成所述第一类型网络密钥,其中,所述第一类型网络密钥为所述目标节点的安全类型对应的网络密钥;
或者,
当预先生成有第一类型网络密钥时,所述信任中心根据所述第一类型网络密钥的有效期,确定所述第一类型网络密钥是否有效;
当所述第一类型网络密钥有效时,所述信任中心确定所述第一类型网络密钥为所述目标节点对应的网络密钥,或者,确定重新生成的第一类型网络密钥为所述目标节点对应的网络密钥;
当所述第一类型网络密钥失效时,所述信任中心确定重新生成的第一类型网络密钥为所述目标节点对应的网络密钥。
3.根据权利要求2所述的方法,其特征在于,在所述信任中心确定重新生成的第一类型网络密钥为所述目标节点对应的网络密钥之后,还包括:
所述信任中心确定所述ZigBee系统中,与所述目标节点的安全类型相同的其他节点;
所述信任中心向所述其他节点传输所述加密后的网络密钥。
4.根据权利要求1-3任一项所述的方法,其特征在于,
所述安全类型包括高安全类型和弱安全类型;
不同安全类型的目标节点所对应的链路密钥不同。
5.根据权利要求4所述的方法,其特征在于,所述目标节点的安全类型为高安全类型时,与所述目标节点的安全类型相对应的链路密钥为根据所述目标节点的安装码生成的预配置唯一链路密钥,所述预配置唯一链路密钥用于加密高安全类型相对应的网络密钥。
6.根据权利要求4所述的方法,其特征在于,所述目标节点的安全类型为弱安全类型时,与所述目标节点的安全类型相对应的链路密钥为预配置全局链路密钥,所述预配置全局链路密钥用于加密弱安全类型相对应的网络密钥。
7.根据权利要求1所述的方法,其特征在于,所述信任中心确定ZigBee系统中的目标节点的安全类型,包括:
所述信任中心接收所述ZigBee系统中的配网控制设备传输的所述目标节点的安全类型。
8.一种应用于ZigBee系统的加密方法,其特征在于,所述ZigBee系统包括信任中心、第一节点和第二节点,所述第一节点的安全类型与所述第二节点的安全类型不同,所述安全类型用于指示节点对安全性的需求,所述方法包括:
所述信任中心根据所述第一节点对应的第一安全类型,确定所述第一节点对应的第一网络密钥,并确定用于加密所述第一网络密钥的第一链路密钥;
所述信任中心根据所述第二节点对应的第二安全类型,确定所述第二节点对应的第二网络密钥,并确定用于加密所述第二网络密钥的第二链路密钥,其中,所述第一网络密钥和所述第二网络密钥不同;
所述信任中心向所述第一节点传输通过所述第一链路密钥加密后的第一网络密钥,并向所述第二节点传输通过所述第二链路密钥加密后的第二网络密钥。
9.根据权利要求8所述的方法,其特征在于,所述信任中心根据所述第一节点对应的第一安全类型,确定所述第一节点对应的第一网络密钥,包括:
当预先未生成所述第一节点的安全类型对应的第二类型网络密钥时,所述信任中心生成所述第二类型网络密钥,所述第二类型网络密钥为所述第一节点对应的第一网络密钥;
或者,
当预先生成有所述第一节点的安全类型对应的第二类型网络密钥时,所述信任中心根据所述第二类型网络密钥的有效期,确定所述第二类型网络密钥是否有效;
当所述第二类型网络密钥有效时,所述信任中心确定所述第二类型网络密钥为所述第一网络密钥,或者,确定重新生成的第二类型网络密钥为所述第一网络密钥;
当所述第二类型网络密钥失效时,所述信任中心确定重新生成的第二类型网络密钥为所述第一网络密钥。
10.根据权利要求9所述的方法,其特征在于,在所述信任中心确定重新生成的第二类型网络密钥为所述第一网络密钥之后,还包括:
所述信任中心确定所述ZigBee系统中,与所述第一节点的安全类型相同的其他节点;
所述信任中心向所述节点传输所述加密后的第一网络密钥。
11.根据权利要求8至10任一项所述的方法,其特征在于,
所述安全类型包括高安全类型和弱安全类型;
不同安全类型的节点所对应的链路密钥不同。
12.根据权利要求11所述的方法,其特征在于,所述第一节点的安全类型为高安全类型时,所述第一链路密钥为根据所述第一节点的安装码生成的预配置唯一链路密钥,所述预配置唯一链路密钥用于加密高安全类型相对应的网络密钥。
13.根据权利要求11所述的方法,其特征在于,所述第二节点的安全类型为弱安全类型时,所述第二链路密钥为预配置全局链路密钥,所述预配置全局链路密钥用于加密弱安全类型相对应的网络密钥。
14.根据权利要求8至10任一项所述的方法,其特征在于,所述ZigBee系统还包括新增的第三节点,所述方法还包括:
所述信任中心确定所述第三节点对应的安全类型;
当所述第三节点对应的安全类型为所述第一安全类型时,所述信任中心向所述第三节点传输通过所述第一链路密钥加密后的第一网络密钥;
当所述第三节点对应的安全类型为所述第二安全类型时,所述信任中心向所述第三节点传输通过所述第二链路密钥加密后的第二网络密钥。
15.一种应用于ZigBee系统的加密装置,其特征在于,所述装置包含在所述ZigBee系统中的信任中心中,所述装置包括:
处理器、存储器和收发器;
其中,所述存储器,用于存储程序指令;
所述收发器,用于收发数据;
所述处理器,用于调用并执行所述存储器中存储的程序指令,所述处理器执行所述程序指令时,使得所述装置执行如权利要求1-14任一项所述的方法。
16.一种计算机可读存储介质,其特征在于,
所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得所述计算机执行如权利要求1-14任一项所述的方法。
17.一种包含指令的计算机程序产品,其特征在于,当所述计算机程序产品在电子设备上运行时,使得所述电子设备执行如权利要求1-14中任一项所述的方法。
CN201910783852.5A 2019-08-23 2019-08-23 一种应用于ZigBee系统的加密方法及装置 Active CN110602690B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910783852.5A CN110602690B (zh) 2019-08-23 2019-08-23 一种应用于ZigBee系统的加密方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910783852.5A CN110602690B (zh) 2019-08-23 2019-08-23 一种应用于ZigBee系统的加密方法及装置

Publications (2)

Publication Number Publication Date
CN110602690A true CN110602690A (zh) 2019-12-20
CN110602690B CN110602690B (zh) 2022-01-14

Family

ID=68855320

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910783852.5A Active CN110602690B (zh) 2019-08-23 2019-08-23 一种应用于ZigBee系统的加密方法及装置

Country Status (1)

Country Link
CN (1) CN110602690B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115023920A (zh) * 2021-11-05 2022-09-06 富途网络科技(深圳)有限公司 股权激励系统中的数据处理的方法和装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090063335A (ko) * 2007-12-14 2009-06-18 삼성전기주식회사 네트워크 키를 이용하여 보안화된 지그비 네트워크에서의네트워크 접속 방법
CN105516973A (zh) * 2016-01-21 2016-04-20 北京奇虎科技有限公司 基于RSSI隐秘通信的Zigbee初始密钥分配方法
CN107222764A (zh) * 2017-07-06 2017-09-29 成都睿胜科技有限公司 利用mqtt和ssl实现双向ca安全授权的方法
CN107708112A (zh) * 2017-11-02 2018-02-16 重庆邮电大学 一种适用于mqtt‑sn协议的加密方法
US20190223014A1 (en) * 2018-01-12 2019-07-18 Qualcomm Incorporated Systems and methods for secure communication of zigbee keys
US20190229898A1 (en) * 2018-01-22 2019-07-25 Samsung Electronics Co., Ltd. Electronic apparatus, terminal apparatus and method of controlling the same

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090063335A (ko) * 2007-12-14 2009-06-18 삼성전기주식회사 네트워크 키를 이용하여 보안화된 지그비 네트워크에서의네트워크 접속 방법
CN105516973A (zh) * 2016-01-21 2016-04-20 北京奇虎科技有限公司 基于RSSI隐秘通信的Zigbee初始密钥分配方法
CN107222764A (zh) * 2017-07-06 2017-09-29 成都睿胜科技有限公司 利用mqtt和ssl实现双向ca安全授权的方法
CN107708112A (zh) * 2017-11-02 2018-02-16 重庆邮电大学 一种适用于mqtt‑sn协议的加密方法
US20190223014A1 (en) * 2018-01-12 2019-07-18 Qualcomm Incorporated Systems and methods for secure communication of zigbee keys
US20190229898A1 (en) * 2018-01-22 2019-07-25 Samsung Electronics Co., Ltd. Electronic apparatus, terminal apparatus and method of controlling the same

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
黄太波: "ZigBee 协议栈的安全体系综述", 《山东科学》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115023920A (zh) * 2021-11-05 2022-09-06 富途网络科技(深圳)有限公司 股权激励系统中的数据处理的方法和装置
CN115023920B (zh) * 2021-11-05 2024-01-19 富途网络科技(深圳)有限公司 股权激励系统中的数据处理的方法和装置

Also Published As

Publication number Publication date
CN110602690B (zh) 2022-01-14

Similar Documents

Publication Publication Date Title
US9485230B2 (en) Efficient key generator for distribution of sensitive material from multiple application service providers to a secure element such as a universal integrated circuit card (UICC)
US10419220B2 (en) Management device, key generating device, vehicle, maintenance tool, management system, management method, and computer program
US11722300B2 (en) Chip, private key generation method, and trusted certification method
US10887085B2 (en) System and method for controlling usage of cryptographic keys
CN109347839B (zh) 集中式密码管理方法、装置、电子设备及计算机存储介质
EP4343597A1 (en) Method, apparatus and system for acquiring data authorization
CN110971398A (zh) 数据处理方法、装置及系统
EP3511853B1 (en) Security authentication method, integrated circuit and system
CN111654372B (zh) 密钥管理方法及相关装置
CN113438205B (zh) 区块链数据访问控制方法、节点以及系统
CN111355684A (zh) 一种物联网数据传输方法、装置、系统、电子设备及介质
EP4357950A1 (en) Device management method, system and apparatus
CN111414640B (zh) 秘钥访问控制方法和装置
CN111427860B (zh) 分布式存储系统及其数据处理方法
CN110602690B (zh) 一种应用于ZigBee系统的加密方法及装置
CN116155491B (zh) 安全芯片的对称密钥同步方法及安全芯片装置
US11777742B2 (en) Network device authentication
CN109818734B (zh) 一种基本密钥分发方法、装置和介质
CN115438353A (zh) 一种用户数据管理方法以及相关设备
CN113038444A (zh) 生成应用层密钥的方法和装置
US20070009101A1 (en) Method for allocating secured resources in a security module
CN105338524A (zh) 一种信息传输方法及装置
CN116032519B (zh) 数据处理方法、设备及计算机可读存储介质
US20220191010A1 (en) Key management in an integrated circuit
CN106230595A (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