安全组通信的制作方法

文档序号:14040018阅读:204来源:国知局
安全组通信的制作方法

各种实施方式涉及方法和装置。具体来说,各种实施方式涉及基于第一和第二密码密钥材料(cryptographickeyingmaterial)的秘密并且还基于多播ip地址来控制分组数据的加密多播发送的技术。



背景技术:

物联网(iot)导致大量装置之间的通信,每个装置都实现对应网络的网络节点。为了处理大量装置的交互,点对多点通信(多播发送)可以成为一个强有力的工具:在这里,在某个时间点,发送网络节点可以向大量接收网络节点递送消息。

然而,已知的多播发送技术面临特定限制和缺点。例如,针对受约束环境中的iot应用(如照明领域就可能是这种情况),通常需要限定多组接收网络节点。有时,这种组的数量可能会相当高。另一方面,在例如存储器资源有限的受约束环境中,为大的组维护诸如多播ip地址的路由信息可能是困难的。另外,将网络节点之间交换的至少部分消息加密的安全通信可以是优选的。然而,可能难以维护与几个安全会话相关联的密码密钥材料。



技术实现要素:

因此,需要加密多播发送的高级技术。具体来说,需要克服和减轻上述限制和缺点中的至少一些的这种技术。具体而言,需要既能够实现安全加密又能够灵活指配多播ip地址的这种技术。

独立权利要求的特征满足了这种需求。从属权利要求限定了实施方式。

根据一方面,提供了一种方法。所述方法包括以下步骤:将网络的第一多个网络节点与第一密码密钥材料和多播ip地址相关联。所述方法还包括以下步骤:将所述网络的第二多个网络节点与第二密码密钥材料和所述多播ip地址相关联。所述第一密码密钥材料具有与所述第二密码密钥材料不同的秘密。所述方法还包括以下步骤:基于所述第一密码密钥材料的秘密和所述多播ip地址控制所述第一多个网络节点执行分组数据的加密多播发送。所述方法还包括以下步骤:基于所述第二密码密钥材料的秘密和所述多播ip地址控制所述第二多个网络节点执行分组数据的加密多播发送。

因此,所述第一多个网络节点和所述第二多个网络节点可以共享同一多播ip地址。同时,不与所述第一多个网络节点相关联(即,不拥有所述第一密码密钥材料)的给定网络节点可能不能够解密在所述第一多个网络节点之间的所述加密多播发送的消息。例如,所述第一多个网络节点可以被称为第一安全组;所述第二多个网络节点可以被称为第二安全组。所述第一多个网络节点和所述第二多个网络节点的组合(其共享所述多播ip地址)可以被称为多播组。可能有更多的多播组。

所述密码密钥材料可以指属于安全组的密码密钥、与该密钥相关联的状态(如期满或有效)、以及与该密钥有关的其它安全参数。在一些情形下,密码密钥材料可以包括一个或更多个对称密钥。对称密钥可以被发送方和接收方用于对消息进行加密和解密两者。在其它情形下,该密钥材料可以包括公钥和私钥。

一般来说,不同的安全组可以使用不同的密码加密器(cryptographiccipher);不同的安全组也可以使用相同的密码加密器。该密码加密器可以涉及被用于基于对应密码密钥材料来加密/解密的消息的加密部分的特定加密/解密算法。

具有不同秘密的所述第一密钥资料和第二密钥资料可以涉及这样一种情况,即,其中拥有针对是第一密钥材料的秘密的密钥的网络节点不能解密基于针对所述第二密钥材料的秘密的密钥加密的消息。

加密多播发送可以对应于以加密形式发送和/或接收包括所述分组数据的消息。例如,所述消息可以与分层传输协议的较低层的数据报或帧相关联;而所述分组数据可以对应于分层传输协议的较高层。由此,可以在分层传输协议的较高层执行加密/解密。基于所述多播ip地址的路由可以与分层传输协议的较低层相关联。所述控制所述第一多个网络节点执行所述加密多播发送的步骤可以包括以下步骤:向所述第一多个网络节点中的每个网络节点发送包括针对所述第一密码密钥材料的秘密的第一对称密码密钥的控制消息;并且向所述第二多个网络节点中的每个网络节点发送包括针对所述第二密码密钥材料的秘密的第二对称密码密钥的另一控制消息。另选的是或者另外,所述控制所述加密多播发送的步骤可以包括以下步骤:向所述第一多个网络节点中的每个网络节点发送包括所述多播ip地址的控制消息;并且向所述第二多个网络节点中的每个网络节点发送包括所述ip地址的另一控制消息。所述多播ip地址可以由中央控制单元指配给所述网络节点。例如,所述发送所述控制消息可以采用点对点(单播)或多播发送;所述发送所述控制消息可以采用所述网络的特定控制接口。另选的是或者另外,所述控制消息可以经由所述网络的、被用于执行所述加密多播发送的接口发送。

所述多播发送的加密在一些情况下可以保护对应消息的完整性-例如,可以检测该消息的修改和/或重播。在其它情形下,多播发送的加密另选地或者另外可以防止不拥有所述对应密码密钥材料的第三方解密并读取该消息的内容,即,所述分组数据。一般而言,不要求将整个消息加密;有时,包括所述分组数据的消息的仅一部分可以被加密。

所述网络可以是固定有线网络或无线网络。所述网络可以结合无线电发送和固定线路传送。一般来说,所述网络所采用的用于所述加密多播发送的特定接口不受限制。例如,在一些情形下,所述网络可以根据电气和电子工程师协会(ieee)无线局域网(wlan)802.11协议族、第三代合作伙伴(3gpp)技术规范(ts)22.368机器型通信(mtc)协议、电力线通信(plc)等进行操作。

