一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

用于高级计量基础设施的密钥管理的制作方法

2021-11-20 03:37:00 来源:中国专利 TAG:


1.本发明涉及用于在高级计量基础设施中管理密码密钥的方法的领域,并且尤其涉及用于当密码密钥被泄露或丢失时对其进行恢复和替换的方法。


背景技术:

2.仪表通信基础设施,比如高级计量基础设施(ami)系统在本领域是众所周知的。公用事业公司使用这种仪表通信基础设施、通常使用射频(rf)通信来远程读取和监测公用事业仪表。仪表通信基础设施提高了收集读数、管理客户账单的效率和准确性,并实现了数据驱动的网络管理。
3.仪表通信基础设施复杂且可能包括许多元素并使用了多种技术,其中一些将在下文中提及。高级读表(amr)系统通常使用移动rf通信网络来收集仪表读数和数据,而ami系统通常使用固定rf通信网络或电力线通信(plc)。ami系统可以包括遍及较大地理区域的多个中间收集器,每个收集器进而例如通过使用广域网(wan)或其他合适的通信基础设施与前端系统(hes)进行通信。ami系统还可以利用具有通过转发仪表读数和数据来扩展每个读取器的覆盖区域的中继器或中继设备的系统。ami系统可以基于:公共蜂窝电信基础设施,比如gsm、lte、nb

iot或任何一代电信(比如3g、4g、5g);或基于例如lora或sigfox的其他通信基础设施。在移动网络amr环境中,当移动读取器各处移动时,使用具有rf通信能力的手持式、车载式或其他移动读取器设备来从公用事业仪表设备收集数据。
4.仪表读数,包括消耗数据和其他仪表数据(比如流量、温度、压力、电压、电流等)通常被视为机密信息,必须加以保护,以防止未经授权的数据访问或操纵。保护的主要目的是确保所传输数据的机密性/隐私性和真实性。进一步的认证和授权可以是高级计量基础设施中的目的。保护仪表读数、其他仪表数据和仪表功能的一种方式是使用密码方法。密码方法使用以下仅举例的密钥中的密码密钥。
5.可以通过使用比如高级加密标准(aes)等密码方法对数据进行加密来提供机密性/隐私性。仪表数据可以在发射设备(例如,仪表)处使用密钥加密并且在接收器(例如,前端系统hes)处使用相同的密钥解密。当使用相同的密钥对数据进行加密和解密时,这些密钥被称为对称密钥。
6.数据的真实性可以通过使用消息认证码(mac)来提供。在发射器端基于要使用密码方法和密钥进行保护的数据来计算mac,并且在接收器处基于该密码方法、该密钥和该接收的数据重新计算mac。
7.基于对称密钥的端到端加密和消息认证的使用提供了相对简单和非常可靠的数据保护方案,通过该方案,可以保护/确保公用事业仪表与前端系统之间的通信链路。然而,如果所使用的密钥被泄露(compromised),则前端系统与公用事业仪表之间的通信链路将不再安全。由被泄露的密钥保护的通信链路无法再用于以安全的方式将公用事业仪表中的被泄露的密钥替换为新密钥。由于系统通常包括数千个甚至数百万个仪表,手动替换密钥也并非可行的解决方案。密钥可能会由于第三方获得了对密钥的未授权访问而被泄露,或
者密钥可能例如由于黑客攻击或计算机病毒而已经丢失(即,它们不再可访问)。
8.因此,需要一种方法和支持系统,用于在读表系统中,特别是在使用对称密钥和端到端通信的系统中,安全和有效地替换被泄露的密钥。尤其期望通过不需要服务拜访的仪表通信基础设施来替换安装在用户处的公用事业仪表中的密钥。
9.发明目的
10.本发明的目的是提供一种用于通过仪表通信基础设施来替换密钥(包括公用事业仪表中的被泄露的密钥)的安全、可靠和有效的方法和系统。


技术实现要素:

11.因此,在本发明的第一方面,旨在通过提供一种用于替换公用事业仪表中的现有密钥导出密钥的方法来实现上述目的和几个其他目的,该公用事业仪表布置在仪表通信基础设施中以与包括前端系统的服务器端进行通信,该方法包括以下步骤:

基于存储在该服务器端的灾难恢复密钥、和密钥代信息来在该服务器端导出新的密钥导出密钥;

在该服务器端从该新密钥导出密钥导出激活密钥;

从该前端系统向该公用事业仪表发射命令数据消息,该命令数据消息包括:用于将该现有密钥导出密钥替换为该新密钥导出密钥的请求;该密钥代信息;以及该激活密钥或基于该激活密钥计算的认证码;

在该公用事业仪表中接收该命令数据消息;

基于存储在该公用事业仪表中的该灾难恢复密钥的副本并且基于包括在该接收到的命令数据消息中的该密钥代信息来在该公用事业仪表中导出该新密钥导出密钥;

在该公用事业仪表中从该新密钥导出密钥导出该激活密钥;

基于该导出的激活密钥在该公用事业仪表中验证在该命令数据消息中接收的该激活密钥或该认证码;以及

