用于认证组播消息的方法和设备的制作方法

文档序号:7885067阅读:195来源:国知局
专利名称:用于认证组播消息的方法和设备的制作方法
技术领域
本发明涉及一种用于认证组播消息的方法和设备、尤其是对在对等系统的现场设备之间被交换的并且作为有效数据分别包含G00SE(Generic Object Oriented SubstationEvents:面向通用对象的变电站事件)消息或者SMV (Sampled Measured Values:采样测量值)消息的组播消息进行认证的方法和设备。
背景技术
现场设备在检测到事件之后将组播消息传输给已注册的其他现场设备,这些已注册的其他现场设备接收所述组播消息。这些组播消息从已检测到事件的现场设备通过无线的或者有线的消息连接被传输给其余现场设备。这种现场设备例如可以是保护设备、例如智能断路器,所述智能断路器处于供电网络的变电站中。不同的现场设备可以彼此间交换用于电保护以及用于传输测量数据的消息。此外,现场设备可以监控和控制各种各样的功能。在检测到事件之后,通过现场设备不是给特定的目标地址发送消息,而是将消息作为广播消息和/或组播消息发送给不同的进行接收的现场设备,这些进行接收的现场设备接收所述组播消息并且判定所接收的消息是否在其侧被处理。组播消息作为具有管理数据和/或报头数据和有效数据的数据包来传输。包含在组播消息中的有效数据可以通过GOOSE消息或者SMV消息来形成。标准IEC61850针对在能量供应网络内的变电站控制设备来定义消息。为了保护所传输的组播消息,在此根据标准IEC61850建议使用数字签名。针对每个消息,为了防止消息被篡改和/或为了从进行发送的现场设备侧进行完整性保护,计算数字签名并且通过所有进行接收的现场设备标识数字签名。但是,该方法具有明显缺点:为了创建数字签名和为了通过所有进行接收的现场设备验证所述数据签名,存在显著的计算开销,并且相对应的现场设备必须拥有用于执行这种计算的相对应的资源。此外,验证所接收的组播消息必须在预给定的应答时间内进行,所述预给定的应答时间可包括数毫秒。

发明内容
因而,本发明的任务是提出一种用于认证组播消息的方法和设备,所述方法是特别有效的并且具有低计算开销。根据本发明,该任务通过具有在权利要求1中所说明的特征的方法来解决。本发明提出了一种用于认证组播消息的方法,其具有步骤:
通过发送设备基于该发送设备的锚定值来计算初始化哈希链,和在初始化阶段,将初始化哈希链的最后链环节作为初始化函数值分配给至少一个接收设备;
通过存储所接收的组播消息的接收设备来接收组播消息;
通过接收设备来接收认证密钥释放消息,
其中认证密钥释放消息包含为认证所存储的组播消息而由发送设备释放的加密认证密钥; 通过接收设备借助预给定的加密函数来计算针对在认证密钥释放消息中所包含的加密认证密钥的加密函数值;
将认证密钥的通过接收设备所计算的加密函数值与在初始化阶段中事先通过发送设备被分配给接收设备的初始化函数值进行比较,用于检验包含在认证密钥释放消息中的加密认证密钥的有效性;并且
通过接收设备借助被识别为有效的加密认证密钥对来自发送设备的被存储在接收设备中的组播消息进行认证。根据本发明的认证方法提供如下优点:在没有中央节点和/或中央现场设备的情况下足以进行密钥管理。根据本发明的方法因此也在没有用于现场设备组的组控制器的情况下起作用。在根据本发明的方法的一个实施形式中,发送设备在初始化阶段用加密私钥对初始化函数值进行签名,并且将经签名的密钥分配给接收设备,所述接收设备分别借助公钥来验证接收到的初始化函数值的签名。初始化函数值优选地在成功验证签名之后被存储或暂存,用于后续检验包含在认证密钥释放消息中的加密密钥的有效性。初始化函数值的存储可以临时地进行。在根据本发明的方法的实施形式中,在初始化阶段中所分配的初始化函数值通过哈希函数值来形成,所述哈希函数值利用预给定的哈希函数来计算。通过发送设备在初始化阶段中所分配的哈希函数值形成参考哈希值,所述参考哈希值形成通过发送设备计算的消息保护哈希值链的最后环节,所述消息保护哈希值链通过发送设备借助预给定的哈希函数基于发送设备的锚定值在初始化阶段中被计算。在根据本发明的方法的一个可能的实施形式中,发送设备在发送组播消息之后在预先确定的可配置的时段内发送相关的认证密钥释放消息,所述认证密钥释放消息包含为认证组播消息所设置的认证密钥。在根据本发明的方法的一个可能的实施形式中,接收设备所接收的并且存储的组播消息具有管理数据、有效数据和消息认证码。在根据本发明的方法的一个可能的实施形式中,组播消息的有效数据通过至少一个GOOSE (面向通用对象的变电站事件)消息来形成。在根据本发明的方法的另一可能的实施形式中,组播消息的有效数据通过至少一个SMV (采样测量值)消息来形成。在根据本发明的方法的一个可能的实施形式中,在组播消息中所包含的消息认证码借助HMAC函数或者借助CBC-MAC函数根据组播消息的有效数据和加密认证密钥通过发送设备来计算。在根据本发明的方法的一个可能的实施形式中,如果包含在所接收的组播消息中的消息认证码与如下消息认证码相一致,则接收设备对所接收的和所存储的组播消息进行认证:所述消息认证码通过接收设备借助HMAC函数或者借助CBC-MAC函数根据组播消息的有效数据以及被识别为有效的加密认证密钥来计算,所述加密认证密钥包含在认证密钥释放消息中。在根据本发明的方法的一个可能的实施形式中,包含在认证密钥释放消息中的加密认证密钥是哈希值,所述哈希值通过消息保护哈希链的在所计算的消息保护哈希链中在紧接在前的认证密钥释放消息中所包含的哈希值之前的链环节形成,直至达到消息保护哈希链的锚定值。在根据本发明的方法的一个可能的实施形式中,在初始化阶段中通过发送设备基于该发送设备的锚定值所计算的初始化哈希链借助哈希函数来计算,所述初始化哈希链的链环节被设置用于初始化其他哈希链、尤其是消息保护哈希链。在根据本发明的方法的一个实施形式中,设置有不同的组播消息类型,其中发送设备针对每种组播消息类型分别基于锚定值借助针对相关组播消息类型的预给定的哈希函数来计算相关消息类型哈希链。在根据本发明的方法的一个实施形式中,不同的消息类型哈希链分别基于通过初始化哈希链所提供的锚定值来计算,其中锚定值通过初始化哈希链的链环节来形成。此外,本发明还提出一种现场设备,其具有:
用于接收至少一个组播消息和时间延迟地获得的来自其他现场设备的相关认证密钥释放消息的接口,
数据存储器,用于存储所接收的组播消息和在相关认证密钥释放消息中分别包含的加密认证密钥,并且用于存储在初始化阶段中被分配给现场设备的初始化函数值,所述加密认证密钥被设置用于认证相应的组播消息,并且具有
认证单元,用于借助预给定的加密函数来计算相应的加密认证密钥的加密函数值,其中所计算的函数值与所存储的初始化函数值进行比较,用于检验加密认证密钥的有效性,并且所存储的组播消息根据被识别为有效的加密认证密钥被认证。在根据本发明的现场设备的另一可能的实施形式中,该现场设备此外还具有计算单元,所述计算单元借助加密函数来计算初始化函数值,其中初始化函数值在初始化阶段中以用现场设备的私钥签名的方式被分配给其他现场设备。在根据本发明的现场设备的一个可能的实施形式中,现场设备通过接口发送至少一个组播消息,并且以时间延迟的方式给其他现场设备发送相关的认证密钥释放消息,其中认证密钥释放消息包含为认证组播消息而被现场设备释放的认证密钥。在根据本发明的现场设备的一个可能的实施形式中,所发送的组播消息具有管理数据(报头)、有效数据和消息认证码。在根据本发明的现场设备的一个可能的实施形式中,消息认证码根据组播消息的有效数据和加密认证密钥通过现场设备的计算单元来计算。在根据本发明的现场设备的一个可能的实施形式中,组播消息的有效数据通过至少一个GOOSE (面向通用对象的变电站事件)消息来形成。在根据本发明的现场设备的一个可替选的实施形式中,组播消息的有效数据通过至少一个SMV (采样测量值)消息来形成。此外,本发明还提出了一种具有多个现场设备的对等系统,所述现场设备分别具有:用于接收至少一个组播消息和时间延迟地获得的来自其他现场设备的相关认证密钥释放消息的接口 ;用于存储所接收的组播消息、用于存储在相关认证释放消息中分别包含的加密认证密钥并且用于存储在初始化阶段中被分配给相应的现场设备的初始化函数值的数据存储器,所述加密认证密钥被设置用于认证相应的组播消息;以及被设置用于借助预给定的加密函数计算相应的加密认证密钥的加密函数值的认证单元,其中所计算的函数值与所存储的初始化函数值进行比较,用于检验加密认证密钥的有效性,并且所存储的组播消息根据被识别为有效的加密认证密钥被认证。在根据本发明的对等系统的一个优选实施形式中,现场设备在时间上彼此同步。在根据本发明的对等系统的一个可能的实施形式中,现场设备分别具有用于接收NTP (Network Time Protocol (网络时间协议))同步消息或MMS消息的单元。在根据本发明的对等系统的一个可能的实施形式中,在该系统中所交换的组播消息具有不同的组播消息类型,所述组播消息类型具有不同的优先级,其中在发送组播消息与发送相关的认证密钥释放消息之间的可配置的时长越短,则组播消息的相应的组播消息类型的优先级越高。


此外,参照所附的视图描述了根据本发明的用于认证在对等系统的现场设备之间交换的组播消息的认证方法的可能实施形式。图1示意性示出了对等系统,该对等系统具有多个根据本发明的现场设备,所述现场设备按照根据本发明的认证方法来认证组播消息;
图2示出了根据本发明的现场设备的一个实施例的框 图3示出了用于描述根据本发明的用于认证组播消息的方法的一个实施例的流程图; 图4示出了用于阐述根据本发明的认证方法的信号流 图5示出了通过根据本发明的方法可认证的组播消息的可能的数据格式。
具体实施例方式如从图1中可看到的那样,根据本发明的用于认证组播消息的认证方法例如可以
使用在对等系统I中,该对等系统I具有多个现场设备2-1、2-2、2-3.....2-m。现场设备
2-1可以通过它们彼此间交换消息的方式彼此经由无线的或有线的消息连接来通信。现场设备2-1可以是固定安装的现场设备,但也可以是移动现场设备。现场设备2-1可以作为发送设备发送消息并且可以作为接收设备来接收消息。如果通过现场设备(例如图1中所示的现场设备2-1)识别出事件,则现场设备2-1可以作为发送设备将组播消息MC-N发送给对点对系统I的其余现场设备,如在图1中所示。现场设备2-1例如可以是测量设备、监控设备或其他控制设备。图2示出了用于使用在图1中所示的系统I中的现场设备2-1的可能的实施例的框图。如图2中所示,现场设备2具有至少一个用于发送和接收消息的接口 2a。接口 2a可以是用于发送和接收无线电信号的无线接口。可替选地,接口 2a也可以是用于连接到网络上的有线接口。接口 2a适于接收至少一个组播消息MC-N。此外,在图2所示的实施例中通过接口 2a可以接收时间延迟地获得的相关认证密钥释放消息KRM(Key Release Message),其来自该系统的其他设备。现场设备2如在图2中所示包含本地数据存储器2b。在数据存储器2b中可以存储或暂存至少一个所接收的组播消息MC-N。此外,在数据存储器2b中存储在所接收的相关认证密钥释放消息(或Key Release Message (KRM))中分别包含的组播消息的加密认证密钥K。所存储的加密认证密钥K在此设置用于认证相应的组播消息MC-N。此外,在现场设备的数据存储器2b中存储在初始化阶段IP中分配给现场设备2的初始化函数值hn。数据存储器2b与现场设备2的认证单元2c连接。该认证单元借助预给定的加密函数H来计算相应的加密认证密钥K的加密函数值h (k),该加密函数值h (k)存储在数据存储器2b中。加密函数H例如可以是哈希函数。所计算的函数值h (K)与存储在数据存储器2b中的初始化函数值hn比较,用以检验该加密认证密钥K的有效性。如果加密认证密钥K识别为有效,则所存储的相关组播消息MC-N接着借助被识别为有效的加密认证密钥K通过该现场设备2的认证单元2c来认证。如在图2中所示,现场设备2附加地可以具有计算单元2d,该计算单元2d借助加密函数H来计算初始化函数值,其中所计算的初始化函数值在该系统I的初始化阶段中以利用该现场设备2的私钥Kphv签名的方式被分配给其他现场设备。私钥Kphv可以以可配置的方式存储在该现场设备2的另外的存取安全的数据存储器中。在由图2中所示的现场设备2经由接口 2a向该系统I的其他现场设备发送组播消息MC-N之后,该现场设备2时间延迟地经由接口 2a将相关认证密钥释放消息KRM发送给其他现场设备。认证密钥释放消息(或Key Release Message)在此包含至少一个为认证组播消息MC-N而由现场设备2释放的认证密钥K。在所发送的组播消息MC-N与接着所发送的相关认证密钥释放消息KRM之间的时间延迟在一个可能的实施形式中可配置并且可以取决于相应的组播消息或组播消息类型的优先级。在一个可能的实施形式中,组播消息MC-N通过现场设备2的计算单元在检测到确定的事件之后自动生成和发送。为了检测事件,在图2中所示的现场设备2可以附加地拥有传感器。在另一可能的实施形式中,借助由其他节点或现场设备接收的消息来识别事件。由现场设备2在识别事件时所发送的组播消息MC-N具有管理数据(报头)、有效数据和消息认证码MAC。在此,认证码根据组播消息MC-N的有效数据和加密认证密钥K通过现场设备2的计算单元2d来计算。所发送的组播消息MC-N因此是确定数据格式的数据包。图5示出了由现场设备2发送的组播消息MC-N的数据格式的可能的例子。该组播消息如图5中所示地包括报头(或管理)数据以及有效数据(或Payload)数据。此外,组播消息MC-N包括所产生的消息认证码MAC,该消息认证码根据组播消息的有效数据和加密认证密钥k通过现场设备2的计算单元2d来计算。在一个可能的实施形式中,在组播消息中包含的有效数据就其而言是消息、尤其是G00SE(Generic Object Oriented SubstationEvents (面向通用对象的变电站事件))消息或SMV (Sampled Measured Values (采样测量值))消息。在现场设备2的一个可能的实施形式中,该现场设备2还如在图2中所示地拥有同步单元2e,该现场设备2利用该同步单元2e来与该系统I的其他现场设备同步。在一个可能的实施形式中,现场设备具有用于接收NTP (Network Time Protocol (网络时间协议))同步消息的单元。在一个可替选的实施形式中,现场设备2具有用于接收MMS消息的单元。在另一可替选的实施形式中,现场设备2具有用于接收IEEE 1588同步消息的单元。图3示出了用于描述根据本发明的用于认证组播消息MC-N的方法的一个实施例的流程图。该系统I如图1中所示的那样首先在初始化阶段IP中在步骤SI中基于相应的现场设备的预先确定的锚定值来计算初始化哈希链。接着,所计算的初始化哈希链的最后链环节作为初始化函数值分配给至少一个接收设备或其余现场设备。在此,发送设备或进行发送的设备在初始化阶段IP中利用加密私钥κ_ν来对初始化函数值hn签名并且将经签名的初始化函数值hn分配给其余现场设备,其中经签名的初始化函数值hn形成初始化哈希链的最后链环节。在由其余现场设备成功验证初始化函数值的情况下,所分配的初始化函数值匕存储在所述其余现场设备的分别存在的本地数据存储器2b中。初始化函数值因此在成功验证签名之后相应地存储在其余现场设备的数据存储器2b中,用于后续由所述其余现场设备检验在认证密钥释放消息KRM中包含的加密密钥k的有效性。在一个优选的实施形式中,在初始化阶段IP中所分配的初始化函数值hn通过哈希函数值形成,该哈希函数值利用预给定的哈希函数H来计算。通过进行发送的现场设备在初始化阶段IP中所分配的哈希函数值hn形成参考哈希值,该参考哈希值形成由进行发送的现场设备所计算的消息保护哈希链的最后环节。消息保护哈希链通过进行发送的现场设备或发送设备借助预给定的哈希函数H基于发送设备的锚定值在初始化阶段IP中被计算。该系统I的每个现场设备2-1优选地拥有各自的锚定值。在现场设备2-1在初始化阶段中在步骤SI中从其他现场设备获得初始化函数值并且在成功验证之后已将该值存储在该现场设备的本地数据存储器2b中之后,该现场设备2在另一步骤S2中接收来自其他现场设备的组播消息MC-N,并且将所接收的组播消息MC-N同样存储在该现场设备的本地数据存储器2b中。曾发送组播消息MC-N的现场设备在预先确定的可配置的时段Λ t内发送相关认证密钥释放消息或密钥释放管理消息,认证密钥释放消息或密钥释放管理消息包含设置用于认证组播消息MC-N的认证密钥K。认证密钥释放消息KRM通过所接收的现场设备2在步骤S3中被接收。所接收的认证密钥释放消息KRM包含为认证已暂存在数据存储器2中的组播消息MC-N而由进行发送的 现场设备所释放的加密认证密钥K。在另一步骤S4中,通过所接收的现场设备的认证单元2c借助预给定的加密函数H来计算用于在所接收的认证密钥释放消息KRM中包含的加密认证密钥K的加密函数值h(K)。在一个可能的实施形式中,认证单元2c通过配置接口利用相应函数来预配置。在另一步骤S5中,通过现场设备2的认证单元2c将由进行接收的现场设备2所计算的认证密钥K的加密函数值h (K)与在初始化阶段IP中事先由进行发送的现场设备分配给进行接收的现场设备2的初始化函数值hn比较,用于检验在认证密钥释放消息KRM中包含的加密认证密钥K的有效性。如果加密认证密钥K由进行接收的现场设备识别为有效,则在另一步骤S6中对来自进行发送的现场设备的存储在进行接收的现场设备中的组播消息MC-N进行认证。经认证的组播消息MC-N于是被进一步处理或分析。在一个可能的实施形式中,在组播消息MC-N中包含的消息认证码MAC借助HMAC函数根据组播消息MC-N的有效数据利用加密认证密钥K通过进行发送的现场设备来计算。在一个可能的实施形式中,利用HMAC函数计算完整性检查值(或Integrity Check ValueICV)。在一个可能的实施形式中,HMAC函数具有如下式子:
HMAC (H, N) = H((K XOR opad) | | H((K XOR ipad) |N));
其中N是消息,该消息作为有效数据包含在组播消息MC-N中。在该变型方案中,进行接收的现场设备将所接收的消息存储用于验证其真实性。
在另一变型方案中,消息认证码MAC如下地计算:
MAC(K, N) =H(K H(N)) ο该变型方案允许预先计算消息H (H)的哈希值。在该实施形式中,只需暂存哈希值而不暂存整个消息N来验证其真实性。如果在所接收的组播消息MC-N中包含的消息认证码MAC与消息认证码MAC’相一致,则进行接收的现场设备认证所接收的和所存储的组播消息MC-N,其中消息认证码MAC’通过接收设备借助函数尤其是HMAC函数或CBC-MAC函数根据组播消息的有效数据和被识别为有效的加密认证密钥K来计算,被识别为有效的加密密钥K包含在认证密钥释放消息KRM 中。在认证密钥释放消息KRM中包含的加密认证密钥K在此优选形成哈希值,该哈希值通过消息保护哈希链的在所计算的消息保护哈希链中在紧接在前的认证密钥释放消息中所包含的哈希值hn之前的链环节Iv1形成,直至达到消息保护哈希链的锚定值。在初始化阶段IP中,通过进行发送的现场设备或发送设备基于进行发送的现场设备的锚定值借助哈希函数H来计算初始化哈希链,该初始化哈希链的链环节Iii在一个可能的实施形式中设置用于初始化其他哈希链,尤其是消息保护哈希链。在根据本发明的方法的一个可能的实施形式中,设置有不同的组播消息类型。在此,进行发送的现场设备针对每个组播消息类型分别基于锚定值借助用于相应的组播消息类型的预给定的哈希函数来计算相关的消息类型哈希链。不同的消息类型哈希链分别基于通过初始化哈希链提供的锚定值来计算,其中锚定值分别通过初始化哈希链的链环节来形成。在该系统I中交换的组播消息MC-N可以具有不同的组播消息类型MC-N-TYP,组播消息类型MC-N-TYP具备不同的优先级。 在一个可能的实施形式中,在发送组播消息MC-N与发送与其相关的认证密钥释放消息KRM之间可配置的时长Λ t越短,则组播消息的相应组播消息类型的优先级就越高。例如,在一个可能的实施形式中,针对快消息(fast messages)、具有中等速度的消息(medium speed messages (中速消息))和具有必要的低传输速度的消息(low speed messages (低速消息))定义不同的优先级。快或关键消息再次是具有高优先级的待传输消息,也就是说,在这种消息的情况下,在发送相应的组播消息MC-N与发送与其相关的认证密钥释放消息KRM之间的时长是小的并且例如可以为小于5毫秒。在图4中,还用于阐明根据本发明的方法。在初始化阶段IP中借助进行发送的现场设备或发送设备SG基于发送设备SG的锚定值来计算初始化哈希链,并且接着将初始化哈希链的最后链环节作为初始化函数值hn分配给至少一个接收设备EG。在该系统的运行阶段中,现场设备SG例如在检测到事件时将组播消息MC-N发送给其余进行接收的现场设备EG。在确定的可配置的时间延迟Λ t之后,发送设备SG还将认证密钥释放消息KRM(KeyRelease Message)发送给其余现场设备,其中认证密钥释放消息KRM包含为认证事先所发送的组播消息MC-N而由发送设备SG释放的加密认证密钥K。通过接收设备EG如在图4中所示的那样借助预给定的加密函数H来计算用于在认证密钥释放消息KRM中包含的加密认证密钥K的加密函数值h (K)。通过接收设备EG所计算的认证密钥K的加密函数值h (k)接着与在初始化阶段IP中事先通过接收设备获得的初始化函数值hn比较,用于检验在认证密钥释放消息KRM中包含的加密认证密钥K的有效性。如果这两个比较值相同或基本相同,则接着对来自发送设备SG的存储在接收设备EG中的组播消息MC-N进行认证。经认证的消息MC-N接着可以被分析。在根据本发明的方法中,通过使用借助插入数字签名的哈希链实现了多个消息的广播或组播的完整性保护。根据本发明的方法例如可以与用于能量现场设备例如保护站控制器的能量控制协议一起使用。在根据本发明的方法的一个变型方案中,广播-组播-哈希链系接到确定等级或确定类型的消息上。控制消息的类型可以通过进行发送的现场设备具体说明为初始化信息的一部分。这允许进行接收的现场设备确定该哈希链是否趋于与进行接收的现场设备的控制指令相关。当情况如此时,则进行接收的现场设备或接收器存储初始化信息。在一个可能的实施形式中,进行接收的现场设备或接收设备验证所接收的控制消息或组播消息实际是否对应于与哈希初始化信息一致的预告的等级或所预告的类型。在根据本发明的方法的一个可能的实施形式中,初始化哈希链的链环节分别形成其他哈希链尤其是消息保护哈希链的锚定值。这允许针对不同的消息等级或消息类型设置不同的哈希链。此外,可以以此方式确定哈希链,哈希链通常必须被提供,因为基于相应消息类型的高优先级,链环节被快速地消耗或使用。在根据本发明的系统I的一个可能的实施形式中,不同的现场设备2针对不同事件执行本地登记,也就是说,每个现场设备2判定进行接收的组播消息中的哪些由相应的现场设备处理并且哪些组播消息MC-N由相应的现场设备2丢弃。在根据本发明的系统I的一个可能的实施形式中,不同的消息组合成消息组,该消息组可以具有不同的优先级。发送组播消息MC-N的进行发送的现场设备于是可以将哈希链系接成特定的消息群或确定的消息组。这例如通过群准则(Cluster-Kriterium)包含到所示的密钥信息中的方式来实现。此外可能的是,发送现场设备在分配链锚定值时提供该信息。在一个可能的变型方案中,指令或在组播消息MC-N中传输的指令只有当其依据前面所执行的指令或控制数据和所包含的测量数据被评价为可信时才执行。在根据本发明的系统I的一个可能的变型方案中,每个现场设备发送密钥材料的哈希链,以便提供消息保护,并且发送第二哈希链,以便提供另外的哈希链的锚定值。由此,可以减小不对称加密运算的数目。在根据本发明的系统I的一个可能的实施形式中,每个现场设备2都拥有公钥对和由私钥组成的密钥对。在此情况下,公钥被证实并且可供其余现场设备使用。可替选地,证书可以作为协议的一部分被传输。在根据本发明的系统I的一个可能的实施形式中,所计算的哈希链的长度取决于在传输组播消息MC-N与传输密钥释放消息KRM之间所设置的时间间隔At。该时间间隔At越短,则针对相应哈希链所计算的链环节就越多。
权利要求
1.一种用于认证组播消息的方法,其具有下列步骤: Ca)通过发送设备基于该发送设备的锚定值来计算(SI)初始化哈希链,和在初始化阶段(IP)中将初始化哈希链的最后链环节作为初始化函数值分配给至少一个接收设备; (b)通过存储所接收的组播消息(MC-N)的接收设备来接收(S2)组播消息(MC-N); (c)通过接收设备从发送设备接收(S3)认证密钥释放消息(KRM), 其中认证密钥释放消息(KRM)包含为认证所存储的组播消息(MC-N)而被发送设备释放的加密认证密钥(K); Cd)通过接收设备借助预给定的加密函数(H)来计算(S4)针对在认证密钥释放消息(KRM)中所包含的加密认证密钥(K)的加密函数值h (K); Ce)将通过接收设备所计算的认证密钥(K)的加密函数值h (K)与在初始化阶段(IP)中事先通过发送设备被分配给接收设备的初始化函数值(hn)进行比较(S5 ),用于检验包含在认证密钥释放消息(KRM)中的加密认证密钥(K)的有效性;以及 f)通过接收设备根据被识别为有效的加密认证密钥(K)对来自发送设备的被存储在接收设备中的组播消息(MC-N)进行认证(S6)。
2.根据权利要求1所述的方法, 其中,发送设备在初始化阶段(IP)用加密私钥(Kphv)对初始化函数值(hn)进行签名并且将所述初始化函数值(hn)分配给给接收设备,所述接收设备分别借助公钥(Kpub)来验证接收到的初始化函数值(hn)的签名, 其中,在成功验证签名之后,初始化函数值(hn)通过接收设备存储,用于后续对包含在认证密钥释放消息(KRM)中的加密密钥(K)的检验。
3.根据权利要求1或2所述的方法, 其中,在初始化阶段(IP)所分配的初始化函数值(hn)通过哈希函数值来形成,所述哈希函数值利用预给定的哈希函数(H)来计算。
4.根据权利要求3所述的方法, 其中,通过发送设备在初始化阶段(IP)中所分配的哈希函数值(hn)形成参考哈希值,所述参考哈希值形成通过发送设备计算的消息保护哈希链的最后环节,所述消息保护哈希链通过发送设备借助预给定的哈希函数(H)基于发送设备的锚定值在初始化阶段(IP)被计算。
5.根据权利要求1至4所述的方法, 其中,发送设备在发送组播消息(MC-N)之后在预先确定的可配置的时段(At)内发送相关的认证密钥释放消息(KRM),所述认证密钥释放消息(KRM)包含为认证组播消息(MC-N)而设置的认证密钥(K)。
6.根据权利要求1至5所述的方法, 其中,接收设备所接收的并且所存储的组播消息(MC-N)具有管理数据(报头)、有效数据和消息认证码(MAC)。
7.根据权利要求6所述的方法, 其中,组播消息(MC-N)的有效数据通过GOOSE (面向通用对象的变电站事件)消息或者SMV (采样测量值)消 息来构成。
8.根据权利要求6或7所述的方法,其中,在组播消息(MC-N)中所包含的消息认证码(MAC)借助HMAC函数根据组播消息(MC-N)的有效数据和加密认证密钥(K)通过发送设备来计算。
9.根据权利要求8所述的方法, 其中,如果包含在所接收的组播消息(MC-N)中的消息认证码(MAC)与如下消息认证码(MAC ')相一致,则接收设备对所接收的和所存储的组播消息(MC-N)进行认证:所述消息认证码(MAC丨)通过接收设备借助HMAC函数根据组播消息(MC-N)的有效数据以及被识别为有效的加密认证密钥(K)来计算,所述加密认证密钥(K)包含在认证密钥释放消息(KRM)中。
10.根据权利要求2至9所述的方法, 其中,包含在认证密钥释放消息(KRM)中的加密认证密钥(K)是哈希值,只要所述哈希值通过消息保护哈希链的在所计算的消息保护哈希链中在紧接在前的认证密钥释放消息中所包含的哈希值(hn)之前的链环节(Iv1)形成,直至达到消息保护哈希链的锚定值。
11.根据权利要求10所述的方法, 其中,在初始化阶段(IP)中通过发送设备基于该发送设备的锚定值所计算的初始化哈希链借助哈希函数(H)来计算,所述哈希函数(H)的链环节被设置用于初始化其他哈希链、尤其是消息保护哈希链。
12.根据权利要求1至11所述的方法, 其中,设置有不同的组播消息类型(MC-N-TYP),其中发送设备针对每种组播消息类型分别基于锚定值借助针对相应的组播消息类型(MC-N-TYP)的预给定的哈希函数(H)计算相关的消息类型哈希链。
13.根据权利要求12所述的方法, 其中,不同的消息类型哈希链分别基于通过初始化哈希链所提供的锚定值来计算,其中锚定值通过初始化哈希链的链环节来形成。
14.一种现场设备(12),其具有: (a)用于接收至少一个组播消息(MC-N)和时间延迟地获得的来自其他现场设备的相关的认证密钥释放消息(KRM)的接口(2A); (b)数据存储器(2B),用于存储所接收的组播消息(MC-N)和在相关的认证密钥释放消息(KRM)中分别包含的加密认证密钥(K),并且用于存储在初始化阶段(IP)中被分配给现场设备的初始化函数值(hn),所述加密认证密钥(K)被设置用于认证相应的组播消息(MC-N);并且具有 (c)认证单元(2C),用于借助预给定的加密函数(H)来计算相应的加密认证密钥(K)的加密函数值h (K), 其中所计算的函数值h(K)与所存储的初始化函数值(hn)进行比较,用于检验加密认证密钥(K)的有效性,并且所存储的组播消息(MC-N)根据被识别为有效的加密认证密钥(K)被认证。
15.根据权利要求14所述的现场设备, 其中,该现场设备具有计算单元(2D),所述计算单元(2D)借助加密函数(H)计算初始化函数值,所述初始化函数值在初始化阶段(IP)中以用现场设备的私钥(Kphv)签名的方式被分配给其他现场设备。
16.根据权利要求14或15所述的现场设备, 其中,现场设备(2)通过接口(2A)发送至少一个组播消息(MC-N),并且时间延迟地给其他现场设备发送相关的认证密钥释放消息(KRM),其中认证密钥释放消息(KRM)包含为认证组播消息(MC-N)而被现场设备(2)释放的认证密钥(K)。
17.根据权利要求16所述的现场设备, 其中,所发送的组播消息(MC-N)具有管理数据(报头)、有效数据和消息认证码,所述消息认证码根据组播消息(MC-N)的有效数据和加密认证密钥(K)通过现场设备(2)的计算单元(2D)来计算。
18.根据权利要求17所述的现场设备,其中,组播消息(MC-N)的有效数据通过GOOSE(面向通用对象的变电站事件)消息或者SMV (采样测量值)消息来形成。
19.一种具有多个根据权利要求14至18所述的现场设备(2)的对等系统(1),这些现场设备彼此交换分别利用根据权利要求1至14所述的方法来认证的组播消息(MC-N)。
20.根据权利要求19所述的对等系统, 其中,现场设备(2)在时间上被同步。
21.根据权利要求20所述的对等系统, 其中,现场设备(2)分别具有用于接收NTP (网络时间协议)同步消息或MMS消息的单元。
22.根据权利要求19至21所述的对等系统, 其中,在对等系统(I)中所交换的组播消息(MC-N)具有不同的组播消息类型(MC-N-TYP ),所述组播消息类型(MC-N-TYP )具有不同的优先级,其中在发送组播消息(MC-N)与相关的认证密钥释放消息(KRM)之间的可配置的时长越短,则组播消息(MC-N)的相应的组播消息类型(MC-N-TYP)的优先级就越高。
全文摘要
用于认证组播消息的方法具有下列步骤通过发送设备基于该发送设备的锚定值来计算(S1)初始化哈希链和在初始化阶段(IP)将初始化哈希链的最后链环节作为初始化函数值分配给至少一个接收设备,通过存储接收到的组播消息(MC-N)接收(S2)组播消息(MC-N),通过接收设备从发送设备接收(S3)认证密钥释放消息(KRM),其中认证密钥释放消息(KRM)包含为认证所存储的组播消息(MC-N)而被发送设备释放的加密认证密钥(K),通过接收设备借助预给定的加密函数(H)计算(S4)针对在认证密钥释放消息(KRM)中所包含的加密认证密钥(K)的加密函数值h(K),将认证密钥(K)的通过接收设备所计算的加密函数值h(K)与在初始化阶段(IP)中事先通过发送设备被分配给接收设备的初始化函数值(hn)进行比较(S5),用于检验包含在认证密钥释放消息(KRM)中的加密认证密钥(K)的有效性;并且通过接收设备根据被识别为有效的加密认证密钥(K)对来自发送设备的被存储在接收设备中的组播消息(MC-N)进行认证(S6)。
文档编号H04L9/32GK103098415SQ201180044259
公开日2013年5月8日 申请日期2011年8月17日 优先权日2010年9月14日
发明者R.法尔克, S.弗里斯 申请人:西门子公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1