一般来说,所述网络可以实现可能影响各种网络节点能力的不同功能。例如,各种网络节点可能与以下类别中的一个或更多个相关联:传感器、控制器以及致动器。典型地讲,传感器可以例如基于物理可观察性向控制器提供输入。传感器的例子在致力于照明控制的用例框架中,包括存在检测器、运动检测器、亮度检测器、按钮、灯开关、麦克风等。该控制器可以根据给定应用基于来自传感器的输入控制致动器的动作。致动器的例子在致力于照明控制的用例框架中,包括调光器、照明设备驱动器、继电器等。控制器的功能可以与传感器和/或致动器共同定位。

通过将具有给定多播ip地址的一些网络节点与所述第一密码密钥材料的秘密相关联,并且通过将具有所述给定多播ip地址的其它网络节点与所述第二密码密钥材料的不同秘密相关联,可以实现各种效果。例如,其变得可以增加所述加密多播发送的安全级别,而同时,可以保留指配所述多播ip地址的灵活性。而且,可以降低存储器要求。具体来说,可以将较大数量的网络节点分组到同一多播组中,即,将同一多播ip地址指配给较大数量的网络节点,从而减少多播ip地址空间的大小。同时,该安全组可能被限制于较少数量的网络节点;即,所述第一多个网络节点的大小和所述第二多个网络节点的大小可以被相当地限制。

所述方法还可以包括以下步骤:将所述第一多个网络节点的第一子集(subfraction)与第一应用相关联;并且将所述第一多个网络节点的第二子集与第二应用相关联。所述第一应用可以不同于所述第二应用。然后,可以在执行所述加密多播发送时,控制所述第一多个网络节点的所述第一子集,向所述分组数据添加指示所述第一应用的第一标签;还可以在执行所述加密多播发送时,控制所述第一多个网络节点的所述第二子集,向所述分组数据添加指示所述第二应用的第二标签。

例如,可以将所述标签添加至包括所述分组数据作为其净荷的消息的报头部分。所述标签可以用作该消息所属于的特定应用的指示符。

有时,与所述第一子集相关联的所述网络节点可以被称为第一应用组;而与所述第二子集相关联的所述网络节点可以被称为第二应用组。因此,可以将安全组亚构成(substructure)应用组。

例如,应用组可以包括由专员配置的以一致的方式响应事件的所有网络节点。例如,作为例子,在致力于照明控制的用例框架中,作为传感器的壁装开关和作为致动器的单个房间中的一组照明设备可能属于给定应用组。这里,该开关可以用来在单个按钮按下的同时关闭/开启该组中的所有照明设备。

通过提供是第一子集和第二子集,即,通过提供应用组,变得可以独立于安全约束和路由约束而灵活地控制事件的执行。

一般而言,不同的网络节点可以灵活地指配有不同安全组、多播组、和/或应用组或者与其相关联。在一些情形下,针对给定网络节点,可以根据该给定网络节点的位置,在不同安全组、多播组、和/或应用组之间选择,例如,在致力于取决于针对照明场景的位置的照明控制的用例框架中。照明场景可能涉及一房间或一组房间的环境照明情况。

参照应用组:在一些情形下,所述第一子集和所述第二子集可以交叠,即,可能存在与所述第一子集和所述第二子集两者相关联的网络节点。在其它情形下,所述第一子集和所述第二子集可以不相交或不交叠,即,不存在与所述第一子集和所述第二子集两者相关联的网络节点。例如,在所述第一子集和所述第二子集交叠的情况下,可以仅实现控制器功能的网络节点与所述第一子集和所述第二子集两者相关联;另选的是,可以仅实现控制器功能或传感器功能的网络节点与所述第一子集和所述第二子集两者相关联。

一般来说,指示所述特定应用组的标签可以利用所述安全组的对应密码密钥材料的秘密来加密;然而,也可以不利用所述安全组的对应密码密钥材料的秘密对标签进行加密。例如,在执行所述加密多播发送时,可以将所述第一多个网络节点的所述第一子集控制成向所述分组数据添加未基于所述第一密码密钥材料的秘密而加密的第一标签。同样地,在执行所述加密多播发送时,可以将所述第一多个网络节点的所述第二子集控制成向所述分组数据添加未基于所述第一密码密钥材料的秘密而加密的第二标签。

在所述标签未加密的情况下,可以减少由接收网络节点施加的计算负担;例如,与和用所述标签指示相比不同的应用组相关联但具有同一安全组的那些网络节点不需要解码,以便找出所述消息的所述分组数据是不相关的。

再次参照安全组:在一些情形下,所述第一多个网络节点和所述第二多个网络节点可以不交叠。即,可能没有与所述第一多个网络节点和所述第二多个网络节点两者相关联的网络节点。换句话说,可能的是,所述第一安全组和所述第二安全组(对应于所述第一多个网络节点和所述第二多个网络节点)不共享公共网络节点。

在第一多个网络节点和所述第二多个网络节点不交叠的情况下,其可以增加安全级别。另一方面,通常需要经由拥有所述第一密码密钥材料和第二密码密钥材料和/或主密钥材料两者的中央控制单元来处理安全组间的通信。这可能会增加网络的延迟和复杂性。

在另一情形下,所述网络的第三多个网络节点可以与第三密码密钥材料相关联。所述第三密码密钥材料可以具有与所述第一密码密钥材料和所述第二密码密钥材料不同的秘密。然后,所述方法还可以包括以下步骤:基于所述第三密码密钥材料的秘密控制所述第三多个网络节点执行加密发送。这里,所述第一多个网络节点和所述第三多个网络节点可以交叠。而且,所述第二多个网络节点和所述第三多个网络节点可以交叠。