当包括在该接收到的命令数据消息中的该激活密钥或该认证码被验证时,在该公用事业仪表中将该现有密钥导出密钥替换为该新密钥导出密钥。
12.该方法的优点在于,可以独立于公用事业仪表中的状态或当前/现有密钥导出密钥来生成用于替换现有密钥导出密钥的请求。这意味着即使在服务器端/前端系统不知道现有密钥导出密钥的情况下,也可以通过该方法生成并执行替换现有密钥导出密钥的请求。进一步地,该方法的优点在于,获得对密钥导出密钥的未授权访问的第三方将不能替换现有密钥导出密钥并接管对公用事业仪表的控制。又一个优点是由从新密钥导出密钥导出的激活密钥引起的命令数据消息的自认证效果,由此证明拥有新密钥导出密钥并且拥有新密钥导出密钥是生成命令数据消息所必需的。进一步的优点是,密钥导出密钥不必通过仪表通信基础设施传送并且命令数据消息实际上可以以明文形式发射,这具有不需要在公用事业仪表和前端系统/服务器端和现场端之间的安全信道来替换密钥导出密钥的效果。
13.验证激活密钥或认证码应该理解为公用事业仪表批准激活密钥或认证码。因此,如果激活密钥或认证码被批准,则其被验证。作为示例,批准/验证激活密钥或认证码可以通过将接收到的激活密钥或认证码与导出的激活密钥或认证码进行比较来完成,并且如果它们相同,则接收到的激活密钥或认证码被验证/被批准。如果包括在接收到的命令数据消息中的激活密钥或认证码被验证,则将公用事业仪表中的现有密钥导出密钥替换为新密钥导出密钥。如果包括在接收到的命令数据消息中的激活密钥或认证码未被验证,则公用事业仪表中的现有密钥导出密钥不会被替换为新密钥导出密钥。换言之,该方法可以包括以下步骤:

在公用事业仪表中从新密钥导出密钥导出激活密钥和/或认证码;

在公用事业仪
表中使用导出的激活密钥和/或认证码来验证在命令数据消息中接收的激活密钥和/或认证码的正确性;

如果能够验证接收的激活密钥和/或认证码的正确性,则在公用事业仪表中将现有密钥导出密钥替换为新密钥导出密钥,并且如果接收的激活密钥和/或认证码的正确性不能被验证,则丢弃新密钥导出密钥,而不替换公用事业仪表中的现有密钥导出密钥。作为示例,如果接收的激活密钥和/或认证码与导出的激活密钥和/或认证码相同,则能够验证接收的激活密钥和/或认证码的正确性。作为所有上述方法步骤中的等效替代,可以基于在命令数据消息中接收的激活密钥和/或认证码来验证导出的激活密钥和/或认证码。
14.如果该服务器端灾难恢复密钥存储在安全环境中,则可以特别有利。安全环境应该理解为访问受限的环境或与前端系统分离的环境。可替代地,安全环境可以是硬件安全模块或服务器并且可以具有与服务器端的其他元件不同的物理位置。
15.该服务器端的该新密钥导出密钥可以在被传送到该前端系统或密钥管理系统之前在该安全环境中被导出。这具有可以将灾难恢复密钥保存在安全环境中的优点。本发明的优点是所有公用事业仪表的灾难恢复密钥的集合被保存在安全环境中。这意味着攻击者必须获得对安全环境或每个公用事业仪表的访问权限,才能获得对灾难恢复密钥集合的访问权限。特别是,在该服务器端使用的该灾难恢复密钥可以以硬件安全模块的形式存储在安全环境中。
16.根据第一方面的方法可以可选地被视为用于替换公用事业仪表以及服务器端和/或前端系统中的现有密钥导出密钥的方法,并且该方法可以包括将新密钥导出密钥存储在服务器端和/或前端系统中的进一步步骤。
17.在本发明的第二方面,提供了一种用于将公用事业仪表中的现有密钥导出密钥替换为新的密钥导出密钥的命令数据消息,该命令数据消息包括:

用于将该现有密钥导出密钥替换为该新密钥导出密钥的请求;

密钥代信息;

激活密钥或基于该激活密钥计算的认证码;其特征在于,该激活密钥是基于该新密钥导出密钥导出的,并且该新密钥导出密钥是至少基于该密钥代信息导出的。这种命令数据消息具有基于新密钥导出密钥进行自认证的优点,该命令数据消息请求公用事业仪表将现有密钥导出密钥替换为新密钥导出密钥。进一步的优点是该消息可以以明文形式发送,因为该消息中不包含新密钥导出密钥。用于替换密钥导出密钥的请求可以在命令数据消息中明确指示,或者可以以例如指示期望请求的命令id的形式隐含地陈述。
18.包括在命令数据消息中的激活密钥或认证码具有提供用于验证以下各项中的一项或多项的手段的目的:命令数据消息的真实性、前端系统的授权、前端系统的认证。或者换句话说,包括在命令数据消息中的激活密钥或认证码具有提供生成命令数据消息的实体拥有新密钥导出密钥的证据的目的。
19.根据第二方面的命令数据消息可以是命令数据消息,其中,该新密钥导出密钥不包括在该数据命令消息中。并且根据第二方面的命令数据消息可以是作为明文发送的命令数据消息。
20.命令数据消息可以是通过比如无线电通信信道或有线通信信道等传输信道传输的数据物理消息,或者是存储在用于数据存储的存储器设备中的消息。
21.在本发明的第二方面的变型中,提供了一种用于数据存储的存储设备,该存储设备被布置用于存储命令数据消息。在第二方面的另一变型中,提供了一种被布置用于发射
或接收根据第二方面的命令数据消息的通信设备,比如无线电通信设备。
22.在本发明的第三方面,提供了一种被布置用于与仪表通信基础设施中的前端系统进行通信的公用事业仪表,该公用事业仪表包括:

用于接口连接该仪表通信基础设施的通信接口;

存储在该仪表的存储器中的灾难恢复密钥;

现有的密钥导出密钥;

密钥导出函数;其特征在于,该公用事业仪表被配置为:

经由该通信接口接收根据本发明的第二方面的命令数据消息;

通过至少将存储在该公用事业仪表中的该灾难恢复密钥和包括在该接收到的命令数据消息中的密钥代信息输入到该密钥导出函数来导出新的密钥导出密钥;

从该新密钥导出密钥导出激活密钥;

基于该导出的激活密钥验证在该命令数据消息中接收的激活密钥或认证码;以及

当包括在该接收到的命令数据消息中的激活密钥或认证码被验证时,将该现有密钥导出密钥替换为该新密钥导出密钥。
23.该公用事业仪表的优点在于,即使在密钥导出密钥已经被泄露的情况下,也能够验证命令数据消息并以安全的方式替换密钥导出密钥。
24.验证激活密钥或认证码应该理解为公用事业仪表批准激活密钥或认证码。因此,如果激活密钥或认证码被批准,则其被验证。例如,批准/验证激活密钥或认证码可以通过仪表将接收到的激活密钥或认证码与导出的激活密钥或认证码进行比较来完成,并且如果它们相同,则接收到的激活密钥或认证码被验证/被批准。如果包括在接收到的命令数据消息中的激活密钥或认证码被验证,则将公用事业仪表中的现有密钥导出密钥替换为新密钥导出密钥。如果包括在接收到的命令数据消息中的激活密钥或认证码未被验证,则不将公用事业仪表中的现有密钥导出密钥替换为新密钥导出密钥。换言之,该公用事业仪表可以被布置为:从新密钥导出密钥导出激活密钥和/或认证码;通过使用导出的激活密钥和/或认证码来验证在命令数据消息中接收的激活密钥和/或认证码的正确性;并且如果能够验证接收的激活密钥和/或认证码的正确性,则在该公用事业仪表中将现有密钥导出密钥替换为新密钥导出密钥;并且如果接收的激活密钥和/或认证码的正确性不能被验证,则丢弃新密钥导出密钥,而不替换该公用事业仪表中的现有密钥导出密钥。作为示例,如果接收的激活密钥和/或认证码与导出的激活密钥和/或认证码相同,则能够验证接收的激活密钥和/或认证码的正确性。作为所有上述方法步骤中的等效替代,可以基于在命令数据消息中接收的激活密钥和/或认证码来验证导出的激活密钥和/或认证码。
25.根据本发明的第三方面的公用事业仪表可以进一步被布置用于使用在该公用事业仪表中使用密钥导出密钥导出的应用密钥来与该前端系统进行安全通信。这具有密钥导出密钥的替换将进一步需要替换所有应用密钥的优点。
26.在本发明的第四方面,提供了一种用于替换现有的密钥导出密钥的仪表通信基础设施,比如读表系统,该通信基础设施包括:

多个现场端公用事业仪表;

服务器端前端系统,该服务器端前端系统被配置用于使用在该服务器端和该现场端使用密钥导出密钥导出的应用密钥来与这些现场端公用事业仪表进行安全通信;以及

服务器端安全环境,用于存储灾难恢复密钥;其中,该服务器端被配置为基于存储在该安全环境中的灾难恢复密钥并且基于密钥代信息来导出新的密钥导出密钥;并且其中,这些现场端公用事业仪表被配置用于从该前端系统接收命令数据消息,该命令数据消息指示该公用事业仪表使用存储在该公用事业仪表中的灾难恢复密钥并且基于在该命令数据消息中接收的密钥代信息来导出与在该服务器端导出的该密钥导出密钥相同的新的密钥导出密钥。
27.该仪表通信基础设施具有的优点是,即使在现有密钥导出密钥已经丢失或者已经对欺诈的第三方可用的情况下,也可以以安全的方式替换密钥导出密钥。
28.该服务器端可以进一步被配置用于从该公用事业仪表获取关于该现有密钥导出密钥的现有密钥代信息并且至少基于所获取的现有密钥代信息来导出该新密钥导出密钥的密钥代信息。
29.在根据本发明的第四方面的仪表通信基础设施中,该服务器端可以进一步包括:

前端系统,该前端系统被配置用于构建命令数据消息并将其发送到这些公用事业仪表和/或从该公用事业仪表获取关于该现有密钥导出密钥的现有密钥代信息;以及

