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

用于使至少两个设备的时钟同步的方法与流程

2022-06-09 02:22:28 来源:中国专利 TAG:


1.本发明涉及一种用于使车辆的分布式网络中的至少两个设备、尤其是控制设备的时钟同步的方法。此外,本发明涉及一种相应的计算机程序产品,当在车辆的控制单元的处理器上实施时,该计算机程序产品用于执行这种方法。此外,本发明涉及一种用于车辆的相应的网络。此外,本发明涉及一种具有相应网络的相应的车辆。


背景技术:

2.现代车辆往往包括多个设备,例如:例如控制设备,其接管对驾驶员辅助系统、安全系统、舒适功能等的电子控制。控制设备接收来自不同车辆设备的传感器和操作元件的信号,评估这些信号并且控制车辆设备,以便引入特定的功能。车辆中的一些功能需要同时控制多个车辆设备,例如车前区照明装置和空调装置,以便例如车辆准备投入使用;例如门禁系统和相应的存在感测传感器和/或运动感测传感器;例如发动机控制器和用于发动机压力、转速或温度等的传感器。在这些情况下,需要同步地询问来自不同传感器的信号。出于这个原因,需要使多个控制设备的时钟同步。在此,必须确保,同步在网络安全方面是可靠的。用于同步多个设备的时钟的方法通常需要在控制设备之间交换多个消息。在具有缓慢的加密和/或具有难以预测的经历时间的加密的系统中,不能和/或不能足够快和/或不能足够安全地执行对各个消息的单独的认证。


技术实现要素:

3.因此,本发明要解决的技术问题是,提供一种用于使车辆的分布式网络中的至少两个设备、尤其是控制设备的时钟同步的改进的方法,该方法至少部分地克服上述缺点。本发明要解决的技术问题尤其是,提供一种用于使车辆的分布式网络中的至少两个设备、尤其是控制设备的时钟同步的改进的方法,该方法能够简单、快速、可靠和安全地执行并且该方法需要小的计算开销。此外,本发明要解决的技术问题是,提供一种用于执行这种方法的相应的计算机程序产品。此外,本发明要解决的计算问题是,提供一种用于车辆的相应的网络。此外,本发明要解决的技术问题是,提供一种具有相应网络的相应的车辆。
4.根据本发明的上述技术问题通过以下来解决:一种根据本发明的用于使车辆的分布式网络中的至少两个设备、尤其是控制设备的时钟同步的方法;一种根据本发明的用于执行该方法的计算机程序产品;一种根据本发明的用于车辆的相应的网络以及一种根据本发明的具有相应的网络的车辆。在此,结合本发明的各个方面所描述的特征当然也结合本发明的其他方面适用,并且分别反之亦然,使得关于本发明的各个方面的公开总是相互参照或可以相互参照。
5.本发明根据第一方面提供:一种用于使车辆的分布式网络中的至少两个设备的时钟(同样可以被称为时间传感器、时钟发生器和/或时钟计数器)同步的方法,至少两个设备尤其包括第一设备和第二设备,它们优选地为控制设备的形式,例如车辆的单个或多个传感器和/或装置和/或辅助系统的控制设备的形式,该方法包括以下步骤,该步骤优选可以
分两个阶段执行:
6.(阶段1,未加密的或未经认证的,用于时钟的同步):
[0007]-在至少两个设备之间建立未加密通信,以确定至少两个设备的时钟之间的时间差,
[0008]-通过未加密通信在至少两个设备之间交换消息,该消息例如包括从第一设备到第二设备的至少一个请求(作为消息)和从第二设备到第一设备的至少一个响应(作为消息)或多个请求和响应,
[0009]
其中特别地,消息用于同步至少两个设备的时钟,例如根据cristian的算法,
[0010]
和/或其中优选地,消息设置有时间戳,用于计算在发送请求和接收对应的响应之间的循环时间或往返时间(round-trip-time),
[0011]-特别地确定消息的消息对的、优选地合适的消息对的循环时间或往返时间,该消息对的循环时间优选对应于用于同步的期望精度,
[0012]-借助消息、尤其借助特定的循环时间、优选地合适的消息对的循环时间,确定至少两个设备的时钟之间的时间差(也可以被称为偏移),例如在至少两个设备中的第一设备上进行,该第一设备例如首先被激活(和/或在第二设备上进行);
[0013]
(阶段2,加密的,用于随后的同步认证):
[0014]-在至少两个设备之间建立加密通信,以认证消息的交换,
[0015]-优选地通过在至少两个设备处交换和比较针对所发送的消息和/或所接收的消息的哈希值来认证已经用于确定时间差的消息、特别是在确定时间差之前已经交换的消息,
[0016]
其中特别地,优选地通过加密通信或还总是通过未加密通信,共同地或单独地映射、交换和/或比较针对所发送的消息和/或所接收的消息的至少两个设备上的哈希值,
[0017]-如果已成功完成对所交换的消息的认证,则由至少两个设备中的至少一个或由两个设备使用所确定的时间差作为同步结果。
[0018]
在本发明的范围内可以想到,至少两个设备中的每个设备可以自身确定时间差。为此还可以规定,优选通过加密通信在至少两个设备之间交换所确定的时间差。
[0019]
还可以想到,仅一个设备,其例如首先激活,作为中央控制设备(所谓的时间服务器)可以确定时间差。为此还可以规定,所计算的时间差(dt)由已经确定时间差的该设备优选地通过加密通信传输给至少两个设备中的另一设备。当中央控制设备被称为第一设备时,在本发明的范围内可以设置至少一个另外的步骤:
[0020]-优选地通过加密通信将所确定的时间差从至少两个设备中的第一设备传输到第二设备。
[0021]
根据本发明的方法的步骤,特别是在各个阶段内,可以以预先给定的顺序或以改变的顺序执行。有利地,根据本发明的方法的步骤可以至少部分地同时地、彼此错开地或相继地执行。优选地,可以重复地执行根据本发明的方法的步骤,该方法特别是包括两个阶段,以便能够实现时钟的反复的同步。例如,该方法可以周期性地和/或以规则的时间间隔执行。
[0022]
在本发明的意义上的认证是指如下消息(或验证),该消息来自授权的发送者并且消息没有被伪造。第一设备可以向第二设备表明其真实性。然后,第二设备可以向第一设备
证明或确认所声称的真实性。在认证中的方法技术过程可以在本发明的意义上称为认证。
[0023]
用于阶段1的可能的用于同步时钟的算法、例如cristian算法基于消息的交换。每个消息都包含时间戳。通过比较消息的时间戳(和/或到达时间点和/或发送时间点),计算时钟之间的相对时间差。该时间差即为同步结果。每个消息交换都具有一定的延迟,即所谓的往返时间,以便以请求的形式从进行发送的设备到达目的地并且以响应的形式从目的地返回。本发明意义上的请求和响应可以具有相同的内容或不同的内容。此外,往返时间可以具有一定的波动(jitter),该波动同样可以被称为在传输数字信号时的时间时钟波动。这点有利地可以在评估中进行考虑。为了补偿时钟的不一致的运行速度(在下文中也被称为时钟漂移),可以监控一次建立的同步并不时地更新。
[0024]
在同步中,有利地不是仅发送一个请求和一个响应,而是发送多个请求和多个响应。根据cristian方法,从多个请求和对应的响应中等待和选择如下消息对,该消息对具有低于特定阈值的期望的循环时间。通过确定该阈值来确定用于同步的期望精度。可容忍的等待时间以及可接受的循环时间是期望的精度、系统知识和统计的问题。
[0025]
为了保护时间同步不被篡改,可以对整个消息序列进行认证。根据本发明,认证随后在阶段2中进行,在阶段1中获得了结果或同步结果之后进行。
[0026]
在此,本发明的构思在于,消息(请求或响应)的交换首先未经认证地进行。每个设备都记录它发送了哪些消息以及接收了哪些消息。最后,从消息的交换中导出时钟的时间偏移。然后设备建立经过认证的通信。通过这种方式,优选所有先前的消息根据记录进行相互确认,或检查其完整性,从而进行认证。如果认证成功,则使用生成的偏移进行同步。如果认证失败,则丢弃结果。在这种情况下,可以重复该方法。
[0027]
换言之,本发明的构思在于,用于同步的消息在同步期间不被加密。仅使用事后认证来验证先前的通信。因此,同步本身不会受到认证开销的干扰。由于消息的数量对于映射到哈希值几乎不重要,因此可以非常快速、简单地并且以很少的计算开销执行为同步而发送的所有消息的后续认证。
[0028]
哈希值可以有利地分别针对所有发送的消息和所有接收的消息在每个设备上单独地或共同地形成。通过这种方式,也可以保护整个通信免受通过重复先前记录的消息进行的攻击(“重播攻击(replay attack)”,或“重播保护(replayprotection)”)。利用认证来保护通信免受未经授权的中间人的攻击(“中间人攻击(man inthe middle attack)”)。在每个设备上,为所有发送的消息和所有接收的消息计算共同的哈希值,或者分别为所有发送的消息和所有接收的消息计算两个单独的哈希值。针对所有发送的消息和/或针对所有接收的消息的哈希值有利地加密地或未加密地从一个设备发送到另一个设备,在那里将一个或多个所接收的哈希值与针对所有接收的消息和/或针对所有发送的消息的、对应的本地计算的一个或多个哈希值进行比较。如果对应的哈希值一致,则可以将认证称为成功。如果认证失败,则可以重复该方法。
[0029]
主要优点在于,消息的认证与同步的技术方法分离。这是可能的,因为处理欺诈性消息本身不会造成任何损害。仅仅接受结果可能会造成损害。认证作为看门人进行工作。它需要额外的时间,但不会干扰同步的事先协商。在事后使用可信的结果时,认证的小延迟可以忽略不计。
[0030]
此外,在用于使至少两个设备的时钟同步的方法中,可以有利的是,如果认证失
败,则丢弃所计算的时间差。通过这种方式,可以简单且快速地清理操纵的结果。由此可以保证时钟同步时的网络安全。
[0031]
此外,在用于使至少两个设备的时钟同步的方法中,可以有利的是,如果认证失败,则重新开始该方法。因此,尽管存在可能的尝试的网络攻击,但仍可以执行时钟的同步。
[0032]
此外可以有利的是,该方法周期性地执行,即以特定的时间间隔,例如每周、每月或每年,和/或定期地,即与特定事件相关联地,例如在每次发动机起动之后、在特定的时间和/或里程数之后,在检查的范围内,在至少一个设备的更新之后等执行。因此,该方法能够补偿时钟的时钟漂移。因此,可以监控同步并不时地更新同步。
[0033]
此外可以有利的是,该方法可以根据车辆的使用者的期望手动地启动。因此,用户可以确保设备的时钟是同步的,并且建立对车辆的控制系统和/或运行系统的信任。这对于如下情况也可以是有利的,新的设备、例如用户侧的移动设备被耦合到车辆的分布式网络上。
[0034]
此外可以有利的是,该方法由至少两个设备中的例如首先激活的和/或激活的设备自动启动。因此,可以自动地在车辆的网络中执行时间同步。此外可以想到,周期性地和/或定期地自动地启动该方法。此外可能有利的是,一旦新的设备耦合到车辆的网络上,就自动地开始该方法。
[0035]
有利地,也可以执行用于使多于两个的设备的时钟同步的方法。
[0036]
为了使多于两个的设备的时钟同步,可以从多于两个的设备中选择中央控制设备、即所谓的时间服务器,其例如单独地或成组地控制所有时钟的同步。
[0037]
一方面,中央控制设备可以执行单独与每个另外的设备的时间同步。这对于点对点网络(peer-to-peer-netzwerk)可能是有利的。
[0038]
另一方面,中央控制设备可以确定多个副设备的本地时间,必要时可以计算具有这些副设备的分布式系统的平均时间,并且作为同步的结果将相对于自身的时间或平均的时间的相应的时间差发送给这些副设备(例如通过广播连接或同样通过点对点),前提是来自阶段1的迄今的对应关系在阶段2中已被成功地认证。
[0039]
此外,作为第二(副/客户端)设备的其他设备可以访问作为中央控制设备(主/服务器)的第一设备,以便与第一设备同步。相应的设备对之间的消息交换可以这样设计,使得仅在第二设备上进行偏移的计算。
[0040]
然而,为了同步多于两个设备的时钟也可以想到,对于多于两个设备中的相应的一对,可以分别选择中央控制设备(如上所述,这既可以是主控制设备也可以是副控制设备),该中央控制设备可以启动和/或控制同步。这对于点对点网络可能是有利的。
[0041]
对于车辆中的不同功能,分别可能需要两个或更多个设备,这些设备可以在每个特殊网络中根据合适的原理单独地或成组地进行时间同步。
[0042]
在本公开的范围内可以想到,执行用于使如下设备的时钟同步的方法,该设备集成在车辆中和/或通过用户与车辆的分布式网络耦合,例如用户的移动设备。通过这种方式,可以灵活地组装车辆中的分布式网络,并且可以安全地进行时间同步。
[0043]
此外,还可以想到,执行用于使用于期望的车辆功能的设备的时钟同步的方法,该车辆功能优选包括传感器功能、辅助系统、安全系统、舒适系统和/或娱乐系统。通过这种方式,可以确保对期望的车辆功能所需的设备进行安全的时间同步。由此可以显著提高车辆
运行中的可靠性。
[0044]
此外,在用于使至少两个设备的时钟同步的方法中有利的是,未加密通信有线地、尤其经由总线系统和/或无线地、尤其经由无线电地执行。通过这种方式,可以利用系统中现有的通信可能性。
[0045]
加密的或加密保护的通信又可以借助用于安全数据传输的加密协议、尤其是传输层安全来执行。由此可以确保数据传输是安全的。对于加密协议来说,可以使用用于车辆的一次性的单独密钥。此外,该密钥也可以用于计算哈希值。此外,还可以想到,对于加密通信,为了事后认证时间同步可以设置特殊的密钥。也可以为至少两个设备之间的时间同步的事后认证的每次执行重新约定密钥。
[0046]
此外,在用于使至少两个设备的时钟同步的方法中有利的是,用于使至少两个设备的时钟同步的消息在至少两个设备中共同地存储在共同的存储器中,或者单独地分别存储在用于所发送的消息和/或所接收的消息的两个不同的存储器中。存储器可以有利地在该方法的每次运行之后被清空。通过这种方式,可以简化针对所发送的和/或所接收的消息的哈希值的形成,其中,为了事后认证时间同步,可以通过哈希生成器执行相应的存储器的内容。
[0047]
此外,在用于使至少两个设备的时钟同步的方法中有利的是,用于使至少两个设备的时钟同步的消息设置有指示器、例如计数器形式的指示器。通过这种方式可以确保以有序的顺序存储消息。
[0048]
如上面已经提到的,可能有利的是,为了认证已经用于确定时间差的消息、特别是在计算时间差之前已经交换的消息,在至少两个设备处比较针对所发送的消息和/或所接收的消息的哈希值。哈希值的形成提供了一种简单、快速和节省资源的方法来检查所交换的消息的完整性,从而确保消息来自授权的发送者。换言之,由此能够实现消息的简单、快速和节约资源的认证。通过经由加密通信交换哈希值以执行相应的哈希值的比较,能够实现针对网络攻击的附加的安全性。
[0049]
有利地,至少两个设备中的每个设备可以将所有发送的消息和所有接收的消息映射到共同的哈希值或者映射到两个单独的哈希值。在形成哈希值的情况下,可以使用如下密钥,该密钥与用于在至少两个设备之间的加密通信的密钥一致,或者该密钥可以被专门选择用于映射哈希值。通过这种方式,可以以合适的循环时间简单、快速并且以很少的计算开销来认证整个通信直至确定合适的消息对。
[0050]
如果所发送的消息和所接收的消息被映射到共同的哈希值,则为了执行阶段2或为了认证所使用或所交换的消息,可以执行以下步骤中的至少一个:
[0051]-优选地通过加密通信,将针对所有发送的消息和所有接收的消息的共同的哈希值从至少一个设备(第一或主设备或者第二或副设备)发送到至少两个设备中的另一设备(相应于第二或副设备或者第一或主设备),
[0052]-在另一设备处将所接收的共同的哈希值与针对所有接收的消息和所有发送的消息的计算的共同的哈希值进行比较,和/或
[0053]-如果在另一设备处,所接收的共同的哈希值与所计算的共同的哈希值的比较为一致的,则确定该认证已成功完成。
[0054]
通过这种方式可以同时检查,分别发送的消息和相应的接收的消息在内容方面是
否一致。
[0055]
当所发送的消息和所接收的消息被映射到两个单独的哈希值时,为了执行阶段2或为了认证所交换的消息,执行以下步骤中的至少一个:
[0056]-优选地经由加密通信,从第一设备向第二设备发送已由第一设备计算的所有发送的请求的哈希值,
[0057]-在第二设备处接收所发送的哈希值,
[0058]-在第二设备处将所接收的、针对所有发送的请求的哈希值与针对所有接收的请求的计算的哈希值进行比较。
[0059]
通过这种方式,可以检查从第一设备发送到第二设备的请求是否与第二设备实际接收的请求一致。
[0060]
对此补充地,为了对所交换的消息进行认证,可以执行以下步骤中的至少一个:
[0061]-如果在第二设备处,所接收的、针对所有发送的请求的哈希值与针对所有接收的请求的计算的哈希值的比较为一致的,则优选地经由加密通信,从第二设备向第一设备发送已由第二设备计算的、针对所有发送的响应的哈希值,
[0062]-在第一设备处接收所发送的哈希值,
[0063]-在第一设备处将所接收的、针对所有发送的响应的哈希值与针对所有接收的响应的计算的哈希值进行比较。
[0064]
通过这种方式可以进行检查,从第二设备发送到第一设备的响应与在第一设备处接收的响应是否一致。
[0065]
最后,可以执行以下步骤中的至少一个:
[0066]-如果所接收的、针对所有发送的响应的哈希值与针对所有接收的响应的计算的哈希值的比较为一致的,则确定认证已经成功完成。
[0067]
因此,时间同步可以在成功的同步之后结束,并且同步的结果、即在第一设备处计算的时钟之间的时间差可以随后进行使用并且必要时可以传输到第二设备。
[0068]
本发明根据第二方面提供:一种计算机程序产品,包括指令,该指令在通过处理器执行特别是计算机程序时,促使该处理器执行该方法,该方法可以如上所述地运行。该计算机程序产品例如可以在载体上,例如磁盘或其他载体上提供。该计算机程序产品也可以以更新的形式,利用载体或不用载体提供给车辆。借助根据本发明的计算机程序产品可以实现上面结合根据本发明的方法所描述的相同优点。当前全面参考这些优点。
[0069]
本发明根据第三方面提供:一种用于车辆的网络,包括至少两个设备,其中至少两个设备中的至少一个设备具有以下元件:存储单元和处理器,在该存储单元中存储有计算机程序,该处理器被配置为,使得该处理器在执行该计算机程序时执行该方法,该方法可以如上所述地运行。借助根据本发明的网络可以有利地实现上面结合根据本发明的方法所描述的相同优点。当前全面参考这些优点。
[0070]
本发明根据第四方面提供:一种具有网络的车辆,该网络可以如上所述地实施。借助根据本发明的车辆可以有利地实现与上面结合根据本发明的方法所描述的相同的优点。当前全面参考这些优点。
附图说明
[0071]
此外,根据附图更详细地示出本发明。在此应注意的是,附图仅具有描述性的特征并且不打算以任何形式限制本发明。
[0072]
附图中:
[0073]
图1示出了用于可视化本发明意义上的方法的示例性的地图表示,以及
[0074]
图2示出了本发明意义上的方法的示例性的流程图。
具体实施方式
[0075]
图1和图2用于说明根据本发明的用于使车辆100的分布式网络n中的至少两个设备a、b的时钟同步的方法,至少两个设备尤其包括第一设备a和第二设备b,优选地以车辆100的单个或多个传感器和/或装置的控制设备的形式。该方法可以在两个阶段1、2中执行:用于同步时钟的阶段1和随后的、用于事后认证同步的阶段2。
[0076]
阶段1是未加密的,因此未经认证,并且用于时钟的同步,包括以下步骤:
[0077]-在至少两个设备a、b之间建立未加密通信k1,以确定两个设备a、b的时钟之间的时间差dt,
[0078]-经由未加密通信k1在至少两个设备a、b之间交换消息ai、bi,该消息例如包括:从第一设备a到第二设备b的至少一个请求ai和从第二设备b到第一设备a的至少一个响应bi或者多个请求ai和响应bi,
[0079]
其中特别地,消息ai、bi用于同步至少两个设备a、b的时钟,例如借助cristian算法,
[0080]
和/或其中优选地,消息ai、bi设置有用于计算循环时间ti或发送请求ai和获得对应的响应bi之间的往返时间的时间戳,
[0081]-必要时,从消息ai、bi中确定优选合适的消息对an、bn,其具有循环时间tn,循环时间tn例如与期望的同步的精度相对应,
[0082]-借助消息ai、bi,尤其借助特定的消息对an、bn,优选地在至少两个设备a、b中的至少一个设备上,例如在至少两个设备a、b中的第一设备a上(该第一设备例如是首先激活的)或者在至少两个设备a、b中的每个设备上确定、例如计算至少两个设备a、b的时钟之间的时间差dt或偏移。
[0083]
阶段2被加密并用于随后的同步认证,包括以下步骤:
[0084]-在至少两个设备a、b之间建立加密通信k2,以认证消息ai、bi的交换,
[0085]-优选地通过在至少两个设备a、b处交换和比较针对所发送的消息ai、bi和/或所接收的消息ai*、bi*的哈希值ha、hb、ha、ha*、hb、hb*来认证已用于确定时间差dt的消息ai、bi,特别是直到确定时间差dt为止已交换的消息ai、bi,
[0086]
其中特别地,优选地经由加密通信k2或者也未加密地,在至少两个设备a、b上针对所发送的消息ai、bi和/或所接收的消息ai*、bi*共同地或单独地映射和/或交换哈希值ha、hb、ha、ha*、hb、hb*,
[0087]-如果已成功完成对所交换的消息ai、bi的认证,则至少两个设备a、b中的至少一个或两个设备a、b使用所确定的时间差dt作为同步结果。
[0088]
在本发明的范围内可以想到,至少两个设备a、b中的每个设备a、b可以自身确定时
间差dt。
[0089]
然而,也可以想到,至少两个设备a、b中的仅一个设备a、b,例如第一设备a,作为中央控制设备(所谓的时间服务器)可以确定时间差dt。在后一种情况下,可以设置至少一个另外的步骤:
[0090]-优选经由加密通信k2将所确定的时间差dt从至少两个设备a、b的第一设备a传输给第二设备b。
[0091]
图1示出了本发明的可能的实施方式,在该实施方式中,一个设备以第一设备a(其例如首先被激活)的功能起作用,并且一个设备以第二设备b的功能起作用。
[0092]
第一设备a在时间点t0向第二设备b发送请求ai。第二设备b接收到以所接收的请求ai*的形式的请求ai。第二设备b还不知道,所接收的请求ai*是否真实和/或该请求是否实际上来自第一设备a。第二设备b在可能的处理时间s之后向第一设备a发送响应bi。第一设备a接收到以所接收的响应bi*的形式的响应bi。第一设备a还不知道,所接收的响应bi*是否真实和/或其是否实际上来自第二设备b。
[0093]
用于在阶段1中同步时钟的可能的算法例如是cristian算法。每个消息ai、bi,例如通过所发送的设备和/或通过所接收的设备,都设有时间戳。通过比较消息ai、bi的时间戳和/或发送和/或到达时间点t0、t1,计算至少两个时钟a、b的时钟之间的相对时间差dt。在此,计算所谓的循环时间ti,如图1示例性示出的那样。
[0094]
该时间差dt是同步结果。
[0095]
在本发明的意义上的请求ai和响应bi可以具有相同的内容或不同的内容。
[0096]
此外,往返时间ti可以具有一定的波动(jitter),即所谓的时间上的时钟波动。这可以有利地在评估时考虑。为了补偿时钟漂移,可以监控一次建立的同步并不时地更新。
[0097]
如图2所示,在同步时不仅发送一个请求ai和一个响应bi,而且发送多个请求ai和多个响应bi。从多个请求ai和对应的响应bi中等待和选择这样的消息对an、bn,该消息对an、bn具有期望的循环时间tn,该循环时间低于特定的阈值c。阈值c可以根据车辆功能单独设置。与安全相关的车辆功能可以用小的阈值c来标记。相比之下,娱乐功能可以允许更高的阈值c。
[0098]
为了保护同步的结果、即时间差dt免受网络攻击,例如中间人攻击,可以对整个消息序列进行认证直到完成同步。
[0099]
在本发明的范围内,在阶段1中结果已经存在同步结果之后,随后在阶段2中进行认证。
[0100]
本发明规定,在阶段1中,消息ai、bi的交换不经认证或没有加密地进行。每个设备a、b记录其发送哪些消息以及接收哪些消息。为此,可以在每个设备a、b上设置共同的存储器或两个单独的存储器。最后,从消息ai、bi的交换推导出时钟的时间偏移。
[0101]
在阶段1结束之后,在阶段2中,设备a、b建立经认证的通信k2。通过这种方式,优选所有先前的消息ai、bi借助记录相互确认并且因此认证。如果认证成功,则使用生成的偏移被用于同步。如果认证失败,则丢弃结果。在这种情况下,可以重复该方法。
[0102]
有利地,同步所需的消息ai、bi在阶段1期间不被加密。在阶段2中,执行事后认证以验证先前的通信k1。
[0103]
因此可以实现,阶段1中的同步不会由于各个消息ai、bi的几乎不可预见的加密认
证的时间延迟(英文也称为“开销(overhead)”)而受到干扰。
[0104]
因为消息ai,bi的数量对于映射到哈希值ha、hb、ha、hb、ha*、hb*是不重要的,所以在阶段1中发送的所有消息ai、bi的事后认证可以非常快速、简单地并且以很少的计算开销来执行。哈希值ha、hb、ha、hb、ha*、hb*分别针对所有发送的消息ai、bi和/或针对所有接收的消息ai*、bi*在每个设备a、b上形成。因此,在每个设备a、b上计算共同的哈希值ha、hb或两个单独的哈希值ha、hb*或hb、ha*。
[0105]
在图2中示出了可能的实施例,其中在每个设备a、b上计算两个单独的哈希值ha、hb*或hb、ha*。在阶段2中,针对所有发送的消息ai的哈希值ha由第一设备a,例如已经加密地或仍然未加密地发送给第二设备b。在第二设备b上,将所接收的哈希值ha与针对所有接收的消息ai*本地计算的哈希值ha*进行比较。如果两个哈希值ha、ha*一致,则针对所有发送的消息bi的哈希值hb由第二设备b,例如已经加密地或仍然未加密地发送给第一设备a。在那里,将所接收的哈希值hb与针对所有接收的消息bi*本地计算的哈希值hb*进行比较。如果该比较也成功,则可以认为认证成功。如果认证失败,则可以丢弃计算的时间差dt和/或重复该方法。
[0106]
然而,如图1所示,也可以想到,在每个设备a、b处针对所有发送的消息ai、bi和/或针对所有接收的消息ai*、bi*仅计算一个共同的哈希值ha、hb,其中,所发送的消息ai、bi和/或所接收的消息ai*、bi*以相应的顺序(例如ai、bi*或ai*、bi*)存储在相应的设备a、b上。在这种情况下,为了对用于时间同步的消息ai、bi进行认证,仅还能够相互确认共同的哈希值ha、hb。图2中仅出于简单原因未示出具有共同的哈希值ha、hb的认证的流程
[0107]
如图1所示,可以执行用于使多于两个设备a、b的时钟同步的方法。为此,可以从多于两个设备a、b中选择中央控制设备(所谓的时间服务器),该中央控制设备例如单独地或成组地控制所有的时钟。一方面,中央控制设备可以单独地执行分别与另一设备的时间同步,这对于点对点网络可能是有利的。
[0108]
另一方面,中央控制设备a可以确定多个副设备的本地时间,并且作为同步的结果,将相对于自身时间或平均时间的相应的时间差dt发送给这些副设备(例如广播或点对点),前提是来自阶段1的迄今的对应关系在阶段2中被成功地认证。
[0109]
此外,作为第二(副/客户端)设备b的其他设备可以访问作为中央控制设备(主/服务器)的第一设备a,以便与第一设备a同步。设备a、b的消息交换可以这样设计,使得偏移dt的计算仅在第二设备b上进行。然而,总是需要交换消息,该消息在本发明的意义上首先可以保持加密上的不安全,但随后在使用同步结果之前被认证。
[0110]
因此,为了同步多于两个设备a、b的时钟可以想到,对于多于两个设备a、b中的相应一对可以分别选择中央控制设备(所谓的本地时间服务器),以便开始同步。这对于点对点网络可能是有利的。
[0111]
对于车辆100中的不同功能,可以分别需要两个或更多个设备,其可以在每个特殊的分布式网络n中根据合适的原理单独地或成组地时间同步。
[0112]
作为设备a、b尤其可以想到车辆100中的单个或组合的装置的控制设备。在此,作为设备a、b可以想到:集成在车辆100中的和/或其可以通过用户与车辆100的分布式网络n耦合的设备,例如用户的移动设备m。
[0113]
有利地,可以执行用于使对于期望的车辆功能所需的设备a、b同步的方法。
[0114]
作为本发明意义上的车辆功能可以想到传感器功能、辅助系统、安全系统、舒适系统和/或娱乐系统。
[0115]
未加密通信k1例如可以电缆连接地、例如经由总线系统,和/或无线的、例如经由线电执行。在此基础上,可以灵活地利用车辆100中存在的通信可能性。
[0116]
加密通信k2又可以借助用于安全的数据传输的加密协议,例如传输层安全性(transport layer security,tls)执行。
[0117]
如上面已经提到的,用于同步至少两个设备a、b的时钟的消息ai、bi在至少两个设备a、b中可以存储在共同的存储器中或者单独地分别存储在用于所发送的消息ai、bi和/或所接收的消息ai*、bi*的两个不同的存储器中。相应的存储器可以有利地在该方法的每次运行之后被清空。
[0118]
有利地,消息ai、bi可以设置有指示器,例如计数器的形式的指示器,以便能够以有序的顺序存储该消息ai、bi。
[0119]
如图2所示,至少两个设备a、b中的每个设备可以将所有发送的消息ai、bi和所有接收的消息ai*、bi*映射到两个相应的哈希值ha、ha*、hb、hb*上。在图2中仅出于简单原因未示出另外的可能性,其中在设备a、b上,所有的发送的消息ai、bi和所有接收的消息ai*、bi*映射到每个设备a、b的仅一个共同的哈希值ha、hb上。通过这种方式,可以确保所谓的perplay保护,并且可靠地避免了中间人攻击。在形成哈希值ha、ha*、hb、hb*时可以使用如下密钥,该密钥与用于在至少两个设备a、b之间的加密通信k2的密钥一致,或者该密钥可以被专门选择用于映射哈希值。通过这种方式,可以简单、快速地并且以很少的计算开销来认证整个通信,直至确定具有合适的循环时间tn的合适的消息对an、bn。
[0120]
如图2进一步示出的那样,为了执行阶段2或为了对所交换的消息ai、bi进行认证,执行以下步骤:
[0121]-优选地通过加密通信k2,从第一设备a向第二设备b发送已经由第一设备a计算的、针对所有发送的请求ai的哈希值ha,
[0122]-在第二设备b处接收所发送的哈希值ha,
[0123]-在第二设备b处将所接收的针对所有发送的请求ai的哈希值ha与针对所有接收到的请求ai*的计算的哈希值ha*进行比较,
[0124]-如果在第二设备b处,所接收的、针对所有发送的请求ai的哈希值ha与针对所有接收的请求ai*的计算的哈希值ha*的比较为一致的,则优选地经由加密通信k2,从第二设备b向第一设备a发送已经由第二设备b计算的、针对所有发送的响应bi的哈希值hb,
[0125]-在第一设备a处接收所发送的哈希值hb,
[0126]-在第一设备a处,将所接收的、针对所有发送的响应bi的哈希值hb与针对所有接收的响应bi*的计算的哈希值hb*进行比较,和/或
[0127]-如果所接收的、针对所有发送的响应bi的哈希值hb与针对所有接收的响应bi*的计算的哈希值hb*的比较为一致的,则确定认证已经成功完成。
[0128]
如果所发送的消息ai、bi和所接收的消息ai*、bi*映射到共同的哈希值ha、hb上(参见图1),则为了执行阶段2或为了认证时间同步执行以下步骤中的至少一个:
[0129]-优选地经由加密通信k2,从至少两个设备a、b中的至少一个设备向另一设备发送针对所有发送的消息ai、bi和所有接收的消息ai*、bi*的共同的哈希值ha或hb,
[0130]-在另一设备处,将所接收的共同的哈希值ha或hb与针对所有接收的消息ai*、bi*和所有发送的消息ai、bi的计算的共同的哈希值hb或ha进行比较,和/或
[0131]-如果在另一设备处,所接收的共同的哈希值ha或hb与所计算的共同的哈希值hb或ha的比较为一致的,则确定认证已成功完成。
[0132]
包括指令的相应的计算机程序产品同样是本发明的一个方面,该指令在通过处理器cu执行尤其是计算机程序时促使处理器cu执行可以如上所述进行的方法。
[0133]
此外,本发明的一个方面是用于车辆100的相应的网络n,包括至少两个设备a、b,其中,至少两个设备a、b中的至少一个设备具有以下元件:存储单元mu和处理器cu,在该存储单元中存储有计算机程序,该处理器cu这样配置,使得该处理器cu在执行该计算机程序时执行该方法,该方法能够如上所述地运行。
[0134]
具有网络n的对应的车辆100同样是本发明的一个方面,该网络能够如上所述地实施。
[0135]
附图的上述描述仅在示例的范围内描述了本发明。当然,只要在技术上是合理的,实施方式的各个特征可以自由地相互组合,而不脱离本发明的范围。
[0136]
附图标记列表
[0137]
100车辆
[0138]
1阶段
[0139]
2阶段
[0140]
a设备
[0141]
b设备
[0142]
m移动设备
[0143]
n网络
[0144]
ai,bi(发送的)消息
[0145]
ai(发送的)请求
[0146]
bi(发送的)响应
[0147]
ai*,bi*(接收的)消息
[0148]
ai*(接收的)请求
[0149]
bi*(接收的)响应
[0150]
an,bn合适的消息对
[0151]
an合适的消息对的请求
[0152]
bn合适的消息对的响应
[0153]
ti循环时间
[0154]
tn具有期望精度的循环时间
[0155]
c阈值
[0156]
t0发送时间点
[0157]
t1到达时间点
[0158]
dt时间差
[0159]
k1未加密通信
[0160]
k2加密通信
[0161]
ha共同的哈希值
[0162]
hb共同的哈希值
[0163]
ha针对所有发送的请求的哈希值
[0164]
ha*针对所有接收的请求的哈希值
[0165]
hb针对所有发送的响应的哈希值
[0166]
hb*针对所有接收的响应的哈希值
[0167]
cu处理器
[0168]
mu存储器单元
再多了解一些

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

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

相关文献