在这种情况下,所述第一安全组与所述第二安全组之间的安全组间通信可以由第三安全组(对应于所述第三多个网络节点)来处理。那么,在安全组间通信中涉及中央控制器可能是耗费的。

而且,在这种情况下,可以实现安全级别的层次结构。例如,虽然所述第一安全组和第二安全组可以在较低级别的层次结构上相关联,但所述第三个安全组可以与该层次结构中的更高级别相关联。所述第三安全组的网络节点可以指示所述第一安全组和第二安全组两者的网络节点-而所述第一安全组和第二安全组的网络节点不能彼此指示。同样地,就安全性而言,如果与和所述第一多个网络节点和/或所述第二多个网络节点相关联的网络节点的数量相比,那么可能希望较少数量的网络节点与所述第三多个网络节点相关联。

而且,可能希望限制与所述第一多个网络节点和所述第三多个网络节点两者相关联的网络节点的数量,相应地希望限制与所述第二多个网络节点和所述第三多个网络节点两者相关联的网络节点的数量。换句话说,可能希望限制所述第一多个网络节点与所述第三多个网络节点之间的交叠,相应地希望限制所述第二多个网络节点与第三多个网络节点之间的交叠。例如,在一些情况下,可能仅单个网络节点是所述第一多个网络节点和所述第三多个网络节点两者的一部分;同样地,在不同情形下,可能仅单个网络节点是所述第二多个网络节点和所述第三多个网络节点两者的一部分。因而,可以通过单个网络节点形成所述交叠。

而且,可能希望限制与所述第一多个网络节点和所述第三多个网络节点两者相关联的网络节点的类型或类别,相应地希望限制与所述第二多个网络节点和第三多个网络节点两者相关联的网络节点的类型或类别。例如,可能希望将第一多个网络节点和所述第三多个网络节点之间的交叠、和相应地将第二多个网络节点和所述第三多个网络节点之间的交叠限制成实现控制器功能的网络节点。在其它情形下,可以将所述交叠限制成实现传感器功能的网络节点和/或实现致动器功能的网络节点。

在其它情形下,所述第一多个网络节点和所述第二多个网络节点也可以交叠。因此,可能有与第一多个网络节点和所述第二多个网络节点两者相关联的一个或更多个网络节点。在这种情况下,可以按精益且有效的方式实现安全组间通信。

可能希望将所述第一多个网络节点与所述第二多个网络节点之间的所述交叠限制成较少数量的网络节点。例如,在一些情况下,可能仅单个网络节点与第一多个网络节点和第二多个网络节点两者相关联。因而,可以通过单个网络节点形成所述交叠。

在另一些情形下,第一多个网络节点和所述第二多个网络节点之间的交叠可以被限制成某些类别或类型的网络节点。例如,在一些情形下,所述第一多个网络节点与所述第二多个网络节点之间的交叠可以被限制成实现控制器功能的网络节点。另选的是或者另外,第一多个网络节点与第二多个网络节点之间的交叠可以被限制成实现传感器功能的网络节点和/或实现致动器功能的网络节点。

在一些情形下,所述分组数据可以是分组应用层数据。这里,所述基于所述第一密码密钥材料和所述第一多播ip地址来控制所述第一多个网络节点执行所述加密多播发送的步骤可以包括以下步骤:控制所述第一多个网络节点利用所述第一密码密钥材料的秘密加密和解密所述分组应用层数据。而且,所述基于第二密码密钥材料和所述第一多播ip地址控制所述第二多个网络节点执行加密多播发送的步骤可以包括以下步骤:控制所述第二多个网络节点利用所述第二密码密钥材料的秘密加密和解密分组应用层数据。

在这种情况下,根据开放系统互连(osi)分层传输协议,可以在相对较高的层中基于密码密钥材料来实现加密/解密。由此,可以将密码功能从路由功能中分离并封装,其基于所述多播ip地址,通常驻留在osi模型的较低层。

根据目前所讨论方面的方法还可以包括以下步骤:针对所述第一多个网络节点中的给定网络节点:建立与所述第一密码密钥材料和所述多播ip地址相关联的唯一令牌;所述网络的控制单元从所述第一多个网络节点中的所述给定网络节点接收包括所述唯一令牌的请求消息;响应于接收到该请求消息:所述控制单元从数据库中检索针对所述第一密码密钥材料的秘密的密码密钥;以及所述控制单元向所述第一多个网络节点中的所述给定网络节点发送包括针对所述第一密码密钥材料的秘密的所述密码密钥的响应消息。

所述令牌可以是网络节点特定的。每个网络节点可以具有单独且唯一的令牌。由此,专员可以将不同的权限指配给由对应令牌标识的不同网络节点。

借助于所述令牌,可以传递所述密码密钥材料以及网络各方之间的授权信息。为了改进互操作性,令牌格式可以标准化。令牌的不同格式是可能的。一种形式就是jsonweb令牌。该令牌可以包括另一密钥;借助于该另一密钥,可以采用消息认证,以便在令牌交换期间防止伪造。能力(其有时被称为要求)可以被包括在该令牌中,并且可以规定对应网络节点的访问级别和关联应用组。可以实现的另一形式令牌是采用如在ietfrfc7049中限定的简明二进制对象表示(cbor)的二进制格式。

借助于所述令牌,可以将所述密码密钥实现成具有有限使用期限的密码密钥材料的秘密。例如,该有限使用期限可以指定所述密码密钥的有限的有效性。一旦该密码密钥期满,借助于所述令牌,就可以将密码密钥分布在各个安全组的网络节点之间。