安全环境,该安全环境被配置用于导出该新密钥导出密钥。
30.进一步地,该仪表通信基础设施的该安全环境可以用于存储由硬件安全模块(hsm)保护的该灾难恢复密钥。
31.在根据本发明的第四方面的仪表通信基础设施中,该公用事业仪表可以是根据本发明的第三方面的公用事业仪表并且该仪表通信基础设施可以被布置为执行根据本发明的第一方面的方法。
32.在本发明的第一方面、第二方面、第三方面和第四方面,可选地,密钥导出密钥、灾难恢复密钥或激活密钥中的至少一个是对称密钥。可选地,所有密钥都是对称密钥。本发明对于对称密钥尤其有利,因为对称密钥的替换需要防止密钥被泄露的安全方法。
附图说明
33.现在将关于附图更详细地描述根据本发明的用于替换密钥的仪表通信基础设施和方法。这些图示出了实施本发明的一种方式,并且不应被解释为局限于落入所附权利要求的范围内的其他可能的实施例。
34.图1是仪表通信基础设施的示意图,
35.图2图示了密钥导出,以及
36.图3图示了新密钥导出密钥是如何在服务器端与现场端位置之间传播的。
具体实施方式
37.参考图1,图示了仪表通信基础设施mci。用户102(比如私人、住宅、商业和工业用户)经由公用事业分配网络105从公用事业提供者101接收电力或另一公用事业,比如水、区域供热或燃气。取决于公用事业,特别是在电力的情况下,用户也可以自己产生公用事业或从下设的生产设施接收公用事业。由每个用户收发的公用事业由位于仪表通信基础设施mci的现场端(field side,fs)的公用事业仪表103测量。公用事业仪表103可以是电表、水表、热量表或冷量表、燃气表、热成本分配表或任何其他形式的公用事业仪表或消耗仪表。
38.经由仪表通信基础设施mci收集来自公用事业仪表103中的每一个的仪表数据,该仪表通信基础设施mci进一步包括位于中心的数据收集器104和位于仪表通信基础设施mci的服务器端(server side,ss)的前端系统hes。
39.仪表通信基础设施mci包括测量消耗、读取和传输计量数据以及存储、处理、呈现和导出计量数据中包括的所有元件、装置和设备。仪表通信基础设施mci在逻辑上分为现场端fs和服务器端ss。
40.现场端fs包括以下一个或多个:公用事业仪表、传感器、执行器(比如断路器或阀门)。所有这些元件都可以安装在用户处或公用事业分配网络中,这些用户和该公用事业分配网络两者都属于现场端fs。收集器、路由器、中继器、网关和基站等设备也可以视为现场端元件。
41.服务器端ss可以包括多个服务器、计算机和云解决方案,它们可以位于不同的地理位置并且运行多个服务器端应用程序,比如前端系统、仪表管理系统、密钥管理系统等。
42.仪表通信基础设施mci可以至少部分地包括基于gsm、lte或其他蜂窝网络技术(包括3g、4g或5g蜂窝电信)的公共蜂窝网络。这种蜂窝网络可以是现场端与服务器端ss之间的通信链路的一部分。公用事业仪表可以直接与公共蜂窝网络通信,从而在其间不需要收集器。收集器或网关可以连接到公共蜂窝网络并且在收集器与公用事业仪表之间提供辅助通信链路。其他技术,比如sigfox、lora、nb

