CN113196266A - 使用车辆的车辆计算单元执行一个或多个车辆应用的方法、车辆计算单元、用于提供用于车辆应用的许可信息清单的方法、用于车辆应用的许可信息清单和计算机程序 - Google Patents

使用车辆的车辆计算单元执行一个或多个车辆应用的方法、车辆计算单元、用于提供用于车辆应用的许可信息清单的方法、用于车辆应用的许可信息清单和计算机程序 Download PDF

Info

Publication number
CN113196266A
CN113196266A CN201980079232.1A CN201980079232A CN113196266A CN 113196266 A CN113196266 A CN 113196266A CN 201980079232 A CN201980079232 A CN 201980079232A CN 113196266 A CN113196266 A CN 113196266A
Authority
CN
China
Prior art keywords
vehicle
applications
application
information
vehicular
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201980079232.1A
Other languages
English (en)
Inventor
A.查奇
U.斯坦伯格
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Volkswagen AG
Original Assignee
Volkswagen AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Volkswagen AG filed Critical Volkswagen AG
Publication of CN113196266A publication Critical patent/CN113196266A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/008Registering or indicating the working of vehicles communicating information to a remotely located station
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1466Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1483Countermeasures against malicious traffic service impersonation, e.g. phishing, pharming or web spoofing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Small-Scale Networks (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明涉及一种使用车辆的车辆计算单元执行一个或多个车辆应用的方法、车辆计算单元、用于提供用于车辆应用的许可信息清单的方法、用于车辆应用的许可信息清单以及计算机程序,更具体地、但是非排他性涉及基于与车辆应用相关联的许可信息清单来控制车辆的车辆应用之间的通信。使用车辆的车辆计算单元执行一个或多个车辆应用的方法包括:获得一个或多个车辆应用的编程指令。所述方法还包括:获得一个或多个车辆应用的一个或多个个体的许可信息清单。一个或多个个体的许可清单中的每个许可信息清单包括与一个或多个车辆应用中的车辆应用的一个或多个允许的车辆服务有关的信息。与一个或多个允许的服务有关的信息指示允许车辆应用向车辆的其它车辆应用提供的一个或多个车辆服务,和/或允许车辆应用使用的其它车辆应用的一个或多个车辆服务。所述方法还包括:使用车辆计算单元,基于编程指令,并且基于一个或多个个体的许可信息清单,来执行一个或多个车辆应用。基于一个或多个个体的许可信息清单来限制一个或多个车辆应用中的多个车辆应用的通信。

Description

使用车辆的车辆计算单元执行一个或多个车辆应用的方法、 车辆计算单元、用于提供用于车辆应用的许可信息清单的方 法、用于车辆应用的许可信息清单和计算机程序
技术领域
本发明涉及一种使用车辆的车辆计算单元执行一个或多个车辆应用的方法、车辆计算单元、用于提供用于车辆应用的许可信息清单的方法、用于车辆应用的许可信息清单和计算机程序,更具体地、但是非排他地,涉及用于基于与车辆应用相关联的许可信息清单来控制车辆的车辆应用之间的通信。
背景技术
车辆的控制单元之间的通信是一个研究开发领域。车辆可以包括大量不同的控制单元,这些控制单元经常由第三方供应商提供给车辆制造商。这样的控制单元可能受到损害,例如因为它们被攻击者“入侵”,或者因为供应商在控制单元中包含了后门功能。为了限制损坏,在一些系统中,可以将每个控制单元放置在隔离的网络中,并且可以使用星形拓扑,使用安全网关作为星形拓扑的中心节点,来连接控制单元。这可能需要对隔离的网络进行复杂的维护,并且可能为恶意行动者提供单点错误和单点攻击两者。
在专利申请DE 10 2011 075 416 A1中,作为进一步的安全措施,控制单元的每个接口包括接口索引。如果在系统的诊断期间发现不包含在车辆内允许的索引表中的接口索引,那么显示警告,并且可以阻止与该接口索引相关联的相应的部件控制单元。
发明内容
希望一种改进的用于车辆内的车辆控制单元的通信方法,其避免单点错误和/或单点攻击。
实施例基于以下发现,即,由车辆计算单元执行的所有车辆应用可以使用(单个)网络(例如以太网)来连接。车辆计算单元分别承载一个或多个车辆应用。这些车辆应用为其它车辆应用提供服务。这些服务的范围例如可以从对车辆驾驶功能的访问(例如提供传感器读数或者激活驾驶功能)到车辆的娱乐功能。为了针对恶意车辆应用提供保护,恶意车辆应用获得对其不应当访问的服务的访问,每个车辆应用与许可信息清单相关联,许可信息清单定义允许所述车辆应用提供哪些服务,以及允许所述车辆应用使用哪些服务。基于该许可信息清单,并且例如基于可以由其它计算单元执行的其它车辆应用的许可信息清单,车辆计算单元可以将车辆应用的通信限制到允许所述车辆应用使用的其它车辆应用以及允许使用所述车辆应用的其它车辆应用。由于许可信息清单与(单个)车辆应用相关联,因此车辆应用的更新可能仅需要生成用于更新的车辆应用的新的许可信息清单,而不需要在其它车辆应用处进行改变。为了保护许可信息清单的生成,优选可以使用基于许可信息、车辆应用的编程指令和(私有)加密密钥的加密签名来保护许可信息清单。
实施例提供了一种使用车辆的车辆计算单元来执行一个或多个车辆应用的方法。所述方法包括:获得一个或多个车辆应用的编程指令。所述方法还包括:获得一个或多个车辆应用的一个或多个个体的许可信息清单。一个或多个个体的许可清单中的每个许可信息清单包括与一个或多个车辆应用中的车辆应用的一个或多个允许的车辆服务相关的信息。与一个或多个允许的服务相关的信息指示允许车辆应用向车辆的其它车辆应用提供的一个或多个车辆服务,和/或允许车辆应用使用的其它车辆应用的一个或多个车辆服务。所述方法还包括:基于编程指令,并且基于使用车辆计算单元的一个或多个个体的许可信息清单,执行一个或多个车辆应用/基于一个或多个个体的许可信息清单,来限制一个或多个车辆应用中的车辆应用的通信。可以使用一个或多个个体的许可清单来定义对于每个车辆应用允许哪个通信,这可以针对恶意车辆应用进行保护,并且可以允许个体的车辆应用容易地进行更新,而例如不需要调整所有其它车辆应用。
在一些实施例中,所述方法还包括:从车辆的一个或多个其它车辆计算单元接收一个或多个其它个体的许可信息清单。一个或多个其它个体的许可清单中的每个许可信息清单,可以包括与将由一个或多个其它计算单元要执行的其它车辆应用的一个或多个允许的车辆服务有关的信息。可以基于一个或多个其它个体的许可信息清单,来限制一个或多个车辆应用中的车辆应用的通信。这可以使得车辆计算单元能够确定从其接收到通信的车辆计算单元是否执行如下车辆应用,即,允许该车辆应用访问由该车辆计算单元执行的车辆应用提供的服务。
所述方法可以包括:基于一个或多个个体的许可信息清单,并且基于一个或多个其它个体的许可信息清单,来确定用于一个或多个车辆应用的通信许可数据结构。可以基于通信许可数据结构来限制一个或多个车辆应用的通信。可以在每次更新车辆应用时重新生成通信许可数据结构,并且通信许可数据结构可以包括车辆计算单元将允许的通信与不允许的通信区分开所需要的许可信息。
例如,通信许可数据结构可以指示允许一个或多个车辆应用中的哪个与一个或多个其它车辆计算单元中的哪个其它车辆计算单元进行通信。附加地或者替换地,通信许可数据结构可以指示允许一个或多个其它车辆计算单元中的哪个与一个或多个车辆应用中的哪个车辆应用进行通信。这可以使得通信单元能够将允许的通信与不允许的通信区分开。
在至少一些实施例中,可以响应于车辆计算单元的请求,来接收一个或多个其它个体的许可信息清单。这可以使得能够在车辆计算单元需要个体的许可信息清单时,接收个体的许可信息清单。替换地或者附加地,作为一个或多个其它车辆计算单元的广播,来接收一个或多个其它个体的许可信息清单。这可以减小开销,因为可以一次将个体的许可信息清单发送给所有车辆计算单元。
一个或多个个体的许可信息清单可以各自包括个体的许可信息清单的加密签名。加密签名可以基于加密密钥,基于车辆应用的编程指令,以及基于与一个或多个允许的车辆服务有关的信息。所述方法还包括:基于加密签名来验证个体的许可信息清单。这可以防止恶意行为者生成或者改变许可信息清单以在服务系统内获得附加的特权。
在一些实施例中,所述方法还包括:将一个或多个个体的许可信息清单提供给车辆的一个或多个其它车辆计算单元。这可以使得一个或多个其它车辆计算单元能够限制由一个或多个其它车辆计算单元执行的其它车辆应用的通信。
例如,可以响应于一个或多个其它车辆计算单元的请求,来提供一个或多个其它个体的许可信息清单。这可以使得能够在一个或多个其它车辆计算单元需要个体的许可信息清单时,发送个体的许可信息清单。附加地或者替换地,将一个或多个其它个体的许可信息清单作为广播,发送到一个或多个其它车辆计算单元。这可以减小开销,因为可以一次将个体的许可信息清单发送给所有车辆计算单元。
在各种实施例中,所述方法包括:获得一个或多个车辆应用中的车辆应用的更新。更新可以包括车辆应用的更新的编程指令和更新的许可信息清单。所述方法还可以包括:将一个或多个个体的许可信息清单全部,包括更新的车辆应用的更新的许可信息清单,提供给车辆的一个或多个其它车辆计算单元。这可以实现个体的应用的更新,同时避免一个或多个车辆计算单元部分使用过时的许可信息清单。
例如,可以将一个或多个个体的许可信息清单与版本控制(versioning)信息一起提供给一个或多个其它车辆计算单元。如果获得了车辆应用的更新的版本,那么可以改变一个或多个个体的许可信息清单全部的版本控制信息。这可以避免一个或多个车辆计算单元部分使用过时的许可信息清单。
在至少一些实施例中,基于一个或多个个体的许可信息清单,来限制一个或多个车辆应用中的车辆应用与一个或多个车辆应用中的其它车辆应用的通信。这使得能够在车辆计算单元内包含个体的车辆应用。附加地或者替换地,可以基于一个或多个个体的许可信息清单,并且基于一个或多个其它个体的许可信息清单,来限制一个或多个车辆应用中的车辆应用与一个或多个其它车辆应用的其它车辆应用的通信。这使得能够控制发送到其它车辆通信单元或者从其它车辆通信单元接收的通信。
实施例还提供一种用于提供用于车辆应用的许可信息清单的方法。所述方法包括:获得车辆应用的编程指令。所述方法还包括:确定与车辆应用的一个或多个允许的车辆服务有关的信息。与一个或多个允许的服务有关的信息指示允许车辆应用向车辆的其它车辆应用提供的一个或多个车辆服务,和/或允许车辆应用使用的其它车辆应用的一个或多个车辆服务。所述方法还包括:基于与车辆应用的一个或多个允许的车辆服务有关的信息,以及基于车辆应用的编程指令,来生成许可信息清单。许可信息清单包括加密签名和与一个或多个允许的车辆服务有关的信息。生成许可信息清单包括:基于加密密钥,基于车辆应用的编程指令,以及基于与一个或多个允许的车辆服务有关的信息,来生成用于许可信息清单的加密签名。可以使用许可信息清单来定义对于车辆应用允许哪个通信,这可以针对恶意车辆应用进行保护,并且可以允许车辆应用的容易的更新,而例如不需要调整所有其它车辆应用。
实施例还提供一种许可信息清单,其通过用于提供用于车辆应用的许可信息清单的方法来提供。
实施例还提供一种计算机程序,计算机程序具有程序代码,程序代码用于当在计算机、处理器或者可编程的硬件部件上执行计算机程序时,执行所述方法中的至少一个。
实施例还提供一种用于执行一个或多个车辆应用的车辆计算单元。车辆计算单元包括用于与车辆的一个或多个其它车辆计算单元进行通信的接口。车辆计算单元包括计算模块,计算模块被配置为用于获得一个或多个车辆应用的编程指令。计算模块被配置为用于获得一个或多个车辆应用的一个或多个个体的许可信息清单。一个或多个个体的许可清单中的每个许可信息清单包括与一个或多个车辆应用中的车辆应用的一个或多个允许的车辆服务有关的信息。与一个或多个允许的服务有关的信息指示允许车辆应用向车辆的其它车辆应用提供的一个或多个车辆服务,和/或允许车辆应用使用的其它车辆应用的一个或多个车辆服务。车辆计算单元被配置为用于,基于编程指令,并且基于一个或多个个体的许可信息清单,来执行一个或多个车辆应用。基于一个或多个个体的许可信息清单,来限制一个或多个(执行的)车辆应用中的车辆应用的通信。可以使用一个或多个个体的许可清单来定义对于每个车辆应用允许哪个通信,这可以针对恶意车辆应用进行保护,并且可以允许个体的车辆应用的容易的更新,而例如不需要调整所有其它车辆应用。
实施例还提供一种用于车辆应用的许可信息清单。许可信息清单基于与车辆应用的一个或多个允许的车辆服务有关的信息,并且基于车辆应用的编程指令。与一个或多个允许的服务有关的信息指示允许车辆应用向车辆的其它车辆应用提供的一个或多个车辆服务,和/或允许车辆应用使用的其它车辆应用的一个或多个车辆服务。许可信息清单包括加密签名和与一个或多个允许的车辆服务有关的信息。许可信息清单的加密签名基于加密密钥,基于车辆应用的编程指令,并且基于与一个或多个允许的车辆服务有关的信息。可以使用许可信息清单来定义对于车辆应用允许哪个通信,这可以针对恶意车辆应用进行保护,并且可以允许车辆应用的容易的更新,而例如不需要调整所有其它车辆应用。
附图说明
仅通过示例,并且参考附图,使用下面的装置或者方法或者计算机程序或者计算机程序产品的非限制性的实施例,来描述其它一些特征或者方面,在附图中:
图1a示出了使用车辆的车辆计算单元执行一个或多个车辆应用的方法的实施例的流程图;
图1b示出了使用车辆的车辆计算单元执行一个或多个车辆应用的方法的另一个实施例的流程图;
图1c示出了适合用于执行一个或多个车辆应用的车辆计算单元的框图;
图2示出了用于提供许可信息清单的方法的流程图;以及
图3a至图3e示出了车辆的计算单元或者控制单元之间的通信的示意图;
图4a至图4e示出了车辆的计算单元或者控制单元的示意图;以及
图5a和图5b示出了车辆的计算单元或者控制单元之间的通信的示意图。
具体实施方式
现在,参考示出了一些示例实施例的附图来更全面地描述各个示例实施例。在附图中,为了清楚起见,可能夸大了线、层或者区域的厚度。使用断线、虚线或者点线示出了可选部件。
相应地,虽然示例实施例能够实现各种修改和替换形式,但是在附图中通过示例示出了其实施例,并且在此将对其进行详细描述。然而,应当理解,不旨在将示例实施例限制为所公开的特定形式,而是相反,示例实施例将覆盖落入本发明的范围内的所有修改方案、等同方案和替换方案。在对附图的描述中,相同的附图标记指示相同或者相似的元素。
如这里所使用的,除非另外指出(例如“或者进一步”或者“或者在替换方案中”),否则术语“或者”是指非排他性的。此外,如这里所使用的,除非另外指出,否则用于描述元素之间的关系的词应当广义地解释为包括直接关系或者存在中间元件。例如,当称为一个元件“连接”或者“耦合”到另一个元件时,该元件可以直接连接或者耦合到该另一个元件,或者可能存在中间元件。相反,当称为一个元件“直接连接”或者“直接耦合”至另一个元件时,则不存在中间元件。类似地,诸如“在...之间”、“相邻”等的词应当以相似的方式解释。
这里使用的术语仅出于描述特定实施例的目的,而不旨在限制示例实施例。如这里所使用的,除非上下文明确地另外指出,否则单数形式“一”、“一个”和“该”也旨在包括复数形式。进一步将理解,当在这里使用时,术语“包括”、“包含”或者“含有”说明存在所陈述的特征、整数、步骤、操作、元素或者部件,但是不排除存在或者增加一个或多个其它特征、整数、步骤、操作、元素或者部件或者其组合。
除非另外定义,否则这里使用的所有术语(包括技术术语和科学术语)具有与示例实施例所属的本领域普通技术人员通常所理解的含义相同的含义。进一步将理解,除非这里明确定义,否则例如在常用词典中定义的术语应当解释为具有与其在相关领域的上下文中的含义一致的含义,而不在理想化或者过于形式化的意义上进行解释。
至少一些实施例提供了一种用于在车辆网络内授权服务通信的方法。
至少一些车辆可以使用“基于服务”的通信方法,这种通信方法可能不同于在其它车辆中使用的车辆通信方法。先前使用的用于保护车辆通信的方法可能不适用于基于服务的通信。至少一些实施例可能聚焦于确保仅允许车辆应用执行允许使用的操作(例如提供或者使用服务)。这可能是必要的,因为所有控制单元或者计算单元可能都能够与任意其它控制单元或者计算单元自由通信,因为没有通过网关控制单元对控制单元/计算单元进行固定的划分。
对例如通过因特网进行的服务通信的保护通常基于使用令牌的授权,例如基于OAuth(Open Authorization(开放授权))。授权令牌的生成可以由受信任的中央机构来进行。在车辆中,这将需要受信任的中央机构在车辆内,这将导致单点错误(single point offailure),并且将产生车辆的两个实体之间的通信的附加的依赖性。此外,该受信任的中央机构将需要与要在车辆中分配的许可相关的信息,并且将需要用于对应当生成令牌的通信节点进行认证的功能。如果控制单元用于基于更新来获得附加的特权,则受信任的中央机构还将需要更新,以便能够分配附加的许可。
在实施例中,车辆中的每个应用(例如结合图1a至图1c介绍的车辆应用)与由车辆制造商签署的安全清单(例如许可信息清单)相关联。(车辆)应用的清单包括该应用要在车辆网络内获得的所有特权/许可,例如允许提供哪些服务,或者允许消费哪些服务。此外,清单可以包括与应用的位置有关的信息、例如控制单元/计算单元或者因特网协议(InternetProtocol,IP)地址。整个清单(例如组合的一个或多个个体的(individual)许可信息清单以及一个或多个其它个体的许可信息清单)可以包括验证是否允许两个通信节点之间的特定服务通信所需的(由车辆制造商签署的)(所有)信息。
在车辆中的运行时间期间,每个控制单元/计算单元可以从(所有)其它计算单元(例如一个或多个其它计算单元)收集(所有)清单,可以以加密的方式验证清单,并且可以基于这些清单和自己的清单(例如一个或多个个体的许可信息清单)创建有效/允许的服务通信操作的列表或者数据结构。控制单元/计算单元可以被配置为用于确定:
是否允许(例如一个或多个车辆应用中的)特定的本地应用使用(即“消费”)特定的服务?
是否允许特定的本地应用提供特定的服务?
是否允许其它特定的计算单元/控制单元提供特定的服务?
是否允许其它特定的计算单元/控制单元使用特定的服务?
如果将这些确定用于任意类型的服务通信,则可以防止未经授权的车辆通信。因此,被黑客损害的控制单元/计算单元可能无法使用在任何情况下都无法使用的服务。
实施例可以提供一种分散的方法,并且不需要车辆内的受信任的中央机构。两个通信节点能够相互证明并且验证允许它们进行通信。在(例如通过更新由控制单元/计算单元托管的车辆应用)更新了控制单元/计算单元,并且后续需要控制单元/计算单元来使用附加的服务的情况下,其可以接收包括附加的特权/许可的附加的或者更新的清单。不需要对其它控制单元/计算单元/应用进行调整。
结合所提出的概念或者上面或下面描述的一个或多个示例(例如图1a至图5b),提到方法、许可信息清单和/或车辆计算单元的更多细节和方面。所述方法、许可信息清单和/或车辆计算单元可以包括与所提出的概念的一个或多个方面或者上面或下面描述的一个或多个示例对应的一个或多个附加的可选特征。
图1a和图1b示出了使用车辆的车辆计算单元执行一个或多个车辆应用的方法的实施例的流程图。所述方法包括:获得110一个或多个车辆应用的编程指令。所述方法还包括:获得120一个或多个车辆应用的一个或多个个体的许可信息清单。一个或多个个体的许可清单中的每个许可信息清单包括与一个或多个车辆应用中的车辆应用的一个或多个允许的车辆服务有关的信息。与一个或多个允许的服务有关的信息指示允许车辆应用向车辆的其它车辆应用提供的一个或多个车辆服务。附加地或者替换地,与一个或多个允许的服务有关的信息指示允许车辆应用使用的其它车辆应用的一个或多个车辆服务。所述方法还包括:使用车辆计算单元,基于编程指令,并且基于一个或多个个体的许可信息清单,来执行130一个或多个车辆应用。基于一个或多个个体的许可信息清单,来限制一个或多个车辆应用中的车辆应用的通信。
图1c示出了车辆100的(对应的)车辆计算单元10的框图。车辆计算单元10适合用于执行一个或多个车辆应用。车辆计算单元10包括接口12,接口12用于与车辆100a的一个或多个其它车辆计算单元100b进行通信。车辆计算单元10包括计算模块14,计算模块14被配置为用于获得一个或多个车辆应用的编程指令。计算模块14被配置为用于获得一个或多个车辆应用的一个或多个个体的许可信息清单。一个或多个个体的许可清单中的每个许可信息清单包括与一个或多个车辆应用中的车辆应用的一个或多个允许的车辆服务有关的信息。与一个或多个允许的服务有关的信息指示允许该车辆应用向车辆的其它车辆应用提供的一个或多个车辆服务。附加地或者替换地,与一个或多个允许的服务有关的信息指示允许该车辆应用使用的其它车辆应用的一个或多个车辆服务。计算模块14被配置为用于,基于编程指令,并且基于一个或多个个体的许可信息清单,来执行一个或多个车辆应用。基于一个或多个个体的许可信息清单,来限制一个或多个车辆应用中的车辆应用的通信。图1c还示出了包括车辆计算单元10和一个或多个其它车辆通信单元20的车辆100。在实施例中,计算模块14被配置为用于例如结合接口12来执行图1a和/或图1b的方法的方法步骤。
下面的描述可能涉及图1a和/或图1b的方法以及图1c的车辆计算单元10两者。
在至少一些实施例中,所述方法可以用于将一个或多个车辆应用的通信限制为允许车辆应用向其它车辆应用提供的服务,和/或允许车辆应用使用的其它车辆应用的服务。为了实现这,针对一个或多个车辆应用,获得编程指令以及许可信息清单。在使用许可信息清单来确定一个或多个车辆应用的哪个通信是允许的时,执行编程指令。
所述方法包括:获得110一个或多个车辆应用的编程指令。例如,一个或多个车辆应用可以是适合用于在车辆环境内执行的软件应用,其中,车辆应用被适配为用于提供车辆的功能。例如,一个或多个车辆应用可以包括以下组中的一个或多个元素:用于车辆的部件的逻辑控制单元,用于车辆的部件的虚拟控制单元,车辆的监视应用,车辆的网关应用,与车辆娱乐有关的车辆应用,以及为其它车辆应用提供辅助服务的车辆应用。
例如,编程指令可以包括或者对应于一个或多个车辆应用的可执行文件、例如二进制可执行文件或者在运行时环境中执行的可执行文件。替换地或者附加地,编程指令可以包括基于编程语言或者基于脚本语言的多个程序指令。在至少一些实施例中,可以经由更新机制或者经由安装机制,例如经由与车辆计算单元的直接连接或者经由车辆网络,来接收编程指令。编程指令可以存储在车辆计算单元的存储模块内。车辆计算单元10可以包括存储模块。在至少一些实施例中,存储模块可以包括以下组中的至少一个元素:计算机可读存储介质、例如磁或者光学存储介质、例如硬盘驱动、闪存、软盘、随机存取存储器(Random Access Memory,RAM)、可编程只读存储器(Programmable Read Only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、电可擦除可编程只读存储器(Electronically Erasable Programmable Read Only Memory,EEPROM)或者网络存储器。
所述方法包括:获得120一个或多个车辆应用的一个或多个个体的许可信息清单。可以将一个或多个个体的许可信息清单(以及下面介绍的一个或多个其它个体的许可信息清单)存储在车辆计算单元的存储模块内。例如,许可信息清单可以是文件或者数据结构,该文件或者数据结构包括与一个或多个车辆应用中的车辆应用的一个或多个允许的车辆服务有关的信息。例如,许可信息清单可以是与车辆应用相关联的元数据文件。每个许可信息清单可以与(刚好)一个车辆应用相关联。在一些实施例中,每个车辆应用可以与刚好一个许可信息清单相关联。替换地,每个车辆应用可以与一个或多个个体的许可信息清单相关联。与车辆应用相关联的许可信息清单可以对应于包括与车辆应用的一个或多个允许的车辆服务有关的信息的许可信息清单。
与一个或多个允许的服务有关的信息指示允许车辆应用向车辆的其它车辆应用提供的一个或多个车辆服务,和/或允许车辆应用使用的其它车辆应用的一个或多个车辆服务。例如,与一个或多个允许的服务有关的信息/一个或多个个体的许可信息清单可以逐个应用地定义一个或多个车辆应用可以提供哪些服务,和/或一个或多个车辆应用可以使用哪些服务。例如,与车辆应用相关联的(单个)许可信息清单可以定义该车辆应用可以提供哪些服务,和/或该车辆应用可以使用哪些服务。提供服务可以对应于向车辆的其它应用提供功能。使用服务可以对应于访问由车辆的其它应用提供的功能。
在实施例中,经由车辆网络来提供和/或使用服务。一个或多个车辆应用(或者“车辆应用”)可以经由车辆网络或者在车辆计算单元内进行通信,以提供和/或使用服务。例如,接口12可以被配置为用于经由车辆网络进行通信。在至少一些实施例中,车辆网络基于或者对应于以太网。车辆网络可以使用一个或多个通信协议、例如传输控制协议(Transmission Control Protocol)、用户数据报协议(User Datagram Protocol)、因特网协议(IP)和/或基于IP的可扩展的面向服务的中间件(Scalable service-OrientedMiddlewarE over IP,SOME/IP)协议。
所述方法包括:使用车辆计算单元,基于编程指令,并且基于一个或多个个体的许可信息清单,来执行130一个或多个车辆应用。例如,编程指令可以包括一个或多个车辆应用的可执行文件。执行一个或多个车辆应用可以包括执行一个或多个车辆应用的可执行文件。例如,可以在操作系统环境内,例如直接或者通过运行时环境,执行一个或多个车辆应用。例如,可以在操作系统环境内执行运行时环境,并且可以在运行时环境内执行一个或多个车辆应用中的至少一个。例如,运行时环境可以是编程语言的虚拟机、例如Java虚拟机,或者中间件的运行时环境、例如自适应汽车开放系统架构(adaptive AUTomotive OpenSystem Architecture,AUTOSAR)的运行时环境。在实施例中,车辆计算单元可以是车辆计算机系统,其被配置为用于(例如如果使用多于一个的操作系统,那么经由管理程序(hypervisor))执行一个或多个操作系统。可以在一个或多个应用系统内,例如在系统内执行的运行时环境内,执行一个或多个车辆应用。车辆计算单元(例如计算模块)可以被配置为用于在操作系统环境内(例如在运行时环境内)执行一个或多个车辆应用。
基于一个或多个个体的许可信息清单来限制一个或多个车辆应用中的车辆应用的通信。例如,所述方法可以包括:基于一个或多个个体的许可信息清单,来执行具有有限的通信许可的一个或多个车辆应用。所述方法可以包括:为一个或多个车辆应用提供代理和/或串行器/解串器,其中,代理和/或串行器/解串器被配置为用于,基于一个或多个个体的许可信息清单,和/或基于一个或多个其它个体的许可信息清单,来限制通信。所述方法可以包括:基于一个或多个个体的许可信息清单,来限制一个或多个车辆应用的通信。例如,可以基于一个或多个过滤器规则,和/或基于一个或多个防火墙规则,来限制通信,其中,一个或多个过滤器规则和/或基于一个或多个防火墙规则基于一个或多个个体的许可信息清单。例如,所述方法包括:基于一个或多个个体的许可信息清单,来确定用于一个或多个车辆应用的通信许可数据结构。可以基于一个或多个通信许可数据结构来限制一个或多个车辆应用的通信。例如,可以基于一个或多个个体的许可信息清单,来限制一个或多个车辆应用中的车辆应用与一个或多个车辆应用中的其它车辆应用的通信。附加地或者替换地,基于一个或多个个体的许可信息清单,并且基于一个或多个其它个体的许可信息清单,来限制一个或多个车辆应用中的车辆应用与一个或多个其它车辆应用中的其它车辆应用的通信。
在至少一些实施例中,如图1b所示,所述方法还包括:从车辆的一个或多个其它车辆计算单元,接收140一个或多个其它个体的许可信息清单。例如,响应于车辆计算单元的请求,来接收140一个或多个其它个体的许可信息清单。所述方法还可以包括(例如周期性地发送或者根据需要)向一个或多个其它车辆计算单元发送请求。替换地(或者在一些情况下附加地),可以作为一个或多个其它车辆计算单元的广播,来接收140一个或多个其它个体的许可信息清单。例如,可以个体地,或者作为包括个体的许可信息清单的组合的包,例如作为个体的许可信息清单的压缩文件夹,以串接的形式,或者在具有二进制部件的标记文档内,接收一个或多个其它个体的许可信息清单。在实施例中,一个或多个其它个体的许可信息清单可以在组合的包内是可区分和/或可分离的。一个或多个其它个体的许可信息清单可以与一个或多个个体的许可信息清单类似地实现,但是可以与要由或者正由一个或多个其它车辆计算单元执行的一个或多个其它车辆应用相关联。一个或多个其它个体的许可清单中的每个许可信息清单可以包括与一个或多个其它计算单元要执行的其它车辆应用的一个或多个允许的车辆服务有关的信息。可以进一步基于一个或多个其它个体的许可信息清单,来限制一个或多个车辆应用中的车辆应用的通信。例如,所述方法可以包括:基于一个或多个个体的许可信息清单,并且基于一个或多个其它个体的许可信息清单,来确定150用于一个或多个车辆应用的通信许可数据结构。通信许可数据结构可以指示或者定义允许一个或多个车辆应用中的哪些与一个或多个其它车辆计算单元中的哪个其它车辆计算单元进行通信。附加地或者替换地,通信许可数据结构可以指示或者定义允许一个或多个其它车辆计算单元中的哪些与一个或多个车辆应用中的哪个车辆应用进行通信。
在一些实施例中,一个或多个个体的许可信息清单各自包括个体的许可信息清单的加密签名。车辆应用的许可信息清单的加密签名可以基于加密密钥(例如车辆制造商的私有加密密钥),基于车辆应用的编程指令(例如基于编程指令的哈希值),并且基于与一个或多个允许的车辆服务有关的信息。如图1b进一步所示,所述方法还可以包括:基于加密签名来验证160个体的许可信息清单。例如,验证160个体的许可信息清单可以包括:验证加密签名是例如基于车辆制造商的公钥从加密密钥导出的。验证160个体的许可信息清单还可以包括:验证签名基于车辆应用的编程指令、例如基于编程指令的哈希值,以检测在创建加密签名之后对包含在个体的许可信息清单内的哈希值的操纵。例如,验证160个体的许可信息清单可以包括:通过生成所获得110的编程指令的哈希值,并且通过将所生成的哈希值与包含在个体的许可信息清单中的编程指令的哈希值进行比较,来验证加密签名基于包含在个体的许可信息清单中的编程指令的哈希值。此外,验证160个体的许可信息清单可以包括验证,验证160个体的许可信息清单可以包括:验证加密签名基于个体的许可信息清单,以检测在创建加密签名之后对个体的许可信息清单的操纵。在至少一些实施例中,一个或多个其它个体的许可信息清单也各自包括其它个体的许可信息清单的加密签名。所述方法还可以包括:基于加密签名来验证160其它个体的许可信息清单。可以与个体的许可信息清单类似地基于加密签名来验证其它个体的许可信息清单。
在一些实施例中,如图1b进一步所示,所述方法还包括:向车辆的一个或多个其它车辆计算单元提供170(例如经由车辆网络发送)一个或多个个体的许可信息清单。例如,可以个体地,或者作为包括个体的许可信息清单的组合的包,例如作为个体的许可信息清单的压缩文件夹,以串接的形式,或者在具有二进制部件的标记文档内,提供一个或多个个体的许可信息清单。在实施例中,一个或多个个体的许可信息清单可以在组合的包内是可区分和/或可分离的。例如,可以响应于一个或多个其它车辆计算单元的请求来提供170一个或多个其它个体的许可信息清单。所述方法还可以包括(周期性地)接收请求。替换地或者附加地,可以作为广播,向一个或多个其它车辆计算单元发送170(例如周期性地或者在改变时发送)一个或多个其它个体的许可信息清单。
在一些实施例中,所述方法包括:获得180一个或多个车辆应用中的车辆应用的更新。更新可以包括车辆应用的更新的编程指令和更新的许可信息清单。所述方法还可以包括:将一个或多个个体的许可信息清单(全部),包括更新的车辆应用的更新的许可信息清单,提供190给车辆的一个或多个其它车辆计算单元。例如,可以将一个或多个个体的许可信息清单与版本控制信息一起提供170给一个或多个其它车辆计算单元。如果获得了车辆应用的更新的版本,则可以改变全部一个或多个个体的许可信息清单的版本控制信息。所述方法可以包括:如果获得了车辆应用的更新的版本,则改变全部一个或多个个体的许可信息清单的版本控制信息,并且与改变的版本控制信息一起,向车辆的一个或多个其它车辆计算单元,提供190(全部)一个或多个个体的许可信息清单。
接口12可以对应于用于接收和/或发送信息的一个或多个输入和/或输出,其可以是模块内、模块之间或者不同实体的模块之间的、根据指定的代码的数字(位)值。
在实施例中,可以使用一个或多个计算单元、一个或多个处理单元、一个或多个计算设备、一个或多个处理设备、用于进行处理或者计算的任意装置、例如处理器、计算机或者可以与相应适配的软件一起操作的可编程的硬件部件来实现计算模块14。换句话说,所描述的计算模块14的功能也可以以软件来实现,然后在一个或多个可编程的硬件部件上执行软件。这样的硬件部件可以包括通用处理器、数字信号处理器(Digital SignalProcessor,DSP)、微控制器等。
结合所提出的概念或者上面或下面描述的一个或多个示例(例如图2至图5b),提到方法和/或车辆计算单元的更多细节和方面。所述方法和/或车辆计算单元可以包括与所提出的概念的一个或多个方面或者上面或下面描述的一个或多个示例对应的一个或多个附加的可选特征。
图2示出了用于提供用于车辆的车辆应用的许可信息清单的方法的流程图。所述方法可以在车辆外部执行,例如在车辆制造商的服务器或者数据中心内执行。所述方法包括:获得210车辆应用的编程指令。所述方法还包括:确定220与车辆应用的一个或多个允许的车辆服务有关的信息。例如,可以从用于生成许可信息清单的配置信息中获得与一个或多个允许的车辆服务有关的信息。可以在生成许可信息清单之前预先定义与一个或多个允许的车辆服务有关的信息。与一个或多个允许的服务有关的信息指示允许车辆应用向车辆的其它车辆应用提供的一个或多个车辆服务,和/或允许车辆应用使用的其它车辆应用的一个或多个车辆服务。所述方法还包括:基于与车辆应用的一个或多个允许的车辆服务有关的信息,以及基于车辆应用的编程指令,来生成230许可信息清单。许可信息清单包括加密签名和与一个或多个允许的车辆服务有关的信息。生成许可信息清单包括:基于加密密钥(例如车辆制造商的私有加密密钥),基于车辆应用的编程指令(例如基于编程指令的哈希值),并且基于与一个或多个允许的车辆服务有关的信息(例如基于与一个或多个允许的车辆服务有关的信息的哈希值),生成用于许可信息清单的加密签名。许可信息清单可以包括加密签名。所述方法可以包括:利用加密签名对许可信息清单进行签名。在至少一些实施例中,所述方法还可以包括:将具有加密签名的许可信息清单提供给车辆的车辆计算单元。
结合所提出的概念或者上面或下面描述的一个或多个示例(例如图1a至图1c、图3a至图5b),提到方法和/或许可信息清单的更多细节和方面。所述方法和/或许可信息清单可以包括与所提出的概念的一个或多个方面或者上面或下面描述的一个或多个示例对应的一个或多个附加的可选特征。
至少一些实施例可以基于服务通信、可能产生新的安全挑战的新的通信范式。下面,将详细描述服务通信的安全隐患。车辆功能的复杂性和资源需求不断增加(例如高级驾驶员辅助系统(Advanced Driver Assistance System)/ADAS,在线服务),并且可能需要能够在现场容易地升级车辆功能。为了解决复杂性和资源需求的这种增加,可以将车辆网络划分为两层。图3a和图3b示出了车辆网络的架构改变。在图3a中,使用中央网关控制单元310来连接车辆的控制单元的分支312;314;316。在图3b中,将网络划分为两层,即,托管功能的计算单元322;324;326的高性能计算层(例如执行一个或多个车辆应用的车辆计算单元),以及收集数据并且执行命令的包括单元323;325;327的低性能传感器/执行器层。
在计算层中(例如在计算单元之间),可以使用服务通信。ECU(电子控制单元(Electronic Control Unit),例如车辆计算单元)可以托管服务(例如“DoorStatus(门状态)”),并且在车辆网络内通报该服务。客户可以在运行时期间定位服务:
-收听服务通报
-广播针对所请求的服务的FindService(发现服务)请求
-从使用上述机制的中央服务注册中心请求位置
在定位服务之后,客户可以连接到服务,并且经由请求/响应机制(例如读取“DoorStatus/FrontLeft(门状态/左前)”资源,以获得关于左前门的当前状态的信息)或者经由发布/订阅机制(例如订阅“DoorStatus/FrontLeft”资源,以便在左前门的当前状态发生改变时得到通知)来访问其资源。
图3c和图3d示出了服务通信与信号通信的比较概览。在信号通信中,如图3c所示,在单个CAN(Controller Area Network,控制器局域网)总线331;333;335上使用广播通信332;334;336。经由网关330执行不同的CAN总线之间的路由。(基于逐位序列化)使用具有静态配置和低资源需求的非常基本的协议。可以在传感器/执行器层通信中使用这种架构,并且可以将这种架构转换为计算层内部的服务通信,或者从计算层内部的服务通信转换这种架构。
在服务通信中,如图3d所示,可以在节点342、344和346之间使用基于IP的以太网通信。将结合图4a至图4e更详细地介绍节点(例如计算单元)。可以基于动态配置使用复杂的协议,例如SOME/IP(Scalable service-Oriented MiddlewarE over IP(基于IP的可扩展的面向服务的中间件)、通过TCP(Transmission Control Protocol(传输控制协议))和UDP(User Datagram Protocol(用户数据报协议))的汽车RPC(Remote Procedure Call(远程过程调用))协议、因特网协议(RESTful HTTP(Representational State Transfer-fulHyper Text Transfer Protocol(具象状态传输全超文本传输协议))Web服务、MQTT(Message Queuing Telemetry Transport(消息队列遥测传输))等),例如用于具有高资源需求的车辆应用/功能。可以在计算层通信中使用服务信令。
服务通信可能带来安全挑战。在服务通信中,可能不使用中央网关,因此任何人都可以与任何人交谈。任何人都可以提供任何服务,任何人都可以消费任何服务。服务位置可能不是硬编码的,而是在运行时期间确定的。冒充服务提供商或者消费者可能很容易。
如图3e所示,(例如可能从ECU 354传输到ECU 356的车辆应用352的)服务位置可能在软件更新期间改变。在软件更新期间可能增加(例如对ECU 354增加的车辆应用358的)服务和客户。此外,通信架构可能随着车辆的使用寿命而改变。
服务通信可能需要一些服务要求、例如认证和加密通信以及授权通信。在认证和加密通信中,可以针对本地操纵对进行服务通信保护(例如里程表数据)。特定服务通信可能需要进行加密(例如用户登录数据)。并非所有服务通信都需要保护,因此可以支持选择性保护。可能一次在一辆车中仅允许一种类型的一个ECU(即无克隆)。在授权通信中,可以明确地授权通信实体(例如应用)提供服务,和/或可以(例如使用许可信息清单)明确地授权通信实体消费服务和其资源。可能不存在单点错误(在功能上以及安全性方面两者)。向客户授予权限可能需要修改至多一个ECU(例如通过提供许可信息清单)。此外,安全设计可以独立于通信协议,并且安全机制可能不影响通信延迟。
一些方法可能不适合于这些要求。例如,持有访问权限列表并且将其分配给其它ECU的中央授权ECU可能提供单点错误、主要攻击目标。此外,中央授权ECU可能是通信瓶颈,而无法扩展,并且可能容易受电源管理问题影响,因为其必须在线,以便与其他人进行通信。在一些情况下,访问权限可能是硬编码的。如果需要为更新的客户ECU增加权限,那么这将需要更新服务ECU。如果要重新定位服务,那么所有客户可能必须改变。此外,可以使用用于(例如通过TLS(Transport Layer Security,传输层安全))保护通信安全的证书。由于基于不对称的加密导致的握手速度较慢,这可能引入延迟。此外,ECU更换期间的撤销可能是复杂的。最后,可以使用应用层上的安全性。这可能导致每个应用的大的工作量(访问控制检查、通信安全保护等),并且应用可能需要对密钥进行访问。
实施例可以提供一种用于服务通信的安全设计。图4a示出了计算层ECU(例如结合图1a至1c介绍的车辆计算单元)的示例性的软件架构器。ECU 410例如可以包括:管理程序412;具有直接在Linux OS内执行的一个车辆应用(App 3)的Linux OS环境414;以及在自适应AUTOSAR(AUTomotive Open System Architecture,汽车开放系统架构)运行时环境内执行的两个应用(App 1、App 2);以及使用Java虚拟机(Java Virtual Machine)来执行其它车辆应用(应用4)的QNX OS环境416。ECU可以支持“丰富的”操作系统(operating system)和通信栈。其可以是基于POSIX(Portable Operating System Interface,便携式操作系统接口)并且基于Linux的。其可以支持自适应AUTOSAR。一个ECU(例如计算单元)可以托管多个虚拟化的环境。可以使用嵌套容器概念(Docker、Java VM等)。应用可以进行服务通信。其可以在服务消费和供应方面受到限制。
图4b示出了ECU 420内部的示例性的安全基础设施的框图。ECU 420包括管理程序422和Linux OS环境424,其再次用于执行具有车辆应用1和2的自适应AUTOSAR运行时环境426,并且用于直接执行车辆应用3。附加地,在应用1至3和Linux OS之间使用“域安全层(Domain Security Layer)”(DSL)426。“域安全层”可以用于在本地保护发送方和接收方侧的应用的安全。其可以通过沙盒(sandboxing)或者容器来提供应用的分离。其可以进一步提供可靠的应用识别。DSL可以(例如通过充当代理)对每个本地应用强制执行通信限制(例如限制车辆应用的通信)。其可以对来自远程实体的进入通信强制执行通信限制,并且其可以终止安全通信,集中加密密钥访问。DSL可以由一组补充安全机制构成或者包括一组补充安全机制。DSL的实现可以针对每个协议而不同,例如用于基于HTTP的协议或者用于SOME/IP的数据序列化器/反序列化器内部的代理。
此外,如图4c所示,可以使用DSL来终止经过认证的通信。图4c示出了ECU 430,其具有在DSL 434的顶部执行的应用432。DSL耦合到安全存储器436。应用432可以使用DSL434来经由车辆网络438进行通信。因此,加密密钥可以不向应用暴露,从而降低了受损的机会。可以使用TLS(TCP)和DTLS(Datagram Transport Layer Security(数据报传输层安全),UDP)来进行1:1通信。可以使用自定义机制(custom mechanism)来保护广播通信(例如SecOC,Secure Onboard Communication(安全车载通信))的安全。优选可以使用对称加密。可以使用通信建立。在至少一些实施例中,可能不存在撤销问题(如果密钥分配机制设计合理)。可以通过将DSL用作加密代理(避免每个应用的密钥)来解决扩展问题。在至少一些情况下,如果需要,那么可以(仅)使用安全通信,如果可以,可以使用用于加密通信的硬件加速。
实施例可以提供经过授权的通信。图4d示出了许可分配方法的示意图。图4d示出了用于执行应用1至3 442的ECU 440(例如结合图1a至图1c介绍的车辆计算单元)。每个应用可以与安全清单443(例如许可信息清单)相关联。这些安全清单可以作为ECU 449的清单组(例如一个或多个个体的许可信息清单)存储在清单存储器446中。此外,清单存储器446可以包括其它ECU的其它安全清单448(例如一个或多个其它个体的许可信息清单)。DSL444可以访问安全清单。DSL可以经由车辆网络447提供/发送ECU 449的清单组,并且DSL可以经由车辆网络447接收其它安全清单448。可以对每个(车辆)应用提供签名的安全清单,其包含以下相关信息:
-应用身份
-应用的位置(ECU、IP地址等)
-通信白名单(服务提供和使用)
清单可以离线地生成,并且可以是应用交付的一部分。可以在运行时期间,在所有通信参与者之间同步(并且缓存)(所有)ECU的安全清单集合。可以由DSL对(所有)安全清单进行密码验证。签名验证密钥可以是(例如一次性可编程的存储器或者硬件安全模块中的)ECU软件的一部分。
实施例可以基于具有许可实施的经过授权的通信。图4e示出了执行应用1至3 452的ECU 450的示意图。使用可以访问清单存储器456的DSL 454,来针对允许的通信的真实数据库检查来自应用以及来自车辆网络458的通信。DSL可以使用安全清单来建立允许的通信的真实数据库。可以在本地缓存该数据库,以避免在ECU启动期间阻塞通信。DSL可以针对数据库检查所有通信。在本地应用和非法通信离开ECU之前,可以准确地识别本地应用,并且可以阻止非法通信。可以可靠地(仅)将远程通信伙伴识别为正确的ECU。
在至少一些实施例中,(所有)ECU在安全性和许可实施方面可以是相同的。(所有)ECU可以使用安全清单来跟踪车辆内的(所有)许可。可以容易地更新许可。新的或者修改后的应用可以接收具有所需的改变的新的安全清单。可以在运行时期间分配新的或者修改后的安全清单,因此可能不需要修改软件。受到损害的ECU可能无法提升其通信许可,因为其它ECU可以基于其安全清单来限制其。
在各个附图中列出的示例可以组合。例如,ECU可以组合多于一个的附图的特征中的至少一些。结合所提出的概念或者上面或下面描述的一个或多个示例(例如图1a至图2、图5a至图5b),提到了方法、许可信息清单和/或车辆计算单元的更多细节和方面。所述方法、许可信息清单和/或车辆计算单元可以包括与所提出的概念或者上面或下面描述的一个或多个示例的一个或多个方面对应的一个或多个附加的可选特征。
在至少一些实施例中,许可信息清单可以基于能力。每个能力可以指定服务,并且包含控制该服务的操作(方法)的访问许可。每个能力可以使用来自全局服务命名空间的服务名称(服务Identifier(标识符))来指定一个服务。每个功能可以包含来自针对指定的服务的访问许可的预先定义的集合中的一个或多个访问许可。
能力的具有可以向应用授予用于注册(提供)或者调用(使用)指定的服务的操作(方法)的权限,针对该指定的服务,能力包含对应的访问许可。
每个SOA(Service Oriented Architecture,面向服务的架构)应用(例如一个或多个车辆应用和/或一个或多个其它车辆应用中的应用)可以伴随有一个服务安全清单(例如一个许可信息清单)。
服务安全清单可以是分离的元数据文件,其可以与SOA应用一起提供。可以命名并且存储服务安全清单,使得每个SOA应用和其服务安全清单之间存在一对一的关联。在加载SOA应用时使用哪个服务安全清单可能没有歧义。
先前的要求的一种可能的实现可以是,使用相同的文件名,但是不同的后缀,将服务安全清单与其所属的SOA应用存储在相同的持久的存储位置(即相同的分区、相同的目录)中。
服务安全清单可以包含来自全局域命名空间的一个域名(域ID),其指定可以授权SOA应用在其中运行的域。
由不同的应用表示的服务实例或者位于不同的SOA域中的服务实例可以具有单独的服务安全清单,其指定可以授权每个服务实例在哪个SOA域中运行。
服务安全清单可以包含一个“服务器能力”部段,其可以仅包含可以授权(例如允许)应用注册(提供)的那些服务的能力。如果未授权应用注册(提供)任何服务,那么该部段可以存在并且留空。
服务安全清单可能包含一个“客户端能力”部段,其可以仅包含可以授权应用调用(使用)的那些服务的能力。如果未授权应用调用(使用)任何服务,那么该部段可以存在并且留空。
对于可以授权SOA应用注册(提供)的每个服务,服务安全清单的“服务器能力”部段(例如与允许车辆应用提供的服务有关的信息)可以(准确地)包含指定以下(所有)各项的一个能力:
a)服务-通过服务名称(服务ID)。
b)服务是否发送机密、真实或者不可信的数据-通过安全类型。
c)服务使用的IP地址和TCP/UDP端口。
对于可以授权SOA应用调用(使用)的每个服务,服务安全清单的“客户端能力”部段(例如与允许车辆应用使用的服务有关的信息)可以(准确地)包含指定以下(所有)各项的一个能力:
a)服务-通过服务名称(服务ID)。
b)可以授权应用调用(使用)的服务的哪些操作(方法)-通过访问许可。
服务安全清单可能包含一个“完整性摘要”,其方便验证正常存储器中的应用的图像的完整性。在建立应用二进制文件(例如应用编程)之后,即,在正在创建应用的服务安全清单时,可以计算完整性摘要(例如加密签名)。
完整性摘要可以覆盖应用的(所有)代码和只读数据页。这种实现可以按页面升序对那些页面的内容进行哈希。完整性摘要可以用作应用的存储器内图像和包含用于该应用的能力的清单之间的加密绑定。完整性摘要可以充当唯一的指纹,用于验证应用的身份和完整性两者。如果应用的存储器内图像的完整性摘要与清单中的完整性摘要相同,那么应用和清单属于彼此,并且应用的代码未被篡改。应用的其它部分也可以包含在完整性摘要(例如共享库)中,但是于是清单不仅将覆盖应用代码本身,而且将覆盖应用代码和共享库的组合。这可以进一步加强完整性检查,但是也可能每当应用的共享库中的任意一个发生改变时,需要进行清单更新。
服务安全清单可以包含加密签名,加密签名方便验证服务安全清单本身的完整性和真实性。客户可以在查看并且修改清单内容之后,对服务安全清单进行签名。签名可以构成客户对清单内容的认可。
SOA域的“清单状态”可以包括用于该域中的所有SOA应用的服务安全清单。例如,如果域包含X个SOA应用,那么清单状态由用于这些SOA应用的X个服务安全清单构成。每个SOA域的清单状态可以与大于零的整数“清单状态版本号”(例如版本控制信息)相关联。每当在SOA域中增加、删除或者更新SOA应用时,可以使该SOA域的清单状态版本号递增,以弃用所有较早(过时)的清单状态。
每个SOA域可以防止清单状态的回撤(roll-back),即,仅允许将较旧的清单状态(具有较低的版本号)替换为较新的清单状态(具有较高的版本号)。
至少一些实施例可以基于使用域安全层(Domain Security Layer)执行一个或多个车辆应用。“域安全层”可以是特定于域的软件层,其可以观察并且控制该SOA域中的SOA应用的所有服务注册和所有服务调用。可能的域安全层可以是操作系统内核(operatingsystem kernel)、运行时环境、通信层或者通信守护进程(daemon),通过它们可以处理所有SOA操作。哪个软件可以充当域安全层,可能取决于域内部的软件架构和可以使用的通信协议。可以在SOA应用与通信/网络栈之间插入的软件部件或者通信层可以用作域安全层。作为示例,图5a示出了具有四个SOA域的面向服务的架构。用虚线示出了每个SOA域,并且下面标记了充当域安全层的软件层。
图5a示出了三个计算单元/控制单元ECU(电子控制单元)520;530;540,它们通过互连510连接。ECU A 520包括两个SOA域A1 522和A2 524,它们通过管理程序526在硬件528上执行。SOA域A1 522包括彼此分离的两个车辆应用和操作系统(Operating System,OS)内核,操作系统(OS)内核与车辆应用分离并且用作域安全层。OS内核获得应用清单(例如许可信息清单),并且包括入侵检测系统(Intrusion Detection System,IDS)传感器。SOA域A2524还包括彼此分离的两个车辆应用和与车辆应用分离的运行时环境(RunTimeEnvironment,RTE)。在这种情况下,RTE用作域安全层,获得应用清单(例如许可信息清单),并且包括入侵检测系统(IDS)传感器。ECU B 530包括SOA域532中的彼此分离的三个车辆应用,以及与这三个车辆应用分离并且在硬件534上执行的OS内核。在这种情况下,OS内核用作域安全层,获得应用清单(例如许可信息清单),并且包括入侵检测系统(IDS)传感器。ECUC 540包括SOA域542中的彼此分离的三个车辆应用,以及与这三个车辆应用分离并且在硬件544上执行的RTE。在这种情况下,RTE用作域安全层,获得应用清单(例如许可信息清单),并且包括入侵检测系统(IDS)传感器。
在每个SOA域中,可以在SOA应用外部,在分离的受保护的执行环境中,实现域安全层,在该执行环境中,SOA应用都不对其产生干扰。作为示例,可以以具有更高特权的处理器模式(例如以管理员模式运行的OS内核),在进行控制的运行时环境(RTE)中或者在单独的过程中,实现域安全层。
域安全层可以在单独的受保护的执行环境(例如专用过程)中执行每个SOA应用,在该执行环境中,其它SOA应用都不对其产生干扰。
在应用启动时,域安全层可以在执行SOA应用的受保护的执行环境(例如过程)与SOA应用的服务安全清单之间建立固定的关联。这种关联可以使得域安全层随后可以将源自该受保护的执行环境的每个服务调用和每个服务注册归因于进行调用的SOA应用,并且针对该应用的服务安全清单执行主要访问控制检查。
域安全层可以拦截其域中的SOA应用的(所有)服务注册和所有服务调用,并且对每个这样的操作执行主要访问控制检查。主要访问控制检查可以确定应用的服务安全清单是否包含授权操作的能力。
作为示例,图5b示出了针对两个应用的主要访问控制检查。应用A 550利用方法“设置”(1)调用“灯光”服务。域安全层552、560(通信层)针对A的服务安全清单执行访问控制检查,并且确定可以对该操作进行授权(2)。因此,域安全层552将功能调用转换成对网络554的请求(3),并且针对操作不返回错误(4)。应用B 570利用方法“取得”调用“里程表”服务(5)。域安全层572、560(通信层)针对B的服务安全清单执行访问控制检查,并且确定拒绝操作(6)。因此,域安全层572、570、560、562生成IDS事件(7),并且对于操作返回错误(8)。不调用网络层564。
域安全层的实现可以确保没有服务注册并且没有服务调用操作能够绕过域安全层中的访问控制检查。域安全层可以在不同的执行环境(例如过程)之间保持严格的隔离,从而任何SOA应用都无法冒充任何其它SOA应用或者使用来自其它应用的服务安全清单的能力,来注册(提供)或者调用(使用)未经其自身的能力授权的服务。
域安全层可以以对于SOA应用完全透明的方式,来实现整个访问控制检查。每当操作被访问控制拒绝时,域安全层可以使用适当的特定于协议的错误代码来指示失败。SOA应用既不需要知道它们具有服务安全清单,也不需要知道清单中可能包含什么。
结合所提出的概念或者上面或下面描述的一个或多个示例,提到了所述方法、许可信息清单和/或车辆计算单元的更多细节和方面(例如图1a至图4e)。所述方法、许可信息清单和/或车辆计算单元可能包括对应于所提出的概念或者上面或下面描述的一个或多个示例的一个或多个方面的一个或多个附加的可选特征。
如已经提到的,在实施例中,各个方法可以作为可以在相应地硬件上执行的计算机程序或者代码来实现。因此,另一个实施例是具有程序代码的计算机程序,程序代码用于当在计算机、处理器或者可编程的硬件部件上执行计算机程序时,执行上述方法中的至少一个。另一个实施例是存储指令的计算机可读的存储介质,当由计算机、处理器或者可编程的硬件部件执行指令时,指令使计算机实现这里所述的方法中的一个。
本领域的技术人员将容易地认识到,上面描述的各种方法的步骤可以由编程的计算机执行,例如可以确定或者计算时隙(slot)的位置。在此,一些实施例也旨在涵盖程序存储设备、例如数字数据存储介质,其是机器或者计算机可读的,并且对指令的机器可执行或计算机可执行的程序进行编码,其中,所述指令执行这里描述的方法的一些或者所有步骤。程序存储设备例如可以是数字存储器、磁存储介质(例如磁盘和磁带)、硬盘驱动或者光学可读的数字数据存储介质。实施例还旨在涵盖被编程为执行这里所述的方法的所述步骤的计算机,或者(现场)可编程逻辑阵列((field)programmable logic array,(F)PLA)或者(现场)可编程门阵列((field)programmable gate array,(F)PGAs),其被编程为执行上面描述方法的所述步骤。
说明书和附图仅仅示出了本发明的原理。因此,应当理解,本领域技术人员将能够设计不同的布置,虽然这里未明确描述或者示出这些布置,但是这些布置实施本发明的原理,并且包含在其精神和范围内。此外,这里叙述的所有示例原则上明确地旨在为了教导的目的,用于帮助读者理解本发明的原理和发明人为促进本领域而贡献的概念,并且应当解释为不限于这些具体描述的示例和情况。此外,这里描述本发明的原理、方面和实施例的所有陈述以及其具体的示例旨在涵盖其等同方案。当由处理器提供时,可以由单个专用处理器、单个共享处理器或者多个单独的处理器提供功能,多个单独的处理器中的一些可以共享。此外,术语“处理器”或者“控制器”的明确使用不应当解释为仅涉及能够执行软件的硬件,而暗含地包括、但是不限于数字信号处理器(DSP)硬件、网络处理器、专用集成电路(application specific integrated circuit,ASIC)、现场可编程门阵列(FPGA)、用于存储软件的只读存储器(ROM)、随机存取存储器(RAM)和非易失性存储器。也可以包括其它传统或者定制的硬件。可以通过程序逻辑的操作、通过专用逻辑、通过程序控制和专用逻辑的交互或者甚至手动地执行它们的功能,如从上下文中更具体地理解的,可以由实现者选择具体的技术。
本领域技术人员应当理解,这里的任意框图表示实施本发明原理的说明性的电路的概念图。类似地,应当理解,任意流程图、流程图表、状态转换图、伪代码等表示不同的过程,这些过程实质上可以在计算机可读介质中表示,并且由计算机或者处理器执行,而不管是否明确示出了这样的计算机或者处理器。
此外,所附的权利要求在此并入详细的描述中,其中,每个权利要求可以作为单独的实施例独立存在。虽然每个权利要求可以作为单独的实施例独立存在,但是应当注意,虽然从属权利要求可能在权利要求中引用与一个或多个其它权利要求的特定组合,但是其它实施例也可以包括该从属权利要求与每个其它从属权利要求的主题的组合。除非说明了不旨在进行特定的组合,否则在此提出这样的组合。此外,旨在还将一个权利要求的特征包括到任意其它的独立权利要求中,即使该权利要求不直接从属于该独立权利要求。
还应当注意,可以通过具有用于执行在说明书或者在权利要求中公开的方法的各个步骤中的每个的装置的设备,来实现这些方法。
附图标记列表
10 车辆计算单元
12 接口
14 计算模块
20 一个或多个其它计算模块
100 车辆
100a 车辆
100b 一个或多个其它车辆计算单元
110 获得编程指令
120 获得一个或多个个体的许可信息清单
130 执行一个或多个车辆应用
140 接收一个或多个其它个体的许可信息清单
150 确定通信许可数据结构
160 验证个体的许可信息清单
170 提供一个或多个个体的许可信息清单
180 获得更新的车辆应用
190 提供全部一个或多个个体的许可信息清单
210 获得编程指令
220 确定与一个或多个允许的车辆服务有关的信息
230 生成许可信息清单
310 网关控制单元
312、314、316 控制单元分支
322、324、326 计算单元
323、325、327 传感器/执行器层单元
330 网关
331、333、335 CAN总线
332、334、336 广播通信
342、344、346 以太网节点
352 车辆应用
354、356 ECU
358 车辆应用
410 ECU
412 管理程序
414 Linux操作系统环境
416 QNX操作系统环境
420 ECU
422 管理程序
424 Linux操作系统环境
426 自适应AUTOSAR运行时环境
430 ECU
432 应用
434 域安全层
436 安全存储器
438 车辆网络
440 ECU
442 应用
443 安全清单
444 域安全层
446 清单存储器
447 车辆网络
448 其它安全清单
449 ECU的清单
450 ECU
452 应用
454 域安全层
456 清单存储器
458 车辆网络
510 互连
520、530、540 ECU
522、524、532、542 SOA域
526 管理程序
528、534、544 硬件