根据各个方面,提供了一种装置。所述装置包括被配置成与网络的网络节点通信的接口。所述装置还包括数据库,该数据库包括针对每个网络节点的条目。所述装置还包括至少一个处理器,该至少一个处理器被配置成将第一多个网络节点中的每个网络节点的所述条目与第一密码密钥材料和多播ip地址相关联。所述至少一个处理器还被配置成将第二多个网络节点中的每个网络节点的所述条目与第二密码密钥材料和所述多播ip地址相关联。所述至少一个处理器被配置成经由所述接口基于所述第一密码密钥材料和所述多播ip地址控制所述第一多个网络节点执行分组数据的加密多播发送。所述至少一个处理器还被配置成经由所述接口基于所述第二密码密钥材料和所述多播ip地址控制所述第二多个网络节点执行分组数据的加密多播发送。

根据当前所讨论方面的装置可以被配置成执行根据本申请另一方面的方法。

对于根据目前所讨论方面的装置来说,可以实现这样的效果,即,其可以比得上可以通过根据本申请另一方面的方法所实现的效果。

根据一方面,提供了一种包括可以通过处理器执行的程序代码的计算机程序。执行该程序代码使所述处理器执行这样一方法,即,该方法包括以下步骤:将网络的第一多个网络节点与第一密码密钥材料和多播ip地址相关联。所述方法还包括以下步骤:将所述网络的第二多个网络节点与第二密码密钥材料和所述多播ip地址相关联。所述第一密码密钥材料具有与所述第二密码密钥材料不同的秘密。所述方法还包括以下步骤:基于所述第一密码密钥材料的秘密和所述多播ip地址控制所述第一多个网络节点执行分组数据的加密多播发送。所述方法还包括以下步骤:基于所述第二密码密钥材料的秘密和所述多播ip地址控制所述第二多个网络节点执行分组数据的加密多播发送。

对于根据目前所讨论方面的计算机程序产品来说,可以实现这样的效果,即,其可以比得上可以通过根据本申请另一方面的方法所实现的效果。

根据一方面,提供了一种方法。所述方法包括以下步骤:网络的网络节点接收密码密钥材料和多播ip地址。所述方法还包括以下步骤:所述网络节点基于所述密码密钥材料的秘密来加密分组应用层数据。所述方法还包括以下步骤:所述网络节点基于所述多播ip地址,按多播发送向另一些网络节点发送包括所述加密分组应用层数据的消息。

例如,所述方法还可以包括以下步骤:所述网络节点检查针对所述密码密钥材料的秘密的有效密钥是否可用;并且响应于所述检查,选择性地向控制单元发送请求消息。该请求消息可以包括唯一令牌。所述方法还可以包括以下步骤:所述网络节点从所述控制单元接收对消息的响应,所述响应信息包括针对所述密码密钥材料的秘密的所述有效密钥。

在一些情形下,所述网络节点可以响应于发送所述分组应用层数据的需要而发送所述请求消息。

根据一方面,提供了一种网络中的网络节点。所述网络节点包括被配置成与另一些网络节点通信的接口。所述网络节点还包括至少一个处理器,该至少一个处理器被配置成接收密码密钥材料和多播ip地址。所述至少一个处理器被配置成基于所述密码密钥材料的秘密来加密分组应用层数据。所述至少一个处理器被设置成基于所述多播ip地址经由所述接口按多播发送向所述另一些网络节点发送包括所述加密分组应用层数据的消息。

根据目前所讨论方面的网络节点可以被配置成执行根据本申请的另一方面的方法。

对于根据目前所讨论方面的网络节点来说,可以实现这样的效果,即,其可以比得上可以通过根据本申请的另一方面的方法所实现的效果。

根据一方面,提供了一种包括可以通过处理器执行的程序代码的计算机程序。执行该程序代码使所述处理器执行这样一方法,即,该方法包括以下步骤:网络的网络节点接收密码密钥材料和多播ip地址。所述方法还包括以下步骤:所述网络节点基于所述密码密钥材料的秘密来加密分组应用层数据。所述方法还包括以下步骤:所述网络节点基于所述多播ip地址按多播发送向另一些网络节点发送包括所述加密分组应用层数据的消息。

根据一方面,提供了一种方法。所述方法包括以下步骤:网络的网络节点接收密码密钥材料和所述多播ip地址。所述方法还包括以下步骤:所述网络节点基于所述多播ip地址,按多播发送从另一些网络节点接收包括加密分组应用层数据的消息。所述方法还包括以下步骤:所述网络节点基于所述密码密钥材料的秘密来解密分组应用层数据。

在所述另一些网络节点和所述网络节点不是同一安全组的一部分的情况下,可以对所述分组应用层数据字段进行解密。

在所述另一些网络节点和所述网络节点是同一安全组的一部分的情况下,对所述分组应用层数据的解密可以成功。

要明白的是,在不脱离本发明的范围的情况下,上述特征和下面仍要说明的那些特征不仅可以在所指示的相应组合中使用,而且在其它组合中或孤立地使用。

附图说明

当结合附图阅读时,根据下面的详细描述,本发明的前述和附加特征以及效果将变明白,其中,相同标号表示相同部件。

图1示意性地例示了根据各种实施方式的、包括被配置成执行加密多播发送的多个网络节点的网络的架构,其中,图1例示了在试运行阶段期间的架构。

图2示意性地例示了根据各种实施方式的、包括被配置成执行加密多播发送的多个网络节点的网络的架构,其中,图2例示了在操作阶段期间的架构。

图3示意性地例示了根据图1和图2的网络的控制单元,其中,该控制单元包括数据库,该数据库包括将第一多个网络节点与第一密码密钥材料和多播ip地址相关联的条目,并且还包括将第二多个网络节点与第二密码密钥材料和所述多播ip地址相关联的条目,所述第一多个网络节点由此实现第一安全组,并且所述第二多个网络节点实现第二安全组。

图4示意性地例示了图3的数据库的、针对第一安全组和第二安全组的五个示例性网络节点的条目。

图5a是第一安全组和第二安全组的venn图,其中,第一安全组包括与第一应用相关联的网络节点的第一子集法,并且还包括与第二应用相关联的网络节点的第二子集,其中,所述第一子集由此实现第一应用组,并且其中,第二子集实现第二应用组。

图5b例示了图5a的第一安全组的网络节点在照明场景中的位置。

图5c是例示图5a的第一应用组中的第一应用和第二应用组中的第二应用的信令图。

图6a总体上对应于图5a,其中,第三安全组与第一安全组交叠,其中,第三安全组的网络节点与第一应用组和第二应用组相关联。

图6b例示了图6a的第一安全组和第三安全组的网络节点在照明场景中的位置。

图6c是例示图6a的第一应用组中的第一应用和第二应用组中的第二应用的信令图。

图7示意性地例示了包括指示应用组的未加密标签和加密应用层数据包的消息。

图8例示了分层传输协议的包括应用层的多个层。

图9例示了根据唯一令牌向密码密钥材料的秘密分配密钥。

图10是根据各种实施方式的方法的流程图。

具体实施方式

下面,参照附图,对本发明的实施方式进行详细描述。要明白的是,实施方式的下列描述不按限制性意义来看待。本发明的范围不是旨在根据下面描述的实施方式或者根据附图来限制,其仅被视为例示性的。

附图要被视为示意性表述,而且图中例示部件不必按比例示出。相反地,不同部件被表示成,使得本领域技术人员明白它们的功能和一般目的。图中所示或在此描述的功能模块、装置、组件,或者其它物理或功能单元之间的任何连接或联接也可以通过间接连接或联接来实现。组件之间的联接还可以通过无线连接来建立。功能模块可以按硬件、固件、软件,或其组合来实现。

下面,讨论了与网络中的安全多播发送有关的各种技术。在这点上,安全多播发送可以涉及这样的多播发送,即,利用在网络节点之间共享的秘密至少部分地加密诸如数据报或帧的消息;将密码密钥材料与该秘密相关联。根据各种实施方式,不同的网络节点可以与不同的密码密钥材料相关联。例如,第一多个网络节点可以与第一密码密钥材料相关联,并且第二多个网络节点可以与第二密码密钥材料相关联;这里,第一密码密钥材料可以具有与第二密码密钥材料不同的秘密。

有时,基于给定秘密共享密码密钥材料的那些网络节点可以被称为与给定安全组相关联。例如,安全组可以包括一组发送和/或接收网络节点,其中,给定安全组的每个发送网络节点能够安全地向该给定安全组的所有接收网络节点发送消息。另一方面,由于不同的安全组可能依赖具有不同秘密的密码密钥材料,因而,与给定安全组不相关联的网络节点可能无法解密利用该给定安全组的密码密钥材料保护的消息。由此,该消息可能只能通过与该给定安全组相关联的那些网络节点解密。

例如,在将对称密钥用作密码密钥材料的一部分来保护给定安全组的消息的情形中,可以假定该给定安全组的每个网络节点都可以访问这个对称密钥。通过利用对称密钥,可以减少加密多播发送的延迟。

网络中的多播发送采用多播ip地址。该多播ip地址可以标识多个网络节点;同样地,所述多个网络节点可以共享同一多播ip地址。有时,共享多播ip地址的那些网络节点可以被称为与给定多播组相关联。多播组可以包括预订同一多播ip地址的所有网络节点集合。每个网络可以有单个多播ip组或者每个网络可以有多个多播ip地址。

可以在链路层804(参照图8)(即,osi中的第二层,如以太网多播)中以及在因特网或网络层803(参见图8)(即,针对用于因特网协议版本4(ipv4)或版本6(ipv6)多播的osi的第3层)使用多播寻址和路由。

通过将安全方面与路由方面分离,在路由中可以实现更大的灵活性-而同时,可以实现更高的安全性。可以使安全组更小,并且可以使多播组更大。

图1示意性地例示了根据各种实施方式的网络100的架构;图1例示了在试运行阶段期间的架构。图1中的网络100包括:授权单元111、两个网络节点120、121、以及中央控制单元110。在其它情形下,大量的网络节点120、121可以连接至网络100。

中央控制单元110被配置成生成用于不同网络节点120、121的密码密钥材料以使能进行安全多播发送。而且,中央控制单元110被配置成将密码密钥材料分配给网络节点120、121。具体来说,中央控制单元110可以被配置成根据与给定网络节点120、121所关联的特定安全组来提供密码密钥材料;将各个网络节点120、121与安全组和/或多播ip地址相关联,每个网络节点120、121可以被指配唯一令牌。而且,中央控制单元110被配置成基于特定事件(如密码密钥的使用期限期满或者网络节点120、121与安全组的关联改变)来旋转密码密钥材料的至少一部分。

授权单元111被配置成管理和存储与各个网络节点120、121相关联的授权信息。例如,各种网络节点120、121的授权信息可以指定网络节点120、121在网络100中的特定角色。例如,授权信息可以包括各种网络节点120、121与不同安全组和/或不同应用组的关联。例如,授权信息可以包括各种网络节点120、121与一个或更多个多播ip地址的关联。例如,授权信息可以包括关于网络节点120、121的位置的信息。而且,授权单元111可以被配置成执行认证和授权;这可能是因为访问权限可以被限制于网络100的特定订户。资源所有者可以指定限定哪个网络节点120、121被允许执行哪些动作的授权策略。

