通信系统中的消息认证方法及通信系统技术方案

技术编号:10387860 阅读:117 留言:0更新日期:2014-09-05 13:17
在各ECU中按照每个CAN ID对消息被发送的次数进行计数。发送了主消息的发送节点根据主消息的数据字段、CAN ID以及与CAN ID对应的计数值生成MAC并作为MAC消息发送。接收到主消息的接收节点根据主消息所包含的数据字段、CAN ID以及与CAN ID对应的计数值生成MAC,判断所生成的MAC与MAC消息所包含的MAC是否一致。由此,能够验证主消息是否正当。这样,能够进行由MAC进行的消息认证而不变更CAN协议。

【技术实现步骤摘要】
【国外来华专利技术】通信系统中的消息认证方法及通信系统
本专利技术涉及通信系统中的消息认证技术。
技术介绍
作为车载网络,采用了CAN(ControllerAreaNetwork:控制器局域网)。在该CAN中设有被称为OBD2端口的诊断用端口,并能够接收在网络上流动的消息(message)或在网络上发送消息。由于OBD2端口是不进行消息的过滤处理等的直接接口,所以当在OBD2端口上连接了不正当的设备时,存在被重放攻击(ReplayAttack)的危险性。在此所述的重放攻击是指通过窃听在网络上流动的消息并存储其内容,重发所存储的消息来引起不正当的动作的攻击。此外,不正当的设备即使不知道消息的内容,如果知道消息发送后的车辆动作,则也能够掌握该消息的意图。作为防止这种重放攻击的技术,提出了在CAN消息中嵌入消息认证代码(MAC)的技术(非专利文献1)。在该方案中,如图11所示,根据从第N个至第N+3个这4个CAN消息所包含的数据字段(datafield)(64×4=256位)生成64位的MAC,并按每16位划分为4份,嵌入从第N+4个至第N+7个这4个CAN消息的CRC字段(16位)中进行发送。在接收侧,从第N+4个至第N+7个CAN消息的CRC字段取得MAC,根据是否与由从第N个至第N+3个数据字段生成的MAC一致,来判断从第N个至第N+3个CAN消息是否正当。在从CRC字段得到的MAC与根据数据字段计算出的MAC不同的情况下,可以判断为从第N个至第N+3个CAN消息的任一个不正当。在先技术文献非专利文献1:D.K.Nilsson,U.E.Larson,E.Jonsson,“EfficientIn-VehicleDelayedDataAuthenticationBasedonCompoundMessageAuthenticationCodes”(基于复合消息认证代码的高效的车载延迟数据认证),IEEE68thVTC2008-Fall,2008,1-5.
技术实现思路
专利技术所要解决的课题然而,在非专利文献1中示出的方法中,存在以下问题。第一,由于为了验证第N个消息的正当性而需要接收直到第N+7个为止的消息,所以存在消息的验证需要花费时间的问题。第二个问题点为在非专利文献1中示出的方法变更了已标准化的CAN协议。CRC字段原本用于数据字段等的数据内容的错误检测。若考虑到通过硬件来实现CAN控制器的处理的现状,则变更协议是不现实的。因此,该第二问题点更加严重。本专利技术的目的在于提供一种能够以可应用于CAN协议的方式进行消息认证的技术。用于解决问题的方案在本专利技术涉及的消息认证方法中,发送主消息和包含主消息的消息认证代码(MessageAuthenticationCode:MAC)的MAC消息。在接收侧,如果根据主消息计算出的MAC与MAC消息所包含的MAC一致,则可以判断主消息是正当的消息,如果不一致,则可以判断主消息为不正当的消息。在本专利技术中,其特征在于按以下方式生成MAC。通信系统内的各节点存储每当在网络上传送主消息时增加的计数值。发送主消息的节点在该发送时增加计数值。除发送节点以外,当检测到在网络上传送了主消息时增加计数值。此外,虽然计数值的初始值无需为0,可以为任意值,但需要在各节点设为相同。另外,增加也可以不是使计数值每次加1。只要是各节点按照相同的规则使计数值变化的方式即在全部节点处计数值变得相同的方式即可,也可以是每当主消息发送时按照任意方式使计数值变化的方式。主消息的发送节点利用该计数值生成包含在MAC消息中的MAC。更具体而言,对主消息和计数值应用规定的算法而生成MAC。该规定的算法例如可以是由共用密钥进行加密的加密算法、需要事先共有密钥的带密钥哈希函数等。此外,在生成MAC时,无需利用主消息的全部数据位,也可以仅根据其一部分和计数值来生成MAC。在主消息的接收节点也同样地,将规定的加密算法应用于接收到的主消息和计数值来生成MAC。根据本专利技术,能够以可应用于CAN协议的方式,通过MAC验证主消息的正当性。例如,即使是不正当的设备发送了与以前接收到的主消息对应的MAC消息的情况下,由于在重发时计数值发生了变化,正确的MAC也发生了变化。因此,即使不正当的设备进行重放攻击,也能够在接收节点处检测出主消息不正当。另外,在本专利技术中,由于主消息以明文的状态在网络上传送,所以不正当的设备能够知道主消息,但是计数值不在网络上传送,对不正当的设备来说计数值是未知的。因此,也存在以下优点,即使窃听了主消息和MAC消息,也不能据此推测用于生成MAC的加密算法、密钥。在本专利技术中,主消息可以包含消息ID和数据字段。在该情况下,主消息的计数值优选按照每个消息ID独立地计数。而且,MAC的生成优选基于主消息所包含的消息ID和数据字段、以及与该消息ID对应的计数值来生成。此外,在这种情况下,也可以仅根据数据字段和计数值来生成MAC。另外,在本专利技术中,MAC优选从使共用密钥加密算法作用于消息ID、数据字段以及与消息ID对应的计数而生成的位串,提取规定的位而生成。该方式在根据共用密钥加密算法得到的位串超过MAC消息中能够存储的位数的情况下有效。此外,位的提取方法只要在各节点相同即可,可以是任意的方法。例如,可以从根据共用密钥加密算法得到的位串提取前半部分的位串、提取后半部分的位串、提取第奇数个位串、第偶数个位串。另外,在本专利技术中,优选根据来自主节点的告知而进行计数值的初始化。即,优选网络上的一个节点成为主节点,在通信系统启动时通过广播来告知与各消息ID对应的计数值的初始值。这样,即使各节点没有非易失性存储器,也能够在全部节点将计数值设为相同。更具体而言,优选按以下方式进行计数值的初始化。即,主节点按照每个消息ID生成随机值并进行广播发送。各节点取得广播发送的随机值,对该随机值作用共用密钥加密算法。然后,采用得到的值作为计数值的初始值。这样,由于计数值的初始值不在网络上直接流动,所以,不正当的设备无法得知计数值以怎样的值进行了初始化。如果知道了初始值,则能够知道任意时刻的计数值,也能够根据主消息和MAC消息来解密密钥,但通过隐藏计数的初始值,也能够避免这种危险性。此外,本专利技术能够作为包含上述处理的至少一部分的消息认证方法进行掌握。另外,本专利技术也能够作为执行该方法的计算机程序进行掌握。另外,本专利技术能够作为执行上述处理的至少一部分的通信系统以及构成通信系统的通信装置进行掌握。上述装置以及处理的每一个能够以各种可能的方式相互组合而构成本专利技术。专利技术的效果根据本专利技术,能够以可应用于CAN协议的方式来进行消息的认证。附图说明图1是表示CAN协议中的数据帧的格式的图。图2是说明本实施方式中的消息验证处理的概要的图。图3是说明本实施方式中的MAC计算方法的概要的图。图4是表示本实施方式中的ECU的功能结构的图。图5是表示发送消息的ECU中的各功能部的协作的图。图6是表示发送主消息的ECU中的处理的流程的流程图。图7是表示接收消息的ECU中的各功能部的协作的图。图8是表示接收主消息的ECU中的处理的流程的流程图。图9是表示接收计数初始化消息的ECU中的各功能部的协作的图。图10(a)是表示发送计数初始化消息的主节点中的处理的流程的流程图;(b)是表示接收计数初始化本文档来自技高网
...
通信系统中的消息认证方法及通信系统

【技术保护点】
一种消息认证方法,是网络连接了多个节点的通信系统中的消息认证方法,其特征在于,包含:各节点在每当主消息由其他节点发送时,增加存储在各节点中的计数值的步骤;发送节点发送主消息的步骤;发送节点在发送所述主消息时增加计数值的步骤;发送节点发送包含消息认证代码的MAC消息的步骤,所述消息认证代码基于所述主消息和所述计数值而生成;接收节点接收所述主消息和所述MAC消息的步骤;以及接收节点根据基于所述主消息和所述计数值生成的消息认证代码与所述MAC消息所包含的消息认证代码是否一致,来验证所述主消息的正当性的步骤。

【技术特征摘要】
【国外来华专利技术】2011.10.31 JP 2011-2391611.一种消息认证方法,是网络连接了多个节点的通信系统中的消息认证方法,其特征在于,包含:各节点在由各节点以外的其他节点发送具有上述各节点发送或接收的消息ID的主消息时,增加存储在各节点中的计数值的步骤;各节点中的发送节点发送主消息的步骤;发送节点在发送所述主消息时增加计数值的步骤;发送节点发送包含消息认证代码的MAC消息的步骤,所述消息认证代码基于所述主消息和所述计数值而生成;各节点中的接收节点接收所述主消息和所述MAC消息的步骤;以及接收节点根据基于所述主消息和所述计数值生成的消息认证代码与所述MAC消息所包含的消息认证代码是否一致,来验证所述主消息的正当性的步骤。2.根据权利要求1所述的消息认证方法,其特征在于,所述消息认证代码通过利用共用密钥的加密算法而生成。3.一种消息认证方法,是网络连接了多个节点的通信系统中的消息认证方法,其特征在于,包含:各节点在具有上述各节点发送或接收的消息ID、即规定的消息ID的消息由各节点以外的其他节点发送时,增加存储于各节点中的与该消息ID对应的计数值的步骤;各节点中的发送节点发送包含消息ID和数据字段的主消息的步骤;发送节点在发送所述主消息时增加与所述消息ID对应的计数值的步骤;发送节点发送包含消息认证代码的MAC消息的步骤,所述消息认证代码基于所述消息ID、所述数据字段以及与所述消息ID对应的计数值而生成;各节点中的接收节点接收所述主消息和所述MAC消息的步骤;以及接收节点根据基于与所述消息ID对应的计数值、以及所述主消息所包含的所述消息ID和所述数据字段而生成的消息认证代码与所述MAC消息所包含的消息认证代码是否一致,来验证所述主消息的正当性的步骤。4.根据权利要求3所述的消息认证方法,其特征在于,所述消息认证代码通过利用共用密钥的加密算法而生成。5.根据权利要求4所述的消息认证方法,其特征在于,所述消息认证代码从位串提取规定的位而生成,所述位串使利用所述共用密钥的所述加密算法作用于所述消息ID、所述数据字段以及与所述消息ID对应的计数值而生成。6.根据权利要求3~5中任一项所述的消息认证方法,其特征在于,主节点在通信系统启动时通过广播来告知与各消息ID对应的计数值的初始值。7.根据权利要求6所述的消息认证方法,其特征在于,所述主节点按照每个消息ID生成随机值并进行广播发送,各节点将使利用共用密钥的加密算法作用于所接收到的随机值而生成的数值,用作与各消息ID对应的计数值的初始值。8.一种通信系统,是至少网络连接了发送节点和接收节点的通信系统,其特征在于,发送节点具有:计数值存储构件,所述计数值存储构件存储计数值;计数值增加构件,每当接收发送节点以外的其他节点发送的主消息时以及每当自身节点发送主消息时,所述计数值增加构件增加计数值;主消息发送构件,所述主消息发送构件发送主消息;以及MAC消息发送构件,所述MAC消息发...

【专利技术属性】
技术研发人员:小熊寿松本勉畑正人田边正人吉冈克成大石和臣
申请(专利权)人:丰田自动车株式会社国立大学法人横滨国立大学
类型:发明
国别省市:日本;JP

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1