Claims (15)

1.一种使用车辆的车辆计算单元执行一个或多个车辆应用的方法,所述方法包括:
获得(110)一个或多个车辆应用的编程指令;
获得(120)一个或多个车辆应用的一个或多个个体的许可信息清单,其中,一个或多个个体的许可清单中的每个许可信息清单包括与一个或多个车辆应用中的车辆应用的一个或多个允许的车辆服务有关的信息,其中,与一个或多个允许的服务有关的信息指示允许车辆应用向车辆的其它车辆应用提供的一个或多个车辆服务,和/或允许车辆应用使用的其它车辆应用的一个或多个车辆服务;以及
使用车辆计算单元,基于编程指令,并且基于一个或多个个体的许可信息清单,来执行(130)一个或多个车辆应用,其中,基于一个或多个个体的许可信息清单,来限制一个或多个车辆应用中的车辆应用的通信。
2.根据权利要求1所述的方法,所述方法还包括:从车辆的一个或多个其它车辆计算单元接收(140)一个或多个其它个体的许可信息清单,其中,一个或多个其它个体的许可清单中的每个许可信息清单包括:与一个或多个其它计算单元要执行的其它车辆应用的一个或多个允许的车辆服务有关的信息,其中,基于一个或多个其它个体的许可信息清单,来限制一个或多个车辆应用中的车辆应用的通信。
3.根据权利要求2所述的方法,其中,所述方法包括:基于一个或多个个体的许可信息清单,并且基于一个或多个其它个体的许可信息清单,来确定(150)用于一个或多个车辆应用的通信许可数据结构,其中,基于通信许可数据结构来限制一个或多个车辆应用的通信。
4.根据权利要求3所述的方法,其中,所述通信许可数据结构指示允许一个或多个车辆应用中的哪个与一个或多个其它车辆计算单元中的哪个其它车辆计算单元通信,和/或其中,所述通信许可数据结构指示允许一个或多个其它车辆计算单元中的哪个与一个或多个车辆应用中的哪个车辆应用通信。
5.根据权利要求2至4中任一项所述的方法,其中,响应于车辆计算单元的请求来接收(140)一个或多个其它个体的许可信息清单,或者其中,作为一个或多个其它车辆计算单元的广播来接收(140)一个或多个其它个体的许可信息清单。
6.根据前述权利要求中任一项所述的方法,其中,一个或多个个体的许可信息清单各自包括个体的许可信息清单的加密签名,其中,所述加密签名基于加密密钥,基于车辆应用的编程指令,并且基于与一个或多个允许的车辆服务有关的信息,其中,所述方法还包括:基于加密签名来验证(160)个体的许可信息清单。
7.根据前述权利要求中任一项所述的方法,其中,所述方法还包括:将一个或多个个体的许可信息清单提供(170)给车辆的一个或多个其它车辆计算单元。
8.根据权利要求7所述的方法,其中,响应于一个或多个其它车辆计算单元的请求来提供(170)一个或多个其它个体的许可信息清单,或者其中,作为广播,将一个或多个其它个体的许可信息清单发送(170)到一个或多个其它车辆计算单元。
9.根据权利要求7或8所述的方法,其中,所述方法包括:获得(180)一个或多个车辆应用中的车辆应用的更新,其中,所述更新包括车辆应用的更新的编程指令和更新的许可信息清单,其中,所述方法还包括:将全部一个或多个个体的许可信息清单,包括更新的车辆应用的更新的许可信息清单,提供(190)给车辆的一个或多个其它车辆计算单元。
10.根据权利要求7至9中任一项所述的方法,其中,将一个或多个个体的许可信息清单与版本控制信息一起提供(170)给一个或多个其它车辆计算单元,其中,如果获得了车辆应用的更新的版本,那么改变全部一个或多个个体的许可信息清单的版本控制信息。
11.根据前述权利要求中任一项所述的方法,其中,基于一个或多个个体的许可信息清单,来限制一个或多个车辆应用中的车辆应用与一个或多个车辆应用的其它车辆应用的通信,和/或其中,基于一个或多个个体的许可信息清单,并且基于一个或多个其它个体的许可信息清单,来限制一个或多个车辆应用中的车辆应用与一个或多个其它车辆应用的其它车辆应用的通信。
12.一种用于提供用于车辆的车辆应用的许可信息清单的方法,所述方法包括:
获得(210)车辆应用的编程指令;
确定(220)与车辆应用的一个或多个允许的车辆服务有关的信息,其中,与一个或多个允许的服务有关的信息指示允许车辆应用向车辆的其它车辆应用提供的一个或多个车辆服务,和/或允许车辆应用使用的其它车辆应用的一个或多个车辆服务;
基于与车辆应用的一个或多个允许的车辆服务有关的信息,以及基于车辆应用的编程指令,来生成(230)许可信息清单,其中,许可信息清单包括加密签名和与一个或多个允许的车辆服务有关的信息,其中,生成许可信息清单包括:基于加密密钥,基于车辆应用的编程指令,以及基于与一个或多个允许的车辆服务有关的信息,来生成用于许可信息清单的加密签名。
13.一种计算机程序,具有程序代码,所述程序代码用于当在计算机、处理器或者可编程的硬件部件上执行计算机程序时,执行根据前述权利要求中任一项所述的方法中的至少一个。
14.一种用于车辆(100)的车辆计算单元(10),其中,所述车辆计算单元(10)适合用于执行一个或多个车辆应用,所述车辆计算单元(10)包括:
接口(12),用于与车辆(100)的一个或多个其它车辆计算单元进行通信;以及
计算模块(14),所述计算模块被配置为用于:
获得一个或多个车辆应用的编程指令,
获得一个或多个车辆应用的一个或多个个体的许可信息清单,其中,一个或多个个体的许可清单的每个许可信息清单包括与一个或多个车辆应用中的车辆应用的一个或多个允许的车辆服务有关的信息,其中,与一个或多个允许的服务有关的信息指示允许车辆应用向车辆的其它车辆应用提供的一个或多个车辆服务,和/或允许车辆应用使用的其它车辆应用的一个或多个车辆服务,并且
基于编程指令,并且基于一个或多个个体的许可信息清单,来执行一个或多个车辆应用,其中,基于一个或多个个体的许可信息清单,来限制一个或多个车辆应用的多个车辆应用的通信。
15.一种用于车辆应用的许可信息清单,其中,所述许可信息清单基于与车辆应用的一个或多个允许的车辆服务有关的信息,并且基于车辆应用的编程指令,其中,与一个或多个允许的服务有关的信息指示允许车辆应用向车辆的其它车辆应用提供的一个或多个车辆服务,和/或允许车辆应用使用的其它车辆应用的一个或多个车辆服务,其中,所述许可信息清单包括加密签名和与一个或多个允许的车辆服务有关的信息,其中,所述许可信息清单的加密签名基于加密密钥,基于车辆应用的编程指令,并且基于与一个或多个允许的车辆服务有关的信息。
CN201980079232.1A 2018-10-02 2019-09-30 使用车辆的车辆计算单元执行一个或多个车辆应用的方法、车辆计算单元、用于提供用于车辆应用的许可信息清单的方法、用于车辆应用的许可信息清单和计算机程序 Pending CN113196266A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP18198278.6 2018-10-02
EP18198278 2018-10-02
PCT/EP2019/076432 WO2020070061A1 (en) 2018-10-02 2019-09-30 Method for executing one or more vehicle applications using a vehicle computation unit of a vehicle, vehicle computation unit, method for providing a permission information manifest for a vehicle application, permission information manifest for a vehicle application and computer program