iot或其他物联网基础设施可以是仪表/现场端fs与服务器端ss之间的通信链路的一部分。仪表通信基础设施在仪表/现场端fs与服务器端ss之间创建通信链路,该通信链路不限于一种技术并且可以包括链接在一起以建立端到端通信链路的不同技术的混合。
43.现场端fs与服务器端ss之间的通信由密码方法保护,这些密码方法具有以下一种或多种效果:防止欺诈、窃听和未经授权访问公用事业仪表中或仪表通信基础设施mci的其他元件中的数据和功能。密码方法依赖于参与通信的实体可以访问所需的密钥。密码方法仅在用于保护通信的密钥未被泄露(即,未经授权的人员不得访问这些密钥)的前提下才具有上述效果。如果密钥被泄露,则必须以安全的方式对其进行替换。在下文中,公开了一种用于安全替换公用事业仪表中的被泄露的密钥的方法以及根据该方法布置功能的仪表、系统和命令数据消息。
44.在下文的描述中,当数据从公用事业仪表发射并在前端系统hes中接收(即,从现场端到服务器端)时,这应该理解为两侧之间的直接传输或者包括中间设备(比如路由器、中继器、收集器、基站、wifi路由器、蜂窝网络基站等)的传输。在现场端与服务器端之间的一些通信步骤中,可以使用附加的安全层,比如安全传输层(tls)。在本说明书中没有考虑这种附加的安全层,而仅考虑了现场端与服务器端之间(即,公用事业仪表与前端系统之间)的端到端加密。仪表通信基础设施应当被理解为双向通信基础设施。当指示例如从公用事业仪表到前端系统hes的通信方向时,这应被理解为仅仅是示例,通信方向也可以相反。
45.仪表数据在现场端的公用事业仪表中被加密并且经由集中器或其他中间设备发射到服务器端ss的前端系统,而不会在前端系统hes中接收之前被解密,这称为端到端加密。公用事业仪表和前端系统中的加密和解密分别使用对称密钥完成。如本领域技术人员所设想的,数据消息也可以在从前端系统到公用事业仪表的相反方向上发射。这样的数据发射可以用于将任何种类的数据从前端系统hes发射到公用事业仪表。从前端系统发射到公用事业仪表的数据的示例是被布置为进行以下操作的命令:控制公用事业仪表的操作;更改公用事业仪表的配置参数;更改密钥;提供固件更新等。数据加密至少确保了数据的机密性/隐私性,但也可以具有其他目的,比如重放保护。进一步地,特定应用或访问权限可以与用于数据加密的密钥相关联。这样,命令仅在使用特定密钥加密后才能被执行或者对不同寄存器和存储器区域的读/写访问可以由不同的密钥保护。
46.无论是向公用事业仪表还是从公用事业仪表传输数据,重要的是通信链路安全,
以防止对所传输数据的操纵以及对公用事业仪表的未授权访问或操作。这可以通过单独的数据加密来完成或者可以在数据消息中包括消息认证码(mac)。可以使用合适的密码函数(比如c

mac、cbc

mac、hmac或任何其他mac函数)来基于要传输的数据和其他数据计算消息认证码。mac具有确保数据的真实性和/或传输实体的认证的目的。mac也可以用于授权目的。mac在下文中也仅称为认证码(ac)并且可以具有一个或多个上述功能。在以下描述中,术语“消息认证码mac”和“认证码ac”可互换使用。
47.在下文中,当通过使用密钥来保护通信的安全时,应该理解为该密钥用于上述目的中的一个或多个:确保机密性/隐私性、重放保护、数据的真实性、参与通信的实体的认证/授权。这可以包括通过使用该密钥来对数据进行加密和/或通过基于该密钥计算的消息认证码(mac)来对数据或传输实体进行认证或授权。
48.使用的密钥是128或256位对称密钥,它们是例如与高级加密标准(aes128/aes256)一起使用的常用密钥长度。密钥的长度可以是为应用提供期望的安全级别的任何合适的长度。因此,密钥的长度对于本发明来说并不重要,并且可以是适合于所使用的加密算法的任何长度。密钥长度可能会影响密码周期,即,可以使用密钥而无需替换密钥并仍提供期望的安全级别的周期。如果根据正常使用进行操作,密钥可以提供超过公用事业仪表使用寿命的密码周期。
49.使用的密码方法基于高级加密标准(aes128/aes256),但也可以使用任何其他对称加密算法,比如des、三重des。如果使用的密码方法是分组密码,则可以使用比如密码分组链接(cbc)、计数器模式(cm)或其他模式等操作模式。密码方法以及操作模式的选择是本领域技术人员众所周知的,并且不再进一步公开。关于如何使用密码方法和操作模式的参考,请参考:nist出版物fips 197,2001年11月26日;nist特别出版物sp 800

67rev.2,2017年11月;nist
·
fips pub 46

3;nist sp 800

38a,2001年12月;nist sp 800

38b,2016年6月10;以及nist sp 800

38c,2004年12月5日。
50.参考图2,描述了不同密钥的使用。前端系统hes与公用事业仪表103之间的一般操作通信使用应用密钥app进行保护。不同的应用密钥app可以提供对公用事业仪表中不同功能和/或数据的访问以及对与仪表进行通信的不同方式的访问。例如,一个应用密钥可以用于本地读取仪表数据,而另一个应用密钥可以用于远程读取仪表数据。另一个应用密钥可以用于更改仪表中的设置或更新仪表固件。又一个应用密钥可以被预留用于对一般或特定类型的数据进行数据加密。以这种方式,可以通过特定的应用密钥来保护任何特定的公用事业仪表数据或功能。
51.如图2所示,用于不同应用的应用密钥app是从密钥导出密钥kdk导出的。应用密钥是通过使用密钥导出函数kdf来从密钥导出密钥kdk导出的,该函数将密钥导出密钥和标识应用的至少一个附加参数par作为输入。参考图2,如果将第一参数par(1)输入到密钥导出函数kdk,则从密钥导出函数输出第一应用密钥app(1)。如果将第二参数par(2)输入到密钥导出函数,则从密钥导出函数输出第二应用密钥app(2)。优选地,第一应用密钥app(1)和第二应用密钥app(2)与密钥导出密钥kdk都是不相关的,即,一个密钥不包含关于另一个密钥的信息。为了确保这一点,必须使用适当的密钥导出函数。这样的密钥导出函数kdf可以是ietf rfc5869(issn:2070

1721,2010年5月)中描述的hkdf,有关密钥导出的进一步特定技术可以参见2018年4月的nist sp 800

56c。可以使用其他合适的密钥导出函数。
information)kgi被输入到该密钥导出函数。该密钥导出密钥随后被传送到前端系统,或者传送到密钥管理系统kms,密钥导出密钥可以从该密钥管理系统传送到前端系统。在制造或安装期间,还通过将密钥导出密钥kdk传送到公用事业仪表或者通过指示公用事业仪表自己从灾难恢复密钥drk和相同的密钥代信息kgi导出密钥导出密钥kdk来将密钥导出密钥提供给公用事业仪表102。在不同的实施例中,可以在不同的时间和不同的位置生成各种密钥。关键部分是灾难恢复密钥drk仅存储在公用事业仪表102和安全环境se中,并且灾难恢复密钥不直接用于加密、解密或认证,而是仅用于新密钥导出密钥的导出。灾难恢复密钥drk优选地不存储在前端系统hes中。作为替代方案,可以将安全环境集成在前端系统中。仅在生产设施为安全环境的情况下,才认为在生产期间将密钥kdk、drk传送到公用事业仪表是安全的。
61.在公用事业仪表和前端系统或密钥管理系统中,应用密钥app是从密钥导出密钥kdk独立导出的。在一个实施例中,当需要应用密钥时,可以首次在公用事业仪表和前端系统hes或密钥管理系统kms中导出应用密钥。当某人试图访问公用事业仪表或与之交互时,该仪表中需要应用密钥。在前端系统中,当前端系统必须与公用事业仪表通信以接收或发射数据时,需要密钥。本领域技术人员可以理解,可以用附加的级别来扩展密钥层次结构,即,可以从应用密钥app导出密钥,这将为密钥层次结构增加一个级别。
62.前端系统hes和密钥管理系统kms是在计算机或服务器上运行的计算机实施的系统,用于执行各种任务和存储信息。前端系统的主要功能是控制、协调和实现与仪表通信基础设施mci中包括的公用事业仪表的通信,这也可以包括从公用事业仪表收集消耗数据。前端系统可以包括在不同计算机或服务器上运行的多个子系统。这样的子系统可以为各种系统集成提供不同的用户界面和应用程序界面。密钥管理系统kms的主要功能是管理密钥导出密钥、和应用密钥的导出。密钥管理系统的功能可以集成在前端系统中。可替代地,密钥管理系统可以作为与前端系统通信的独立系统来操作。密钥管理系统可以服务一个或多个前端系统。
63.下面详细描述如何将现有的密钥导出密钥kdk1替换为新的密钥导出密钥kdk2。新密钥导出密钥kdk2在服务器端ss和现场端fs/仪表中是相同的。现场端fs/仪表中的现有密钥导出密钥kdk1可能与服务器端ss的现有密钥导出密钥kdk1相同或不同。密钥导出密钥的替换具有这样的效果,即,无论服务器端和现场端的现有密钥导出密钥kdk1是否相同,现场端fs/仪表中的和服务器端ss的密钥导出密钥kdk都变得相同并且该过程是安全可靠的。
64.如果公用事业仪表或前端系统使用的现有密钥导出密钥kdk1被泄露,则应替换该密钥导出密钥和从该密钥导出密钥导出的所有应用密钥app。由于密钥导出密钥可以用于导出新的应用密钥,因此仅简单地更改为新的应用密钥(即,从被泄露的现有密钥导出密钥kdk1导出新的应用密钥)是不够的。而是,必须为该公用事业仪表导出新的密钥导出密钥kdk2并且在该公用事业仪表和前端系统或密钥管理系统中实施。实施一个或多个新的密钥导出密钥kdk2的过程也可以称为灾难恢复过程。
65.图3图示了简化的仪表通信基础设施mci,服务器端ss与现场端fs由虚线分开。服务器端与现场端之间的通信由如上所述的任何合适的通信链路提供。
66.每当密钥导出密钥被泄露或被认为有被泄露的风险时,都必须重复灾难恢复过程。对于具有被泄露的密钥导出密钥的每个公用事业仪表重复该过程。公用事业仪表和/或
前端系统和/或密钥管理系统跟踪已针对给定仪表替换了多少次密钥导出密钥并且存储与使用中的密钥导出密钥相关的版本信息。当密钥导出密钥kdkx的给定版本已经被泄露并且灾难恢复已经启动时,服务器端的前端系统获取与被泄露的密钥导出密钥相关的版本信息。版本信息可以存储在前端系统、密钥管理系统或任何其他系统中。如果版本信息不可用,则可以以替代的安全方式从公用事业仪表获取该信息。
67.至少基于版本信息,在服务器端ss生成密钥代信息kgi。如果版本信息不可用,则可以在版本号上进行跳跃,以确保生成新的密钥代信息。可替代地,可以基于其他信息(比如随机或伪随机号)或者基于日期信息来生成密钥代信息kgi。密钥代信息优选地不被重用。可以在服务器端和现场端(比如分别在安全环境和公用事业仪表中)包括未重用密钥代信息的检查。如果密钥代信息基于时间/日期信息,则可能要求该信息在某个实际日期和时间范围内才能被接受为有效的密钥代信息kgi。
68.基于密钥代信息kgi,使用存储在安全环境se中的灾难恢复密钥drk和密钥导出函数kdf在服务器端导出新的密钥导出密钥kdk2。优选地,在安全环境se中导出新密钥导出密钥kdk2,并且然后将其传送到可信且干净的环境,比如前端系统或密钥管理系统的新实例,以确保新密钥导出密钥kdk2不会被泄露。可替代地,新密钥导出密钥的导出可以在密钥管理系统或前端系统中进行。
69.为了请求在公用事业仪表中将现有密钥导出密钥kdk1替换为新密钥导出密钥kdk2,从服务器端/前端系统向公用事业仪表发送命令数据消息cdm。
70.由于用于保护前端系统与公用事业仪表之间的通信的密钥是从可能被泄露的现有密钥导出密钥kdk1导出的,因此服务器端与现场端之间的通信链路可能不安全。因此,新密钥导出密钥kdk2本身不能被发射到公用事业仪表。为了克服这个问题,前端系统hes向公用事业仪表102发射命令数据消息cdm,请求公用事业仪表也导出与在服务器端针对该公用事业仪表导出的新密钥导出密钥kdk2相同的新密钥导出密钥kdk2。通常,不期望将任何密钥导出密钥kdk或应用密钥app从服务器端传送到现场端,因为有泄露所传送的密钥的风险。
71.然而,确实需要保护命令数据消息cdm,以确保命令数据消息的真实性、前端系统的授权和/或认证中的一个或多个。需要这样以确保仅授权实体(前端系统)可以启动新的密钥导出密钥kdk2的生成以及公用事业仪表中现有密钥生成密钥kdk1的替换。尤其是现有密钥导出密钥kdk1(可能已被泄露)不能用于保护命令数据消息cdm。为了克服这个问题,通过使用从新密钥导出密钥kdk2导出的激活密钥ak来保护命令数据消息cdm。激活密钥是使用密钥导出函数和可选的密钥代信息或参数导出的。命令数据消息cdm可以由基于激活密钥ak计算的一个或多个mac码或哈希值来保护,由此证明发送者(前端系统或服务器端)拥有新密钥导出密钥kdk2并被授权请求替换密钥导出密钥。作为替代方案,激活密钥ak可以被包括在命令数据消息cdm中,并且它本身提供了拥有新密钥导出密钥kdk2的证明,以这种方式,激活密钥变成mac码。在后一种情况下,激活密钥优选地不用于进一步的安全措施。
72.用于请求将现有的密钥导出密钥kdk1替换为新的密钥导出密钥kdk2的命令数据消息cdm包括密钥代信息kgi和认证码cdm

ac(或者可替代地包括激活密钥ak)。用于替换密钥的请求可以是显式的或隐式的,例如,简单地,可以将命令数据消息cdm的标识符或命令数据消息中的参数解释为请求。这些数据不需要保密并且可以作为明文发送。命令数据消
息可以加密也可以不加密。包括在命令数据消息cdm中的密钥代信息kgi与在服务器端ss用于导出新密钥导出密钥kdk2的密钥代信息相同,或者至少可以从命令数据消息导出相同的信息。如上所述,认证码cdm

ac是基于激活密钥ak计算的,该激活密钥ak是基于新密钥导出密钥kdk2导出的。认证码cdm

ac,或者可替代地,激活密钥ak用于验证命令数据消息cdm的真实性、前端系统hes或服务器端ss的授权/认证中的一个或多个。换句话说,认证码cdm

ac,或者可替代地,激活密钥ak提供了生成命令数据消息cdm的实体拥有新密钥导出密钥kdk2的证明。认证码cdm

ac可以包括用于提供上述不同安全方面的一个或多个认证码。基于灾难恢复密钥drk间接保护命令数据消息,因为基于激活密钥ak计算认证码,该激活密钥ak是基于新密钥导出密钥kdk2导出的,并且新密钥导出密钥kdk2是至少基于密钥代信息导出的。这意味着只有有权访问灾难恢复密钥的实体或实体集合才能导出新的密钥导出密钥kdk2,并生成具有正确认证码cdm

ac的命令数据消息,该命令数据消息请求将现有密钥生成密钥kdk1替换为新的密钥生成密钥kdk2。有权访问特定新密钥导出密钥kdk2和密钥代信息的任何实体可以生成请求将现有密钥导出密钥kdk1替换为该特定新密钥导出密钥kdk2的命令数据消息cdm。
73.公用事业仪表被布置为将现有密钥导出密钥kdk1更新为新的密钥导出密钥kdk2,在这点上,在通过仪表通信基础设施mci从前端系统hes接收到请求替换现有密钥导出密钥kdk1的命令数据消息cdm之后执行以下步骤:
74.‑
通过至少将存储在公用事业仪表中的灾难恢复密钥drk和包括在接收到的命令数据消息cdm中的密钥代信息kgi输入到仪表的密钥导出函数kdf来导出新密钥导出密钥kdk2。在公用事业仪表中导出的新密钥导出密钥kdk2与在服务器端导出的新密钥导出密钥kdk2相同,因为在公用事业仪表中和在服务器端使用的密钥导出函数kdf是相同的,并且因为输入到密钥导出函数的参数(即,密钥代信息kgi和灾难恢复密钥drk)是相同的。由于命令数据消息尚未被认证,因此在执行认证之前,不能将现有密钥导出密钥kdk1替换为新密钥导出密钥kdk2。
75.‑
在仪表中从新密钥导出密钥kdk2导出激活密钥ak。仅当正确地导出了新密钥导出密钥kdk2时,才可以正确导出激活密钥。在公用事业仪表中导出的激活密钥ak与在服务器端导出并包括在命令数据消息中或者用于在服务器端计算命令数据消息的认证码cdm

ac的激活密钥ak相同。
76.‑
基于由公用事业仪表导出的激活密钥ak,由公用事业仪表重新计算接收到的命令数据消息cdm的认证码cdm

ac。如果重新计算的认证码cdm

ac与接收到的认证码匹配,则命令数据消息已被验证/被确认。作为替代方案,如果命令数据消息cdm包括激活密钥ak,并且接收到的激活密钥ak与导出的激活密钥ak

匹配,则命令数据消息已被验证/被确认。
77.‑
如果重新计算的认证码与认证码匹配,或者可替代地,导出的激活密钥ak

与在命令数据消息cdm中接收的激活密钥匹配,即,命令数据消息已验证通过,则将现有密钥导出密钥kdk1替换为新密钥导出密钥kdk2。如果命令数据消息没有被公用事业仪表验证为是正确的,则不将现有密钥导出密钥kdk1替换为新密钥导出密钥kdk2,并且公用事业仪表将继续使用现有密钥导出密钥kdk1来导出应用密钥。
78.如果现有密钥导出密钥kdk1被替换为新密钥导出密钥kdk2,则公用事业仪表可以可选地自动重新计算公用事业仪表中的一个或多个应用密钥app。
79.公用事业仪表可以可选地被布置为对命令数据消息cdm进行响应。该响应可以包括比如以下信息:指示现有密钥导出密钥kdk1是否被替换为新密钥导出密钥kdk2的数据;与现有密钥导出密钥或新密钥导出密钥相关的密钥代信息kgi;一个或多个认证码或任何其他相关数据。
80.结合上述元素,可以提供用于替换现有密钥导出密钥kdk1的仪表通信基础设施mci,比如读表系统。该仪表通信基础设施包括:服务器端ss,该服务器端包括前端系统hes和安全环境se;以及现场端fs,该现场端包括多个公用事业仪表102。现场端fs和服务器端ss被布置为通过仪表通信基础设施mci相互通信。可以通过仪表通信基础设施传送读表数据、传感器数据、监控数据、命令数据消息、配置数据、固件更新等。服务器端ss前端系统hes被配置用于使用应用密钥apk与现场端公用事业仪表进行安全通信,这些应用密钥是在服务器端和现场端使用密钥导出密钥kdk导出的。服务器端ss、安全环境se被布置用于存储灾难恢复密钥drk。由于通常可通过因特网访问服务器端,并且所有仪表的灾难恢复密钥都存储在服务器端,因此服务器端安全环境se优选地包括硬件安全模块。服务器端安全环境se可以是不连接到因特网的离线环境。当在仪表通信基础设施mci中启动灾难恢复过程时,服务器端被配置用于基于存储在安全环境中的灾难恢复密钥drk并且基于密钥代信息来导出新的密钥导出密钥kdk2。新密钥导出密钥kdk2可以在服务器端的任何部分中导出,但是优选在安全环境se中导出。密钥代信息优选地存储在服务器端,但是也可以从其他来源获取。进一步地,如上所述,服务器端将通过仪表通信基础设施mci向公用事业仪表中的一个或多个传送命令数据消息cdm。现场端公用事业仪表被配置用于从服务器端接收命令数据消息cdm。公用事业仪表将通过使用存储在公用事业仪表中的灾难恢复密钥drk并基于在命令数据消息中接收的密钥代信息导出与在服务器端导出的新密钥导出密钥kdk2相同的新密钥导出密钥kdk2来执行命令数据消息。进一步地,公用事业仪表将如上所述验证命令数据消息,并且如果被验证,则将现有密钥导出密钥kdk1替换为新密钥导出密钥kdk2。
81.灾难恢复密钥可以使用标准windows fips 140

2 1级验证随机函数生成。更具体地,microsoft system.security.cryptography.aesmanaged库可用于生成灾难恢复密钥。在一个实施例中,密钥/灾难恢复密钥可以在1%的显著性水平上具有app.115位的有效熵量。
82.用于从灾难恢复密钥导出密钥导出密钥kdk的密钥导出函数kdf可以是ietf rfc5869(issn:2070

1721,2010年5月)中描述的hkdf,有关密钥导出的进一步特定技术可以参见2018年4月的nist sp 800

56c。该相同的密钥导出函数和技术可以用于从密钥导出密钥kdk导出应用密钥app。
83.仪表通信基础设施mci应被理解为包括从现场端fs的仪表到服务器端ss的多个物理或虚拟服务器的hw和sw元件的整个系统。如引言中所述,仪表通信基础设施mci还可以包括用于重传或中继数据的数据中继器(未示出)。公用事业仪表本身也可以用作中继器或路由器,以创建网状网络作为仪表通信基础设施的一部分。用于服务器端ss与现场端fs之间的通信的蜂窝网络或其他第三方网络被视为仪表通信基础设施的一部分。数据可以在公用事业仪表与前端系统之间单向和双向传输。另外,可以经由有线或无线连接传输数据。
84.本发明可以通过硬件、软件、固件或这些的任何组合来实施。本发明或其一些特征也可以被实施为在一个或多个数据处理器和/或数字信号处理器上运行的软件。本发明的
实施例的各个元件可以以任何合适的方式在物理上、功能上和逻辑上实施,比如在单个单元中、在多个单元中或作为单独的功能单元的一部分。本发明可以在单个单元中实施,或在物理上和功能上分布在不同的单元和处理器之间。
85.虽然已经结合特定实施例描述了本发明,但其不应被解释为以任何方式局限于所给出的示例。本发明的范围应根据所附的权利要求来解释。在权利要求的背景中,术语“包括(comprising)”或“包括(comprises)”不排除其他可能的元素或步骤。此外,提及比如“一个(a)”或“一种(an)”等不应被解释为排除多个。权利要求中关于各图中所指示的元素使用的附图标记也不应被解释为对本发明的范围进行限制。此外,在不同权利要求中提到的单独的特征可以有利地组合,并且在不同的权利要求中提及这些特征并不排除:特征的组合不是可能的和有利的。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献