一般来说,根据各种实施方式,虽然各种网络节点120、121被允许执行的动作的范围可以宽泛地变化,但网络节点可以执行的特定动作可以基于网络节点的分类。网络节点的典型分类可以对应于:传感器、控制器、以及致动器。例如,传感器可以检测如光、移动或力的(物理)现象。传感器的例子包括:光传感器、存在传感器以及按钮。控制器可以将(例如,从传感器接收的)输入链接至输出;该输出用于转发到致动器。控制器可以实施可以由应用限定的特定行为。该致动器可以导致如由根据应用的控制而指示的动作。

在典型应用中,一个传感器的输出可能被一个以上的控制器使用。单个控制器可能控制大量的致动器。单个致动器可以由多个控制器控制。此外,单个物理装置可能实现不同的功能;例如,单个物理装置可以实现传感器功能和控制器功能等。

多个网络节点可以与特定应用相关联-有时,与该特定应用相关联的那些网络节点被认为是应用组的一部分。

授权单元111可以被实现为逻辑功能。例如,授权单元111可以在移动装置中实现,该移动装置可以由专员携带并且仅在试运行阶段期间存在。在其它使用情况下,利用他们的智能电话控制网络功能的用户可能需要授权单元111动态地执行访问控制决策。图1示出了试运行阶段,其中,网络节点120、121从授权单元111获取配置信息,配置信息包括与每个网络节点相关联的唯一令牌。该令牌允许访问密码密钥材料的密钥,并因此,可以包括用于供中央控制单元110消费的授权声明。ietfrfc6749给出了示例。

该令牌可以被实现为不记名令牌(bearertoken)或拥有证明(proof-of-possession(pop))令牌。通过利用ppp令牌,可以实现灵活性:随着在pop令牌中使用对称密钥密码,可以实现与kerberos票证相媲美的情况,并且在与非对称密码一起使用时,其可以扮演证书的角色。不记名令牌概念在ietfrfc6750中进行了描述,而pop令牌概念在m.jones等人于2015年3月9日在oauthworkinggroupoftheietf的文献“proof-of-possessionsemanticsforjsonwebtokens(jwts)”中进行了描述。

一般来说,可以利用数字签名或消息认证码来保护令牌不被修改。令牌可以由中央控制单元110验证。为了保证图1的所有涉及方之间的消息交换,可以采用数据报传输层安全(dtls)。

根据网络100的大小,授权单元111和/或中央控制单元110可能仅在试运行阶段期间可用-而在操作阶段期间不可用。

图2例示了在操作阶段期间的网络100的架构。如可以从图1和图2的比较看出,授权单元111在操作阶段期间不是必需存在的。例如,在图2的场景中,网络节点120、121之一可以被配置成请求针对密码密钥材料的秘密的密钥。为此,请求消息可以从节点120、121之一发送至中央控制单元110,中央控制单元110包括在试运行阶段期间由授权单元111先前已经提供给节点120、121的令牌。该令牌可以被用于对该请求消息进行授权。作为响应信息的一部分,中央控制单元110可以将针对密码密钥材料的秘密的密钥提供给请求网络节点120、121。一旦网络节点120、121已经成功获取所请求的密钥,其就可以开始执行与其它节点120、121的加密多播发送102。在一些情形下,该密钥可以是被用于保护多播消息的对称密钥。

接收网络节点120、122通常需要执行两个步骤;首先,接收网络节点120、121需要获取针对密码密钥材料的秘密的所需密钥,以解密和验证输入消息;第二,接收网络节点120、121需要关于发送网络节点120、121被授权访问什么资源的信息。这两个信息(即,针对密钥材料的密钥,以及关于发送网络节点120、121被授权访问的资源的信息)可以被包括在由授权单元111向接收网络节点120、121提供的令牌中。

除了如上关于图1所示的加密多播发送102之外,网络100的各种网络节点120、121还可以执行加密单播消息发送。例如,对于加密单播消息发送,发送网络节点120、121可以使用dtls握手来建立用于保护后续单播消息的必要安全上下文。

在图3中,更详细地示意性例示了中央控制单元110。中央控制单元110包括与数据库182联接的处理器181。而且,处理器182与接口183联接。接口183被配置成与网络120的网络节点120、121通信。数据库182包括针对每个网络节点120、121的条目。具体来说,处理器181被配置成将第一多个网络节点120、121中的每个网络节点的条目与第一密码密钥材料和多播ip地址相关联。所述至少一个处理器181还被配置成将第二多个网络节点120、121中的每个网络节点的条目与第二密码密钥材料和多播ip地址相关联。因此,通过对应地指定数据库182中的条目,可以实现包括具有不同秘密的密码密钥材料的安全组。然而,安全组可以是同一多播组的一部分,因为它们共享同一多播ip地址。

然后,处理器181被配置成经由接口183基于第一密码密钥材料和多播ip地址控制所述第一多个网络节点120、121执行分组数据的加密多播发送102。处理器181还被配置成经由接口183基于第二密码密钥材料和多播ip地址控制所述第二多个网络节点120、121执行分组数据的加密多播发送102。为此,中央控制单元110可以例如响应于接收到包括令牌的请求消息,来向对应网络节点120、121发送响应消息,所述响应信息包括针对对应密码密钥材料的秘密的密钥。

在图4中,针对五个网络节点120-123、130例示了数据库182的条目191。在图4的情况中,gid标记应用组,sid标记安全组,而ip标记多播ip地址。数据库182中的节点120-123可以通过对应唯一令牌来标识。

如可以从图4看出,网络节点120是应用组221、安全组201以及多播组200的一部分;网络节点121是应用组221、安全组201以及多播组200的一部分;网络节点122是应用组222、安全组201以及多播组200的一部分;网络节点123作为应用组221的一部分,并且还作为应用组222、安全组201以及多播组200的一部分;而网络节点130是应用组231、安全组202以及多播组200的一部分。如可以从图4看出,所有网络节点120-123、130都是同一多播组的一部分,即,它们都共享同一多播ip地址。一般而言,单个节点120-123、130可以是多于单个安全组或应用组的一部分。

图5a是图4的场景的venn图。如可以从图5a看出,安全组201、202不交叠,即不相交。因为安全组201、202不相交,所以安全组201的网络节点120-123不可能与安全组202的网络节点130-133通信;这是因为对应密码密钥材料的秘密不同。

而且,应用组231、232不相交。然而,应用组221、222交叠。具体来说,单个网络节点123是两个应用组221、222的一部分。例如,单个网络节点123可以实现控制器功能。

如可以从图5a看出,应用组221、222、231、232是安全组201、202的子集。

下面,出于例示的目的,关于照明用例,讨论了关于网络组元120-123、130-133与不同组200、201、202、221、222、231、233相关联的各个方面。然而,应当清楚,这里描述的各种技术不限于照明用例。

一般而言,根据各自的功能/分类和/或根据相对于照明场景600的位置(参照图5b),可以将各种网络节点120-123、130-133指配给不同的组200、201、202、221、222、231、232。在图5b的情况中,对于第一安全组201,示出了其中网络节点120-123全部设置在一端具有窗口602的房间601内的情形。两个应用组221、222分别对应于“靠近窗户的照明设备组”和“远离窗户的照明设备组”;即,网络节点120-122已经根据它们在照明场景600中的位置而被指配给应用组221、222。尽管存在两个应用组221、222,但所有网络节点120-123都与同一多播组200相关联,并且共享同一多播ip地址。而且,尽管存在两个应用组221、222,但所有网络节点120-123都与同一安全组201相关联。

安全组201的网络实体130-133可以位于不同的房间(图5b中未示出)。一般来说,可以针对不同的房间限定不同的安全组201、202。在其它情形下,一般来说,可以针对不同的地板、房间加走廊、建筑物等限定不同的安全组201、202。

转至图5c,对与应用组221、222相关联的应用进行更详细说明。这里假定网络节点123实现传感器功能和控制器功能;并且网络节点120-122实现致动器功能并涉及照明设备。网络节点123是存在传感器。

在551,存在传感器123在房间601中没有检测到人的存在。因此,在552,存在传感器123通过发送利用针对安全组201的密码密钥材料的秘密的对称密钥至少部分地加密的消息,来执行加密多播发送102。该消息被所有网络节点120-122接收。然而,由于传感器123包括指示应用组222的标签,因而,仅照明设备122进一步处理对应消息(如图5c所示)。该对应消息包括指示照明设备122设定5%的功率水平的分组数据。在该消息的所有部分中,至少加密该分组数据。

而且,在553,存在传感器123通过发送利用针对安全组201的密码密钥材料的秘密的对称密钥加密的消息,来执行加密多播发送102。该消息被所有网络节点120-122接收。然而,由于传感器123包括指示应用组221的标签,因而,仅照明设备120、121进一步处理对应消息(如图5c所示)。该对应消息包括指示照明设备120、121设定5%的功率水平的分组数据。在该消息的所有部分中,至少加密该分组数据。

在554,存在传感器123检测到房间601中人的存在。然后,在555,利用加密多播发送102来发送这样的消息,即,其通常对应于消息552,然而,指示照明设备122设定50%的功率水平。在556,利用加密多播发送102来发送这样一消息,即,其通常对应于消息553,然而,指示照明设备120、121设定90%的功率水平。

图6a是例示通常对应于图5a的场景的场景的venn图;然而,通过在数据库182中包括对应指示符来限定包括网络节点123、140的另一安全组203。网络节点123、140还是应用组221、222的一部分。

图6b例示了对应于照明场景600的图6a的情况。如可以看出,图6b的照明场景600总体上对应于图5b的照明场景600。实现存在传感器的网络节点140位于通往房间601的走廊中。

与应用组221、222相关联的应用通过下列控制功能来限定:首先,如果通过存在传感器123在房间601中检测到存在(图6c中的656、674),那么墙壁照明设备120、121被设定成90%的功率水平,并且窗户照明设备122被设定成50%的功率水平(图6c中的657、658、675、676)。第二,如果通过存在传感器123在房间601中和通过存在传感器140在走廊中均未检测到存在(图6c中的651和653),那么两个应用组221、222的所有照明设备120-122被关闭至0%的功率水平(图6c中的654和655)。第三,如果通过存在传感器123在房间601中未检测到存在,但通过存在传感器140在走廊中检测到存在(图6c中的659和671),那么两个应用组221、222的所有照明设备120-122被设定在5%的功率水平(图6c中的672和673)。

在图6c的情况中,存在传感器/控制器140使用单播消息发送103来与房间601中的存在传感器/控制器123进行通信。一旦存在传感器/控制器123接收到对应消息652、670,其就利用加密多播发送102将消息654、655、657、658、672、673、675、676发送至房间601中的所有照明设备120-122。

由于设立安全组201、203,因而,位于走廊中的存在传感器140不能够直接与房间601中的照明设备120-122通信。实现了安全组201、203的层次结构。

虽然在图6c的情况下,安全组203的网络节点123、140执行单播发送103,但在其它情况下,安全组203的网络节点123、140还可以执行加密多播发送102。一般来说,单播发送103也可以被加密。

在图7中,例示了加密多播发送102的消息700。该消息包括应用层801数据包702,其利用针对对应发送网络节点120-123、130-133、140的安全组的密码密钥材料的秘密的密钥710来加密。消息700还包括标识对应发送网络节点120-123、130-133、140的应用组的标签701。在图7的情况中,标签701未利用密钥710加密。在其它情形下,标签701也可以利用密钥710来加密。

图8例示了分层的osi模型。利用密钥710的加密/解密发生在应用层801。较低层802-805被用于采用多播ip地址的发送。因此,加密/解密功能和路由功能被封装和分离。

图9是例示了将密钥710分配给密码密钥材料的秘密的信令图。包括唯一令牌的请求消息901由网络节点120发送并由中央控制单元110接收。例如,在图9的情况中,该令牌可能被格式化为jsonweb令牌。

在图9的情况中,请求消息901利用加密单播发送103发送;在其它情形下,也可以采用加密多播发送102来发送请求消息901。

在902,基于该唯一令牌,中央控制单元110从数据库182中检索最新的密钥710。然后,中央控制单元110发送包括密码密钥701的响应消息903。

在图9的情况中,响应消息903利用加密单播发送103发送;在其它情形下,可以采用加密多播发送102来发送响应消息903。

在图9的情况中,密码密钥710具有有限的使用期限904。在使用期限904期间,网络节点120基于密钥710执行加密多播发送102(905、906)。响应于网络节点120检测到密钥710的使用期限904的期满,将新的请求消息907发送给中央控制单元110。

下文例示了关于图9的一些进一步的方面。

由于希望低延迟,因而,通常对令牌的验证需要在本地完成,而不能外包给其他方。为此,应该使用自包含的令牌,并且接收节点应该遵循例如在ietfrfc7519的第7.2节中概述的步骤。这包括验证保护令牌内容的消息认证代码、和保护所包含的对称组密钥的加密外壳(envelope)。

令牌通常也可能具有特定的使用期限。设定使用期限可能是涉及作出权衡决定的策略决定。允许更长的使用期限增加了引入用于令牌撤销的机制的需要-例如,以从中央控制单元110和/或授权单元111到网络节点的实时信令的形式来将给定令牌列入黑名单;同时,其降低了正常操作期间的通信开销,因为新的令牌只需要不时地获取即可。与接收方实时通信以撤销令牌可能无法在所有情况下进行,特别是在需要离线操作时,或者在应用单元111和/或中央控制单元110仅在试运行阶段期间存在的小型网络中。

因此,在各种情况下,对于像使用智能电话、平板电脑等访问网络100的用户那样的动态使用情况,短期令牌可能是优选的,以避免在令牌泄漏时或者在授权权限被撤销的情况下的潜在安全问题。如果静态安装的网络节点(如针对传统灯开关和/或照明设备的情况那样),那么可以使用更长的令牌使用期限,因为令牌泄漏的重新配置不太可能经常发生。

为了限制授权权限,令牌应当包含受众限制,将其针对预期接收网络节点的使用范围限定至其访问级别。

发送和接收网络节点不一定配备有实时时钟。然而,可以实现网络节点与时间服务器之间的通信。在准确时钟不可用的情况下,遇到时钟漂移和限制检查重放的能力是可能的。对于没有时间服务器可用的情况,例如,在小型网络安装中,令牌验证通常不能够检查期满的令牌,因此可能需要回退到未期满的令牌。

一般来说,照明系统中的网络节点通常可能有意或无意地掉电。因此,可能需要网络节点将令牌(例如,连同回放上下文一起)存储在像闪速存储器那样的持久性存储部中。如果授权单元111在试运行阶段之后不在线,则这可能是特别需要的(参照图1)。然而,将数据存储在网络节点的存储器中可以是网络节点能够多久在线回到正常操作模式与因闪速存储器的编程擦除周期超过该装置的15-20年使用期限而造成的存储器磨损之间的权衡。

上面已经针对令牌说明的类似考虑也可以应用于密钥710的使用期限904。

图10是根据各种实施方式的方法的流程图。图10的方法可以由中央控制单元110和/或应用单元111执行。

在1001,将第一多个网络节点与第一密码密钥材料和多播ip地址相关联。所述关联可以通过设定数据库182的条目191来实现。密码密钥材料可以包括一个或更多个密码密钥710,例如,单个对称密钥710和/或多个公钥和私钥。

在1002,将第二多个网络节点与第二密码密钥材料和多播ip地址相关联。因此,第一多个网络节点和第二多个网络节点共享同一多播ip地址,但与不同的密码密钥材料相关联。第一密码密钥材料和第二密码密钥材料具有不同的秘密;因此,仅拥有两个密码密钥材料之一的网络节点不能解码已经利用这两个密码密钥材料中的另一个的秘密加密的分组数据。

在1003,控制所述第一多个网络节点来执行分组数据的加密多播发送102。在1004,控制所述第二多个网络节点来执行分组数据702的加密多播发送102。作为1003和1004的一部分,可以发送和/或接收控制消息-如请求消息901、907以及响应消息903。

尽管本发明参照特定优选实施方式进行了示出和描述,但本领域技术人员通过阅读并理解本说明书,将想到等同物和修改例。本发明包括所有这种等同物和修改例,并且仅通过所附权利要求书的范围来限制。

例如,虽然上面已经针对照明用例讨论了各个方面和实施方式,但是一般而言,本文所述各种技术可以容易地应用于不同的使用情况。其它用例可以包括装配线中的机器通信等。

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