Publications (1)

Publication Number Publication Date
CN113196266A true CN113196266A (zh) 2021-07-30

Family

ID=63915156

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980079232.1A Pending CN113196266A (zh) 2018-10-02 2019-09-30 使用车辆的车辆计算单元执行一个或多个车辆应用的方法、车辆计算单元、用于提供用于车辆应用的许可信息清单的方法、用于车辆应用的许可信息清单和计算机程序

Country Status (4)

Country Link
US (1) US20210398364A1 (zh)
EP (1) EP3860896A1 (zh)
CN (1) CN113196266A (zh)
WO (1) WO2020070061A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11893092B2 (en) * 2020-01-17 2024-02-06 Sony Group Corporation Privilege auto platform
DE102020104408A1 (de) 2020-02-19 2021-08-19 HELLA GmbH & Co. KGaA Fahrzeugkomponente zur Bereitstellung wenigstens eines Dienstes in einem Fahrzeug mit einer Vorfiltereinheit
EP4060487A1 (en) * 2021-03-17 2022-09-21 Aptiv Technologies Limited Electronic control unit, vehicle comprising the electronic control unit and computer-implemented method
DE102021202658A1 (de) 2021-03-18 2022-09-22 Vitesco Technologies GmbH Computerimplementiertes Verfahren und Vorrichtung zur automatisierten Aktualisierung einer Kommunikationseinheit einer Steuereinheit eines Fahrzeugs
WO2023057042A1 (en) 2021-10-05 2023-04-13 Volkswagen Aktiengesellschaft Apparatus, method and computer program for managing a plurality of sets of access settings for a vehicular gateway
DE102021125750A1 (de) 2021-10-05 2023-04-06 Volkswagen Aktiengesellschaft Recheneinheit für ein Fahrzeug und Verfahren und Computerprogramm für eine Recheneinheit für ein Fahrzeug
CN115225706B (zh) * 2022-06-10 2024-05-31 广州汽车集团股份有限公司 数据传输方法、装置、车辆以及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002168018A (ja) * 2000-12-04 2002-06-11 Mitsubishi Electric Corp 車載機器遠隔制御装置
US7719422B1 (en) * 2006-08-30 2010-05-18 Jay Steinmetz Wireless internet protocol-based action-oriented system for remote wireless alerting and action
CN105681270A (zh) * 2014-12-03 2016-06-15 福特全球技术公司 远程车辆应用许可的控制与监测
US20180189103A1 (en) * 2017-01-05 2018-07-05 Guardknox Cyber Technologies Ltd. Specially programmed computing systems with associated devices configured to implement centralized services ecu based on services oriented architecture and methods of use thereof

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102011075416A1 (de) 2011-05-06 2012-11-08 Zf Friedrichshafen Ag Steuerungseinrichtung eines Kraftfahrzeugs
US10489134B2 (en) * 2016-05-12 2019-11-26 Blackberry Limited Requesting resource access permissions

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002168018A (ja) * 2000-12-04 2002-06-11 Mitsubishi Electric Corp 車載機器遠隔制御装置
US7719422B1 (en) * 2006-08-30 2010-05-18 Jay Steinmetz Wireless internet protocol-based action-oriented system for remote wireless alerting and action
CN105681270A (zh) * 2014-12-03 2016-06-15 福特全球技术公司 远程车辆应用许可的控制与监测
US20180189103A1 (en) * 2017-01-05 2018-07-05 Guardknox Cyber Technologies Ltd. Specially programmed computing systems with associated devices configured to implement centralized services ecu based on services oriented architecture and methods of use thereof

Also Published As

Publication number Publication date
US20210398364A1 (en) 2021-12-23
WO2020070061A1 (en) 2020-04-09
EP3860896A1 (en) 2021-08-11

Similar Documents

Publication Publication Date Title
CN113196266A (zh) 使用车辆的车辆计算单元执行一个或多个车辆应用的方法、车辆计算单元、用于提供用于车辆应用的许可信息清单的方法、用于车辆应用的许可信息清单和计算机程序
CN112422532B (zh) 业务通信方法、系统、装置及电子设备
US10503545B2 (en) Universal security agent
US11075955B2 (en) Methods and systems for use in authorizing access to a networked resource
CN109716296B (zh) 通过相关联容器的应用令牌
CN107820604B (zh) 具有联网设备的计算机驱动系统的半虚拟化安全威胁防护
US10999328B2 (en) Tag-based policy architecture
RU2679188C2 (ru) Многофункциональная идентификация виртуального вычислительного узла
US7739731B2 (en) Method and apparatus for protection domain based security
EP2948854B1 (en) Secure interface for invoking privileged operations
US8839004B1 (en) Secure cloud computing infrastructure
EP3676743B1 (en) Application certificate
US20150235042A1 (en) Systems and methods for authenticating an application
EP2141625A2 (en) System and method to secure boot UEFI firmware and UEFI-aware operating systems on a mobile internet device (mid)
EP4191453A1 (en) Platform security
US11496322B2 (en) Identity management for software components using one-time use credential and dynamically created identity credential
CN116490868A (zh) 用于可信执行环境中的安全快速机器学习推理的系统和方法
JP2022099256A (ja) 信頼された実行環境のためのスケーラブルな証明
Stumpf et al. A security architecture for multipurpose ECUs in vehicles
Albayati et al. Profile Based Access Control Model Using JSON Web Tokens
Hesham et al. Secured Service Oriented Communication in V2X Technology
JP2023154299A (ja) セキュアコンポーネント、デバイス、実行基盤及びプロセス実行管理方法
Koller et al. Security Services for Mixed-Criticality Systems Based on Networked Multi-core Chips
Aggarwal et al. Security approaches for mobile multi-agent system
Wahid A policy-based framework for protection of mobile agents

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination