用于自主车辆中的数据安全的系统和方法与流程

文档序号:33506198发布日期:2023-03-18 01:12阅读:52来源:国知局
用于自主车辆中的数据安全的系统和方法与流程
用于自主车辆中的数据安全的系统和方法
1.相关申请的交叉引用
2.本技术要求于2020年7月21日提交的题为“用于自主车辆中的数据安全的系统和方法(systems and methods for data security in autonomous vehicles)”的印度专利申请号202011031177的优先权。上述申请的全部内容特此出于所有目的以引用的方式并入本文。
技术领域
3.本公开涉及自主(例如,自动驾驶)车辆领域。


背景技术:

4.一些机动车辆可能包括自主(例如,自动驾驶)和/或部分自主运行的系统。例如,车辆可以在没有用户输入的情况下(例如,完全自主的车辆)或在有限的用户输入(例如,部分自主的车辆)的情况下运行。例如,车辆的自主驾驶系统可以至少部分地控制车辆的加速、制动和转向系统以驱动车辆。例如,车辆用户可以选择期望的目的地,并且车辆的自主驾驶系统可以自主地控制加速、制动和转向以将车辆引导至期望的目的地。在一些示例中,自主驾驶系统包括至少一个机器学习模型,用于控制车辆系统和监测车辆周围的环境。例如,车辆的机器学习模型可以例如通过检测行人和施工区监测来自多个传感器的数据,以便可视化和感测周围环境。作为另一示例,车辆的机器学习模型可以根据交通模式调整制动和加速。车辆的机器学习模型可以使用来自各种驾驶情况的训练数据进行预训练,并且可以在车辆运行期间进一步实时训练。此外,为了提高机器学习模型的准确性,一些自主车辆可以例如通过与远程服务器共享本地数据并接收更新的机器学习模型而与其它自主车辆协作。此技术可以被称为协作机器学习。通过协作机器学习在多个自主车辆之间共享车辆数据和机器学习模型可以通过将学习的知识从一个车辆的本地机器学习模型传送到分布式网络上的另一机器学习模型来增加机器学习模型的智能。
5.然而,在一些示例中,此类共享可能会导致隐私问题。例如,可能包括敏感用户信息的传输的车辆数据可能会由未经授权的实体访问。作为另一示例,敌对或未经授权的用户可能提供适得其反的数据,这可能影响机器学习训练。例如,通过提供错误数据,可能会降低提供给参与协作机器学习的车辆的机器学习模型的准确性。此外,此类隐私问题可能会阻碍协作学习技术的适应性。例如,出于隐私考虑,车主或用户可能不愿意参与协作学习,这可能降低其车辆本地机器学习模型的准确性。


技术实现要素:

6.本文发明人已经认识到先前提及的问题,并且已经开发出用于至少部分解决以上问题的系统和方法。例如,一种方法包括:在车辆中基于第一密钥和第二密钥生成数字签名,第一密钥和第二密钥均从组管理器接收;以及将用数字签名进行签名的消息传输至协作器,所述消息包括车辆的本地机器学习模型的系数和参数。
7.以此方式,可以提高车辆的自主车辆感知、路径规划和控制系统的准确性,同时减少隐私问题的发生。例如,通过实施协作机器学习策略,多个车辆可以向云服务器提供本地机器学习模型,云服务器可以基于来自多个车辆的本地机器学习模型构建更新的全局机器学习模型。例如,因为更新的全局机器学习模型结合了来自多个车辆的数据,所以更新的全局机器学习模型可能比本地机器学习模型中的每一个都更准确。云服务器可以将更新的全局模型分发给多个车辆,使得车辆组可以实施更新的全局模型。此外,通过经由组签名方案管理组,每个消息(例如,包括本地机器学习模型的消息)可以包括基于组公钥和车辆秘密密钥的数字签名,这可以增加系统安全性、增加系统隐私性,并允许将未经授权的车辆从车辆组中移除。总体而言,可以提高系统隐私和准确性,这又可以提高客户对自主车辆感知、路径规划和控制系统的满意度。
8.本说明书的上述优点和其他优点以及特征将从单独或结合附图进行的以下详细描述中显而易见。
9.应理解,提供以上发明内容来以简化形式介绍在具体实施方式中进一步描述的一系列概念。它并不意味着识别要求保护的主题的关键或基本特征,其范围由具体实施方式之后的权利要求明确定义。此外,所要求保护的主题不限于解决在上文或在本公开的任何部分中指出的任何缺点的实现方式。
附图说明
10.通过参考附图阅读对非限制性实施方案的以下描述,可更好地理解本公开,在附图中:
11.图1示出了根据本公开的一个或多个实施方案的车辆车厢的示例性局部视图;
12.图2示出了根据本公开的一个或多个实施方案的车辆的示例性车载计算系统的框图;
13.图3示出了与远程服务器通信的示例性自主车辆系统。
14.图4示出了使用连续机器学习的自主车辆的示例性系统。
15.图5示出了使用包括敌对参与者的连续机器学习的自主车辆的示例性系统。
16.图6示出了包括用于组签名方案的组件的多个符号的表格。
17.图7示出了使用连续机器学习和组签名方案的自主车辆的示例性系统。
18.图8示出了用于使用组签名方案为自主车辆建立和管理协作学习的方法的流程图。
19.图9示出了用于使用协作学习和组签名方案操作自主车辆的方法的流程图。
具体实施方式
20.如上所述,自主车辆可以协同共享机器学习模型以提高机器学习模型的准确性,并且可以采用组签名方案以维护数据安全。例如,车辆(例如,图1所示的车辆)可以包括用于自主操作车辆的自主模式。自主模式可以通过自主车辆感知、路径规划和控制系统进行操作,如图2所示。为了提高自主车辆感知、路径规划和控制系统的机器学习模型的准确性,车辆可以将本地车辆数据提供给远程服务器,并接收更新的机器学习模型,如图3所示。此外,在图4所示的示例性系统中,多个自主车辆可以参与协作机器学习网络,其中多个自主
车辆可以将本地机器模型上传至远程服务器,并且可以从远程服务器接收更新的模型。然而,此类协作机器学习网络可能允许敌对参与者对系统产生不利影响,如图5所示。为了减少隐私和/或安全问题的发生,可以提供组签名方案,例如图6和图7中所示。例如,根据图8的方法,可以使用协作机器学习将组签名方案应用于车辆组。图9示出了个别车辆使用组签名方案参与协作机器学习方法的方法。
21.图1示出了驾驶员和/或一个或多个乘客可坐在其中的车辆102的车厢100的内部。车辆102可以是道路汽车,以及其它类型的车辆。具体地,图1的车辆102可以是包括驱动轮(未示出)和发动机104的机动车辆。在一些示例中,发动机104可以是内燃发动机。在其它示例中,发动机104可以是电动发动机,或可以包括混合动力组件。例如,车辆102可包括混合动力推进系统,所述混合动力推进系统包括能量转换装置,所述能量转换装置可操作以从车辆运动和/或发动机吸收能量,并且将所吸收的能量转换为适合于由能量存储装置存储的能量形式。车辆102可包括全电动车辆,其并入有燃料电池、太阳能捕获元件和/或用于向车辆供电的其它能量存储系统。
22.此外,车辆102可以是自主车辆。在一些示例中,车辆102是完全自主的车辆(例如,完全自动驾驶的车辆),其被配置为在没有用户输入的情况下驾驶。例如,车辆102可以独立地控制车辆系统以便将车辆引导到期望的位置,并且可以感测环境特征以便引导车辆。在一些示例中,车辆102是部分自主车辆。在一些示例中,车辆102可以具有自主模式和非自主模式,在自主模式中车辆在没有用户输入的情况下操作,在非自主模式中用户引导车辆。此外,在一些示例中,虽然自主车辆感知、路径规划和控制系统可以主要以自主模式控制车辆,但是用户可以输入命令来调整车辆操作,例如改变车辆速度的命令、制动的命令、转弯的命令等。
23.例如,车辆102可以包括多个车辆系统,包括用于提供制动的制动系统、用于为车辆的车轮提供动力的发动机系统、用于调整车辆方向的转向系统、用于控制发动机的档位选择的传动系统、用于处理废气的排气系统等。此外,车辆102包括车载计算系统109。车载计算系统109包括用于在自主驾驶期间至少部分地控制车辆系统的自主车辆感知、路径规划和控制系统。例如,当在自主模式下操作时,自主车辆感知、路径规划和控制系统可以经由多个传感器(例如,例如摄像头、运动传感器、gps信号等)监测车辆周围环境。基于期望的目的地和车辆周围环境,自主车辆感知、路径规划和控制系统可以例如通过调整转向、制动和速度来调整多个车辆系统以将车辆导航到目的地。将参考图2更详细地描述自主车辆感知、路径规划和控制系统(例如,图2的自主车辆感知、路径规划和控制系统261)。
24.如图所示,仪表板106可包括车辆102的人类用户(还称为乘客)可访问的各种显示器和控件。例如,仪表板106可包括用户输入装置,例如车载计算系统109的触摸屏108、音频系统控制面板和仪表组110。触摸屏108可以接收对车载计算系统109的用户输入,用于控制音频输出、视觉显示输出、用户偏好、控制参数选择等。在一些示例中,仪表板106可以包括输入装置,用于用户在自主模式和非自主模式之间转换车辆。例如,车辆包括其中自主车辆感知、路径规划和控制系统至少部分独立地操作车辆的自主模式,以及其中车辆用户操作车辆的非自主模式。车辆用户可以通过仪表板106的用户输入在两种模式之间转换。此外,在一些示例中,仪表板106可以包括用于自主车辆感知、路径规划和控制系统的一个或多个控件,例如用于选择目的地、设置期望的车辆速度、设置导航偏好(例如,对高速公路优于城
市街道的偏好)等。此外,车辆的例如靠近至少一个乘客座椅的其它部分中可存在未示出的额外用户界面。例如,车辆可包括具有控制车载计算系统109的至少一个触摸屏的一排后座椅。
25.图2示出了在车辆102内部配置和/或集成的车载计算系统109的框图。车载计算系统109可执行本文在一些实施方案中描述的方法中的一者或多者。车载计算系统可包括或耦合至各种车辆系统、子系统、硬件组件以及集成于或能够集成于车辆102中的软件应用程序和系统,以便增强驾驶员和/或乘客的车载体验。此外,车载计算系统可以耦合至用于提供自主车辆控制的系统。例如,车载计算系统包括用于自主控制车辆的自主车辆感知、路径规划和控制系统261。
26.车载计算系统109可包括一个或多个处理器,所述一个或多个处理器包括操作系统处理器214和接口处理器220。操作系统处理器214可在车载计算系统上执行操作系统,并且控制车载计算系统的输入/输出、显示、回放和其它操作。接口处理器220可经由车辆间系统通信模块222与车辆控制系统230介接。
27.车辆间系统通信模块222可将数据输出到其它车辆子系统231和自主车辆感知、路径规划和控制系统261,同时还例如通过车辆控制系统230从其它车辆组件和系统231、261接收数据输入。当输出数据时,车辆间系统通信模块222可经由总线提供与车辆的任何状态、车辆周围环境或连接到所述车辆的任何其它信息源的输出相对应的信号。车辆数据输出可包括例如模拟信号(例如当前速度)、由单独的信息源(例如时钟、温度计、例如全球定位系统[gps]传感器的位置传感器等)提供的数字信号、通过车辆数据网络(例如可通过其传送发动机相关信息的发动机控制器区域网络[can]总线、可通过其传送气候控制相关信息的气候控制can总线,以及通过其在车辆中的多媒体组件之间传送多媒体数据的多媒体数据网络)传播的数字信号。例如,车辆数据输出可以输出到自主车辆感知、路径规划和控制系统261,并且自主车辆感知、路径规划和控制系统261可以基于车辆数据输出调整车辆子系统231。例如,车载计算系统109可从发动机can总线检索由车轮传感器估计的车辆的当前速度、经由车辆的电池和/或配电系统的车辆的电源状态、车辆的点火状态等。另外,在不脱离本公开的范围的情况下,也可使用例如以太网等其它介接方式。
[0028]
可在车载计算系统109中包括存储装置208以通过非易失性的形式存储例如能够由处理器214和220执行的指令的数据。存储装置208可存储应用程序数据,包括预先记录的声音,以使车载计算系统109能够运行应用程序以便连接到基于云的服务器和/或收集用于传输至基于云的服务器的信息。所述应用程序可检索由车辆系统/传感器、输入装置(例如,用户界面218)搜集的信息、存储在易失性存储装置219a或非易失性存储装置(例如,存储器)219b中的数据、与车载计算系统通信的装置(例如,经由蓝牙链路连接的移动装置)等。车载计算系统109还可包括易失性存储器219a。易失性存储器219a可以是随机存取存储器(ram)。例如非易失性存储装置208和/或非易失性存储器219b的非暂时性存储装置可存储指令和/或代码,所述指令和/或代码当由处理器(例如,操作系统处理器214和/或接口处理器220)执行时控制车载计算系统109来执行在本公开中描述的动作中的一者或多者。
[0029]
可在车载计算系统109的传感器子系统210中包括一个多个额外传感器。例如,传感器子系统210可包括多个摄像头,例如用于辅助用户停泊车辆的后视摄像头和/或用于识别用户(例如,使用面部辨识和/或用户手势)的车厢摄像头。多个摄像头还可以包括在自主
操作期间用于环境感测的至少一个摄像头,例如用于检测即将到来的道路障碍物的摄像头、用于检测变道的摄像头等。车载计算系统109的传感器子系统210可与各种车辆传感器通信并且从各种车辆传感器接收输入并且可进一步接收用户输入。例如,由传感器子系统210接收的输入可包括变速齿轮位置、变速器离合器位置、油门踏板输入、制动输入、变速器选择器位置、车辆速度、发动机转速、通过发动机的质量空气流量、周围温度、进气温度等,以及来自气候控制系统传感器的输入(例如热传递流体温度、防冻剂温度、风扇转速、乘客舱温度、期望的乘客舱温度、环境湿度等)、检测由用户发出的语音命令的音频传感器、接收来自车辆的遥控钥匙的命令并且任选地追踪车辆的遥控钥匙地理位置/接近度的遥控钥匙传感器。例如,自主车辆感知、路径规划和控制系统261可以使用来自传感器子系统210的数据,以便感测车辆环境并控制车辆系统。虽然某些车辆系统传感器可单独与传感器子系统210通信,但其它传感器可与传感器子系统210和车辆控制系统230两者通信,或可通过车辆控制系统230间接地与传感器子系统210通信。
[0030]
车载计算系统109的导航子系统211可生成和/或接收导航信息,例如位置信息(例如,经由gps传感器和/或来自传感器子系统210的其它传感器)、路线指导、交通信息、关注点(poi)识别,和/或为用户提供其它导航服务。导航子系统211可以包括输入/输出280,包括模数转换器、数字输入、数字输出、网络输出、射频传输装置等。在一些示例中,导航子系统211可以与例如自主车辆感知、路径规划和控制系统261的车辆控制系统230介接。例如,导航子系统211可以将地图数据、交通数据、建议路线等输出到自主车辆感知、路径规划和控制系统261以促进自主车辆操作。
[0031]
车载计算系统109的外部装置接口212可以可耦合至位于车辆102外部的一个或多个外部装置150,和/或与所述一个或多个外部装置通信。虽然所述外部装置被示为位于车辆102外部,但将理解,例如当用户在操作车辆102的同时正在操作外部装置时,它们可暂时容纳在车辆102中。换句话说,外部装置150与车辆102未成一体。外部装置150可包括移动装置128(例如,经由蓝牙、nfc、wifi直连或其它无线连接130进行连接)或替代的具有蓝牙功能的装置252。移动装置128可以是可经由有线和/或无线通信与车载计算系统通信的移动电话、智能电话、可穿戴装置/传感器,或其它便携式电子装置。其它外部装置包括外部服务246。例如,所述外部装置可包括与车辆分开并且位于车辆外部的舱外装置。其它外部装置包括外部存储装置254,例如固态驱动器、笔驱动器、usb驱动器等。在不脱离本公开的范围的情况下,外部装置150可无线地或经由连接器与车载计算系统109通信。例如,外部装置150可通过外部装置接口212通过网络260、通用串行总线(usb)连接、直接有线连接、直接无线连接和/或其它通信链路与车载计算系统109通信。
[0032]
外部装置接口212可提供通信接口以使车载计算系统能够与和用户的联系人相关联的移动装置通信。例如,外部装置接口212可使得能够与和用户的联系人相关联的移动装置128建立语音呼叫和/或向所述移动装置发送(例如,经由蜂窝通信网络)文本消息(例如,sms、mms等)。此外,在一些示例中,车辆用户可以经由与用户相关联的移动装置128的应用程序来调整自主车辆操作。外部装置接口212可另外或替代地提供无线通信接口,以使车载计算系统能够经由wifi直连与车辆中的一个或多个装置(例如,用户的移动装置)同步数据。
[0033]
一个或多个应用程序248可以在外部服务246上操作。例如,可操作外部服务应用
程序248以聚合和/或分析来自多个数据源的数据。例如,外部服务应用程序248可聚合来自用户的一个或多个社交媒体账户的数据、来自车载计算系统的数据(例如,传感器数据、日志文件、用户输入等)、来自互联网查询的数据(例如,天气数据、poi数据)等。可将所收集的数据传输至另一装置和/或所收集的数据可由应用程序分析以确定用户、车辆和环境的背景并且基于所述背景来执行动作(例如,向其它装置请求数据/发送数据)。
[0034]
车载计算系统109还可包括天线206。天线206被示出为单个天线,但在一些实施方案中可包括一个或多个天线。车载计算系统可经由天线206获得宽带无线互联网访问,并且还可接收广播信号,例如收音机、电视、天气、交通等。车载计算系统可经由一个或多个天线206接收定位信号,例如gps信号。车载计算系统还可经由fr,例如经由天线206或经由红外线或通过适当接收装置的其它方式来接收无线命令。例如,天线206可接收语音呼叫(例如,电话呼叫)。另外,天线206可经由外部装置接口212将am/fm无线电信号提供到外部装置150(例如,提供到移动装置128)。
[0035]
车辆控制系统230可包括用于控制在不同车辆功能中涉及的各种车辆子系统231的各方面的控件。例如,可以控制多个车辆子系统231以便操作车辆。在一些示例中,车辆子系统231可至少部分地由用户输入控制,而在一些示例中,车辆子系统231可至少部分地经由自主车辆感知、路径规划和控制系统261控制。图2示出了多个车辆子系统231,包括制动系统232、加速控制系统234、电信控制系统236、转向控制系统238、气候控制系统240、外部照明控制系统242和音频系统244。在一些示例中,额外车辆系统可以包括在车辆子系统231中。额外车辆系统可包括巡航控制系统、物体检测系统、停车系统、照明系统等。
[0036]
制动系统232可以被配置为控制施加到车辆的制动力的量。例如,在非自主操作模式期间,制动系统232可由制动踏板控制。例如,用户可以踩下制动踏板以增加施加到车辆的制动量。在自主操作模式期间,制动系统232可由自主车辆感知、路径规划和控制系统261控制。例如,自主车辆感知、路径规划和控制系统261可以确定请求额外制动,并且可以施加额外制动。在一些示例中,自主车辆感知、路径规划和控制系统可以踩下制动踏板以施加制动(例如,降低车速和/或使车辆停下)。
[0037]
加速控制系统234可以被配置为控制施加到车辆的加速量。例如,在非自主操作模式期间,加速控制系统234可由加速踏板控制。例如,用户可以踩下加速踏板以增加施加到车辆车轮的扭矩量,从而使车辆加速。在自主操作模式期间,加速控制系统234可由自主车辆感知、路径规划和控制系统261控制。例如,自主车辆感知、路径规划和控制系统261可以确定请求额外的车速,并且可以通过加速来增加车速。在一些示例中,自主车辆感知、路径规划和控制系统261可以踩下加速踏板以加速车辆。
[0038]
转向控制系统238可以被配置为控制车辆的方向。例如,在非自主操作模式期间,转向控制系统238可由方向盘控制。例如,用户可以转动方向盘以调整车辆方向。在自主操作模式期间,转向控制系统238可由自主车辆感知、路径规划和控制系统261控制。例如,转向控制系统261可以确定请求改变车辆方向,并且可以经由控制转向控制系统238来改变车辆方向。例如,转向控制系统238可以调整车辆的车轴以改变车辆方向。
[0039]
气候控制系统240可被配置为提供车辆102的车厢或乘客舱内的舒适环境。气候控制系统240包括实现受控的通风的组件,例如通风口、加热器、空调、集成加热器和空调系统等。连接至加热和空调装备的其它组件可包括能够清洁挡风玻璃的挡风玻璃除霜和除雾系
统,以及用于清洁通过新鲜空气入口进入乘客舱的外部空气的通风空气过滤器。在一些示例中,气候控制系统240的组件可以由自主车辆感知、路径规划和控制系统261控制。然而,用户可以经由例如触摸屏108和车辆车厢中的其它按钮的用户输入装置来调整气候控制系统240。例如,虽然自主车辆感知、路径规划和控制系统261可以将车辆车厢内的温度维持在预定温度,但是用户可以调整气候控制系统以调整温度。
[0040]
车辆控制系统230还可包括用于调整与发动机和/或车辆车厢内的辅助元件相关的各种车辆控件(或车辆系统控制元件)的设置的控件,例如方向盘控件(例如,方向盘安装式音频系统控件、巡航控件、挡风玻璃刮水器控件、前照灯控件、转向灯控件等);仪表板控件;传声器;换挡杆;位于驾驶员门或乘客门中的门/窗控件;座椅控件;车厢灯控件等。车辆控件还可包括内部发动机和车辆操作控件(例如,发动机控制器模块、致动器、气门等),所述内部发动机和车辆操作控件被配置为经由车辆的can总线接收指令以改变发动机、排气系统、变速器和/或其它车辆系统中的一者或多者的操作。此外,为了自主控制车辆,物体检测系统可以使用例如来自摄像头和运动传感器的传感器数据来检测车辆路径中的障碍物并基于障碍物调整车辆操作。控制信号还可以控制车辆音频系统(未示出)。例如,所述控制信号可调整音频输出特性,例如音量、均衡、音频图像(例如,用于产生在用户看来源自一个或多个限定位置的音频输出的音频信号配置)、多个扬声器之间的音频分布等。同样地,所述控制信号可控制气候控制系统240的通风孔、空调和/或加热器。例如,控制信号可增加向车厢的特定区段输送冷却空气。例如,当以自主模式操作时,自主车辆感知、路径规划和控制系统261可以控制上述车辆控件中的一些或全部。
[0041]
位于车辆外部的控制元件(例如,用于安全系统的控件)还可例如经由通信模块222连接至计算系统109。车辆控制系统的控制元件可物理地且永久地位于车辆之上和/或之中以用于接收用户输入。除了从车载计算系统109接收控制指令之外,车辆控制系统230还可从由用户操作的一个或多个外部装置150,例如从移动装置128接收输入。这允许基于从外部装置150接收的用户输入来控制车辆子系统231和车辆控件261的各方面。
[0042]
为了控制车辆子系统231,自主车辆感知、路径规划和控制系统261包括多个本地机器学习模型262。当以自主模式操作时,自主车辆感知、路径规划和控制系统261可以组合来自各种来源(例如,来自传感器子系统210、导航子系统211等)的各种数据,以便可视化环境并预测未来的事件。例如,自主车辆感知、路径规划和控制系统261包括可基于传感器数据监测车辆周围环境的感知系统、高级路径规划系统、低级路径规划和车辆控制器。多个本地机器学习模型262可以提供用于基于各种数据控制车辆系统的模型。此外,可以在车辆操作期间训练多个本地机器学习模型262。例如,自主车辆感知、路径规划和控制系统261可以使用机器学习来提高车辆子系统231中的每一者的控制方法的准确性。例如,本地机器学习模型262可以在车辆数据上进行训练以提高本地机器学习模型的准确性。本地机器学习模型可以在自主模式和非自主模式下操作时更新。此外,为了简化学习过程,可以为车辆子系统231的每个车辆系统开发单独的机器学习模型。例如,第一本地机器学习模型可以在来自制动系统232的数据上进行训练,而第二机器学习模型可以在来自加速控制系统234的数据上进行训练。
[0043]
此外,外部装置接口212可以提供与自主车辆云256的通信接口。例如,自主车辆感知、路径规划和控制系统261可以与自主车辆云256交换数据以提高自主操作的准确性和可
靠性。例如,车辆可以例如通过发送本地数据和/或本地机器学习模型到自主车辆云256来参与协作学习,所述自主车辆云可以基于来自多个车辆的数据提供更新的机器学习模型。为了保持这种系统中的安全性,车辆102可以包括用于认证的安全方案数据250,如下文也将参考图6至图8详细说明。例如,自主车辆云256可以包括多个控制器,每个控制器包括用于存储可执行指令的非易失性存储器。例如,如图7所示,自主车辆云256可以包括充当组管理器的第一控制器、充当协作器的第二控制器和充当撤销机构的第三控制器。
[0044]
在先前的机器学习方法中,车辆数据与云服务器共享,并且云服务器为车辆提供更新的机器学习模型,以提高本地机器学习模型的准确性。使用此种方法的车辆的示例在图3中示出。具体来说,图3示出了包括向机器学习云302提供本地车辆数据304的车辆308的网络300。车辆308可以是包括多个本地机器学习模型的自主车辆(例如,完全自主车辆或部分自主车辆),多个本地机器学习模型中的每一个在车辆数据304上进行训练以便自动操作车辆308。车辆308可以周期性地和/或持续上传车辆数据304至机器学习云302。例如,机器学习云302可以包括全局机器学习模型,其可以基于来自车辆308的车辆数据304训练。机器学习云302可以基于更新的全局机器学习模型向车辆308提供更新的本地机器学习模型306,以提高车辆308的操作准确性。此过程可无限期地继续。例如,车辆可以继续将车辆数据上传至机器学习云302,机器学习云302可以继续基于来自车辆的数据更新全局机器学习模型,并且机器学习云302可以继续将更新的本地机器学习模型传输至车辆308。因此,可以随时间调整用于控制车辆308的本地机器学习模型,从而提高车辆准确性并提高客户满意度。
[0045]
然而,图3中描述的机器学习系统可能包含来自单个车辆的训练数据。为了进一步提高自主车辆感知、路径规划和控制系统的准确性,可以将协作机器学习(cml)方法应用于自主车辆(例如,车辆102),以便持续更新本地机器学习模型。使用cml方法,可以将来自多个车辆的多个本地机器学习模型上传至机器学习云。例如,机器学习云可以是自主车辆云256。基于多个本地机器学习模型,机器学习云可以构建全局机器学习模型,可以将所述全局机器学习模型传输至多个车辆中的每一个。例如,由于全局机器学习模型基于多个本地机器学习模型,因此它可以包含更多的数据并且更准确。机器学习云可以将全局机器学习模型传输至多个车辆中的每一个。在一些示例中,每个车辆可以具有多个本地机器学习模型,多个本地机器学习模型中的每一个专用于车辆系统。例如,车辆可能具有用于转向系统的本地机器学习模型和用于制动系统的本地机器学习模型。此类cml方法可以应用于每个本地机器学习模型。
[0046]
图4示出了用于将cml方法应用于自主车辆的示例系统400。具体来说,图4示出参与cml方法的两个车辆,第一车辆410和第二车辆412。第一车辆410和第二车辆412中的每一个可以与图1和图2的车辆102类似地配置。具体地,第一车辆410和第二车辆412中的每一个可以是至少部分自主车辆,并且第一车辆410和第二车辆412中的每一个可以包括具有至少一个本地机器学习模型的自主车辆感知、路径规划和控制系统(例如,自主车辆感知、路径规划和控制系统261)。例如,如关于图2所详述,自主车辆感知、路径规划和控制系统可以包括多个本地机器学习模型,每个本地机器学习模型控制车辆系统。例如,第一本地机器学习模型可以控制制动系统,并且第二本地机器学习模型可以控制加速系统。如图所示,第一车辆410可以将本地机器学习模型404从第一车辆410上传至云服务器402,并且第二车辆412
可以将本地机器学习模型408从第二车辆412上传至云服务器402。例如,第一车辆410和第二车辆412中的每一个可以从经过训练的神经网络上传系数。第一车辆410和第二车辆412中的每一个可以将多于一个本地机器学习模型上传至云服务器402。例如,第一车辆410和第二车辆412中的每一个可以上传对应于多个车辆系统(例如,例如转向系统、制动系统等)的多个本地机器学习模型。云服务器402可以分析从车辆上传的机器学习模型,并且可以构建更新的机器学习模型以经由协作学习模块406共享。例如,基于来自本地机器学习模型中的每一个的系数,云服务器402可以为每个车辆系统确定更新的全局机器学习模型,所述全局机器学习模型可以合并来自每个本地机器学习模型的学习。以此方式,可以将来自第一车辆410和第二车辆412中的每一个的数据结合到全局机器学习模型中。例如,更新的全局机器学习模型可以与第一车辆410和第二车辆412中的每一个共享,使得更新的全局机器学习模型替代本地机器学习模型。随着车辆操作继续,第一车辆410和第二车辆412中的每一个可以继续训练和更新它们的本地机器学习模型,使得过程继续,从而为每个车辆提供对机器学习模型的连续协作更新。例如,将cml方法应用于自主车辆可以提高车辆本地机器学习模型的准确性。包括云服务器402和参与cml方法的车辆410和412的图4的系统可被称为cml网络。
[0047]
然而,当提供车辆数据(例如来自本地机器学习模型的系数)时,可能会出现隐私问题和安全问题。例如,cml网络(例如图4中所示的cml网络)中的未经授权参与者可以在未经许可的情况下访问与车辆相关的数据。作为另一示例,cml网络中未经授权的参与者可能向云服务器提供虚假的车辆数据,从而导致全局机器学习模型的准确性下降。例如,通过向云服务器提供不准确的车辆数据,可能降低全局机器学习模型的准确性。此外,可以将在不准确的车辆数据上进行训练的全局机器学习模型传输至cml网络中的车辆,从而降低cml网络中车辆的自主车辆感知、路径规划和控制系统的准确性。总体而言,隐私问题和安全问题可能降低客户满意度,并减少自主车辆感知、路径规划和控制系统的使用。
[0048]
为了证明与cml网络相关的安全问题和隐私问题,图5示出了包括未经授权的车辆的示例性cml网络500。例如,图5示出云服务器402、第一车辆410和第二车辆412,第一车辆410和第二车辆412参与cml方法。然而,如图5所示,未经授权的车辆502可以参与网络。例如,未经授权的车辆502可能向云服务器402提供不正确或有偏差的数据,这可能降低全局机器学习模型的准确性。如图5所示,未经授权的车辆502向云服务器402提供不准确的数据,这影响了分发给第一车辆410和第二车辆的更新的全局模型。作为另一示例,未经授权的车辆502可以访问关于网络中的其它车辆的数据(例如,例如来自第一车辆410和第二车辆412的数据),这可能降低系统中的隐私性。例如,全局模型准确性的降低和隐私性的降低可能导致客户满意度下降。因此,需要例如通过识别未经授权的车辆并将其从cml网络中移除来增加cml网络中的安全性和隐私性的方法。
[0049]
本文的发明人已经认识到上述缺陷,并且有利地认识到可以将组签名方案应用于用于自主车辆的cml网络以便识别和移除未经授权的车辆。组签名方案是一种提供增强的隐私性和匿名功能的高级形式的数字签名。例如,组可以包括多个车辆(例如,组成员)、组管理器、协作器和撤销机构。组管理器、协作器和撤销结构各自可以是容纳在远离多个车辆中的每一个的位置中的独立控制器。在一些示例中,组管理器、协作器和撤销机构可以包括在单个远程服务器中。组签名方案允许组成员(例如,车辆组中的车辆)使用私钥代表组用
签名对消息匿名签名(例如,向协作器进行数据传输,例如本地机器学习模型的系数)。例如,可以相对于单个组公钥验证签名,但可能不会泄露消息签名者的身份。因此,有效的组签名是可公开验证的,使得拥有组公钥的任何人都可以验证组签名,而不会损害消息签名者的隐私。例如,协作器可以根据给定的消息确定组的身份,但可能无法确定对消息签名的个人的身份。此外,将数字签名链接到组成员可能在计算上具有挑战性,这可以防止网络中未经授权的参与者识别组成员(例如,识别组中的另一车辆)。此外,有效的组签名可不被错误归属。在发生争议的情况下(例如,基于签名的网络中的疑似未经授权参与者),组管理器可以打开消息以追踪签名者的身份。因此,未经授权的参与者可以由撤销机构识别并从组中移除。
[0050]
因此,其中cml网络包括组签名方案所提出系统允许在多个车辆之间共享数据,同时维护多个车辆的隐私和安全。所提出的方法可用于在adas、数字驾驶舱和v2x应用程序之间共享模型。例如,所提出的系统实现在确保模型正确性的同时匿名共享本地机器学习模型。本文描述的组签名方案可以是boneh、boyen和shacham(bbs)组签名方案。然而,在不脱离本公开的范围的情况下可以使用ateniese、camenisch、joye和tsudik(acjt)组签名方案、camenisch和groth(cg)组签名方案以及boneh shacham(bs)组签名方案。bbs组签名方案可能不支持车辆动态注册。然而,其它组安全方案可以支持车辆的动态注册。
[0051]
图6示出了在cml网络中使用的组签名方案的组件以及用于表示所述组件的标记和符号的图表600。如行602所示,符号gv可对应于一组车辆,例如包括多个自主车辆的组。例如,gv是指在参与cml方法时使用组签名方案的车辆。例如,每个车辆可以由vi(行612)表示,每个车辆属于gv并且包括自主车辆感知、路径规划和控制系统(例如,图1和图2的车辆102的自主车辆感知、路径规划和控制系统261)。例如,gv的第一车辆可以表示为v1,并且gv的第二车辆可以表示为v2。此外,如行604所示,组管理器可以由符号gm表示。gm可以通过接收车辆的详细信息作为参数、生成和分发私钥和公钥以及在发生争议的情况下揭示车辆的身份来建立组签名方案。例如,gm可以是与gv的每个车辆通信的云服务器(例如,图2的自主车辆云256)的组件,例如具有存储在非暂时性存储器中的用于建立和管理组签名方案的指令的控制器。例如,当建立组签名方案时,gm可以生成组管理器秘密密钥gmsk(行610)。
[0052]
除了gm之外,组签名方案中涉及的其它实体还包括协作器cm(行606)和撤销机构ra (行624)。例如,cm和ra也可以是云服务器的组件。在其它示例中,cm和ra中的一者或两者可以托管在与托管gm的服务器分开的不同服务器中。cm可以是具有以非暂时性方式存储以用于将来自车辆的本地机器学习模型聚合成全局机器学习模型并验证来自车辆的消息上的数字签名的指令的控制器。此外,ra可以是具有存储在非暂时性存储器中以用于管理和发布已撤销车辆的撤销列表的指令的控制器。此外,gm可以生成由gpk表示的组公钥(行608),并且可以为每个车辆提供一个不同的车辆秘密密钥gsk(行614)。例如,可以根据图8的方法在建立组签名方案时分配gpk和gsk。例如,组签名方案中的每个参与者可以在消息上附加数字签名σ,所述消息例如发送给协作器cm的包含用于协作学习的本地机器学习模型的消息。每个车辆可以基于gsk生成数字签名σ(行622)。此外,gv的gpk可用于由cm验证此签名σ。
[0053]
具体来说,每个车辆vi可以包括对应于用于控制车辆系统的模型的本地模型lmi(行616)。例如,gv中的第二车辆v2可以包括本地模型lm2。例如,lm2可以是用于例如制动系
统或转向系统的单个车辆系统的模型。例如,每个车辆可以经由消息m(行620)将系数和参数从它们的本地机器学习模型传输至cm。此外,消息m可以用数字签名σ进行签名,数字签名σ由车辆基于gsk生成。因此,每个车辆可以生成不同的私人数字签名。cm可以是具有存储在非易失性存储器中以用于验证数字签名、分析来自gv中的车辆的本地机器学习模型以及构建更新的全局机器学习模型的指令的控制器。如果消息m的签名被cm接受,则全局模型(gb,行618)可基于消息m更新,并传输至多个车辆中的每一个。如果消息m的数字签名σ由cm使用gpk验证,则cm可以接受车辆参与cml网络。图7示出具有组安全方案的cml网络,并且将关于图8的方法800更详细地描述用于建立和执行组签名方案的方法。
[0054]
在其它示例中,每个车辆(例如,第一车辆和第二车辆)可以包括多个本地机器学习模型,每个本地机器学习模型与车辆系统相关联。车辆的每个不同的本地机器学习模型可以经由具有组签名方案的不同的cml网络进行更新。例如,为了更新用于第一车辆的制动系统的本地机器学习模型(例如,制动系统模型),第一车辆可以使用数字签名对包括制动系统模型的系数和参数的消息进行签名,数字签名部分地基于第一组签名方案的组公钥生成。然后,第一车辆可以将消息传输至云服务器(例如,托管协作器、组管理器和撤销机构的云服务器),所述云服务器可以编译从具有与第一车辆类似的制动系统的第一组车辆的制动系统模型产生的系数。此外,为了更新用于第一车辆的转向系统的本地机器学习模型(例如,转向系统模型),第一车辆可以使用数字签名对包括转向系统模型的系数的消息进行签名,数字签名部分地基于第二组签名方案的组公钥生成。然后,第一车辆可以将消息传输至云服务器,云服务器可以编译具有与第一车辆类似的转向系统的第二组车辆的转向系统模型的系数。换句话说,车辆可以参与具有不同参与者的多个组签名方案,使得不同的组签名方案增加了cml方法更新车辆的多个机器学习模型的每个本地机器学习模型的隐私性。
[0055]
组签名方案为用户安全提供了几个好处。首先,可以保护每个车辆的身份,使得参与组签名方案的每个车辆不可能识别组中的其它车辆。例如,协作器(cm)可能无法获知将签名发送给协作器的车辆的身份。因此,组管理器(gm)知道每个车辆的身份。此外,cm不可能链接来自同一车辆的不同消息。此外,组中的任何成员(或gm或cm)都不能代表其它参与者产生有效签名,因为特定参与者的gsk是秘密的并且为车辆所知。例如,gm可以检测到使用通过另一车辆的gsk生成的数字签名对消息进行签名的未经授权参与者。此外,使用其私钥(例如,gsk)对消息(例如,包括本地机器模式的消息)进行签名的每个车辆将来可能不会拒绝此活动。例如,因为gsk是车辆已知的,而不是网络中的其它实体已知的,所以除了车辆之外没有任何实体可以生成合法签名。此外,组签名方案可以保持消息正确性。例如,具有有效签名的消息可能由协作器接受。例如,未经授权的参与者可能尝试将不正确的数据注入全局模型。为此,未经授权的参与者可能尝试生成签名。然而,在没有秘密密钥(例如,gsk)的情况下,签名可能被确定为无效。因此,来自未经授权的参与者的任何无效签名都可以在验证阶段期间由协作器检测到,并且将被丢弃。此外,可以将事件报告给gm以采取进一步动作,例如经由撤销机构(ra)从组中撤销未经授权的参与者。
[0056]
接下来,图7示出了具有组安全方案的cml网络700。例如,一组车辆(gv)718可以参与用于协作学习的cml方法,并且还可以参与用于提供数据安全的组安全方案。gv 718包括多个车辆,包括第一车辆714和第二车辆716。如图所示,组管理器(gm)704可以例如通过向组中的每个车辆,例如第一车辆714和第二车辆716分发组公钥(gpk)和车辆秘密密钥(gsk)
来建立组签名方案。在一些示例中,gm 704可以允许非成员车辆加入组。此外,在发生争议的情况下,gm 704可以追踪签名消息以揭示gv 718中车辆的身份。例如,每个车辆(例如第一车辆714和第二车辆716)可以经由消息与协作器(cm)702共享本地机器学习模型,所述消息可以使用车辆秘密密钥签名。如图所示,第一车辆714经由用数字签名进行签名的消息将本地机器学习模型708传输至cm 702,并且第二车辆716经由用数字签名进行签名的消息将本地机器学习模型710传输至cm 702。例如,每个车辆可以周期性地向cm 702发送具有本地机器学习模型的消息,使得可以更新全局机器学习模型以提高准确性。具体来说,如图7所示,cm 702包括全局机器学习模型(gb)722。cm 702可以使用组公钥(gpk)验证每个数字签名并聚合本地模型以便更新gb 722。在基于多个本地机器学习模型(例如,本地机器学习模型710和本地机器学习模型708)更新gb 722之后,cm 702可以经由协作学习模块712分发更新的gb 722。
[0057]
在发生争议的情况下,gm 704可以确定车辆的身份。例如,如果cm 702确定消息上的签名无效,则cm 702可以请求gm 704揭示车辆身份以确定未经授权的车辆是否参与组签名方案。此外,撤销机构(ra)706可以管理和公布撤销车辆(例如,gm 704确定为未经授权的车辆)的撤销列表。例如,gm 704、cm 702和ra 706可以由远程服务器720托管。
[0058]
如上所述,每个车辆可以包括用于控制不同车辆系统的多个本地机器学习模型,并且因此可以参与具有参与组安全方案的多个组的多个cml网络。此外,基于每个车辆的自主车辆感知、路径规划和控制系统所包括的本地机器学习模型,每个车辆可以参与不同组的cml网络。
[0059]
接下来,图8示出了用于管理组签名方案以便向多个车辆提供更新的机器学习模型的方法。方法800将关于具有关于图7描述的组签名方案并且包括多个车辆的cml网络来描述。多个车辆中的每个车辆可以是关于图1和图2描述的车辆102。例如,多个车辆中的每个车辆包括控制器和自主车辆感知、路径规划和控制系统,自主车辆感知、路径规划和控制系统包括用于控制车辆系统的至少一个本地机器学习模型。此外,cml网络包括托管多个实体的远程服务器,所述实体包括协作器(cm)、组管理器(gm)和撤销机构(ra)。例如,cm、gm和ra中的每一个可以是远程服务器的控制器。远程服务器可以经由无线连接,例如wifi连接、超宽带(uwb)连接等中的一种以通信方式耦合至多个车辆中的每一个。用于执行方法800和本文包括的其余方法的指令可以由控制器基于存储在控制器的存储器上的指令并结合从车辆系统的传感器接收的信号来执行。例如,方法800的部分可以由包括存储在非暂时性存储器中的可执行指令的车辆控制器执行。此外,方法800的部分可以由包括存储在非暂时性存储器中的可执行指令的cm控制器、包括存储在非暂时性存储器中的可执行指令的gm控制器和包括存储在非暂时性存储器中的可执行指令的ra控制器中的至少一个来执行。
[0060]
在802,方法800包括gm基于车辆组的详细信息设计组签名方案系统,所述详细信息例如组中车辆的数量、要经由cml方法更新的机器学习模型的类型以及车辆类型。具体来说,gm可以将组中车辆的详细信息作为自变数,并可以继续执行以下数学过程,以便为每个用户生成gpk、gmsk和秘密密钥。在此过程中,g1和g2是素数阶p的两个(乘法)循环群,g1是g1的生成元,并且g2是g2的生成元。此外,ψ是从g2到g1的可计算同构,其中ψ(g2)=g1。组签名方案采用哈希函数h:{0,1}*

zp,其可以视为安全证明中的随机预言。公共值是g1,u,v,h∈g1和g2,w∈g2。此处,u、v和h在g1中是随机的,g2是g2的随机生成元,g1等于ψ(g2),并且对于某
些(秘密)γ∈z
p
,w等于g
γ2
。协议证明拥有一对(a,x),其中a ∈g1且x∈z
p
,使得a
x+γ
=g1。此对满足e(a,wg
x2
)=e(g1,g2)。为了生成密钥,gm可以首先在g2中随机均匀地选择生成元g2。接下来,gm可以设置g1=ψ(g2),并选择随机数h=g1\{1
g1
}和ξ1,ξ2∈rz*
p
。接下来,gm可以设置u,v∈g1,使得uξ1=vξ2=h e。此外,gm可以选择γ∈rz*
p
并设置w=g

。接下来,使用γ为每个用户i(1《=i《=n)生成元组(ai,xi),其中xi∈rz*
p
,并且设置ai=g
11/γ+xi
∈g
1 g。组公钥为gpk=(g1,g2,h,u,v,w),组私钥为gmsk=(ξ1,ξ2),并且每个用户的秘密密钥是他们的元组gsk[i]=(ai,xi)。因此,通过此过程,gm配备gpk和gmsk。此外,gm将每个车辆秘密密钥gsk[i]传输至组gv中的相应车辆。因此,每个车辆接收到所述组的gpk,并且每个车辆接收到识别车辆的不同gsk。
[0061]
在804,方法800包括车辆组中的每个车辆与cm共享本地模型。例如,对于组签名方案,每个车辆(vi)可以在与协作器共享之前对包含车辆本地机器学习模型的详细信息(例如,例如本地机器学习模型的系数)的消息(m)进行签名。因此,每个车辆可以遵循数学过程来使用不同的数字签名σ对消息进行签名。首先,车辆(例如,车辆vi)可以选择消息m∈{0,1}。此外,车辆vi可以计算以下值:t1=u
α
、t2=v
β
、t3=ah
α+β
,指数为α,β∈rz
p
。车辆可以选择r
α
,r
β
,r
x
,r
δ1
,r
δ2
∈rz
p
,并计算r1=u

、r2=u

、r3=e(t3,g2)
rx
.e(h,w)-rα-rβ
.e(h,g2)-rδ1-rδ2
、r4=t
1rx
.u-rδ1
、r5=t
2rx
.v-rδ2
。接下来,车辆vi可以使用哈希函数计算质询c为:c=h(m,t1,t2,t3,r1,r2,r3,r4,r5)∈z
p
。此外,车辆vi可以使用值c来构造以下值:s
α
=r
α
+cα、s
β
=r
β
+cβ、s
x
=r
x
+cx、s
δ1
=r
δ1
+cδ1、s
δ2
=r
δ2
+cδ2。最后,消息的签名计算如下:σ=(t1,t2,t3,c,s
α
,s
β
,s
x
,s
δ1
,s
δ2
),辅助值为δ1

xα和δ2

xβ∈zp。因此,每个车辆用不同的数字签名σ(例如,用gsk生成)对它们的消息m进行签名,并将签名的消息传输至cm。关于图9更详细地描述用于操作单独车辆以将本地机器学习模型发送到协作器的方法。
[0062]
在806,方法800包括协作器计算和验证车辆签名。例如,协作器可以计算以下值以验证数字签名σ:r'1=u

。t1–c、r'2=v

。t2–c、r'3=e(t3,g2)s
x
.e(h,w)-sα-sβ
.e(h,g2)-sδ1-sδ2
.(e(t3,w)/e(g1,g2))c、r'4=t
1sx
.u-sδ1
、r'5=t
2sx
.v-sδ2
。此外,协作器可以计算质询c'=h(m,t1,t2,t3,r'1,r'2,r'3,r'4,r'5),并且可以接受当且仅当c等于c'时的签名。因此,协作器在接受消息m之前使用组公钥(gpk)验证每个数字签名σ。
[0063]
在808,方法800包括确定是否检测到争议。例如,如果协作器确定车辆签名无效,例如,如果c不等于c',则可以检测到争议。作为另一示例,如果第一车辆试图基于传输的消息来识别另一参与者,则可以检测到争议。
[0064]
如果方法800确定在808没有检测到争议,则方法800继续到810并且包括不确定车辆身份。例如,协作器可以不请求组管理器确定具有无效签名的车辆的身份,并且所有车辆可以保留在组中。此外,由于消息m被接受,因此协作器可以将m的内容合并到更新的全局机器学习模型中,又可以将所述全局机器学习模型分发到gv中的每个车辆。例如,更新的机器学习模型可以合并来自gv中每个车辆的详细信息,使得更新的机器学习模型相对于每个车辆的本地机器学习模型更准确。因此,可以提高每个车辆的自主车辆感知、路径规划和控制系统的准确性。方法800随后可结束。
[0065]
如果方法800确定在808处检测到争议,则方法800继续到812并且包括gm打开争议车辆的签名以确定争议车辆身份。例如,如果协作器确定来自车辆的签名的c不等于c',则协作器可以请求gm打开签名并确定车辆身份。此步骤可以提供可追踪性,从而可以追踪和
识别未经授权的车辆。为了打开签名以揭示对应车辆的身份,gm可以将以下内容作为输入:gpk=(g1,g2,h,u,v,w)、组管理器的私钥gmsk=(ξ1,ξ2)、消息m和签名σ=(t1,t2,t3,c,s
α
,s
β
,s
x
,s
δ1
,s
δ2
)。此外,gm可以使用在806给出的步骤验证σ在消息m上是有效的。如果签名σ有效,则可以通过将车辆的元素a恢复为a=t3/(t
ξ11
,t
ξ22
)d来追踪车辆的身份。gm可以遍历与计算的车辆私钥的元素a对应的用户索引。因此,gm可以确定对应车辆的身份。
[0066]
在814,方法800包括确定是否检测到未经授权的车辆。例如,基于对应车辆的身份,gm可以确定所述车辆是否未被授权加入cml网络。例如,如果对应车辆的身份不对应于授权车辆,则gm可以确定检测到未经授权的车辆。
[0067]
如果方法800确定在814未检测到未经授权的车辆,则方法800继续到816并且包括不从组中撤销车辆。例如,gm可以不向撤销机构(ra)报告未经授权的车辆,并且ra可以不将未经授权的车辆从组中移除。例如,gm可以确定对应车辆可以继续参与cml系统。
[0068]
如果方法800确定在814检测到未经授权的车辆,则方法800继续到818并且包括从组中撤销未经授权的车辆。例如,gm可以通知撤销机构:车辆的子集{1,2,3,

r}未经授权并可以从组中撤销。首先,撤销机构(ra)发布撤销列表(rl),所述rl包含所有已撤销车辆的私钥gsk。接下来,将rl提供给系统中的所有车辆和协作器,以获取更新的组公钥c。协作器和组中的每个车辆都可以计算y=∏
ri
=1(γ+x i
)∈z*
p
,以计算g'1=g
11/y
、g'2=g
21/y
、w'=(g'2)
γ
。因此,新公钥变为gpk=(g'1,g'2,h,u,v,w')h。例如,旧私钥为gsk=(a,x)的未撤销成员可以计算更新的私钥(a',x),其中a'=(g'1)
1/(γ+x)
。因此,未经授权的车辆可能不会计算新的公钥,因此可能不会向协作器发送消息。此外,在一些示例中,当车辆请求离开组安全方案时,ra可以将车辆添加到撤销列表。例如,由于地理位置的变化,车辆可能会请求离开组安全方案,并且ra可能会将所述车辆添加到撤销列表中。方法800随后可结束。
[0069]
以此方式,组管理器可以为一组车辆建立组安全方案,协作器可以验证数字签名并编译本地机器学习模型以更新全局机器学习模型,组管理器可以解决争议,撤销机构可以移除未经授权的车辆,并且协作器可以经由cml网络分发更新的全局机器学习模型。总体而言,增加了cml网络的系统隐私和安全性。
[0070]
接下来,图9包括方法900的流程图:操作个别车辆以使用组安全方案参与cml网络以便发送用数字签名进行签名的本地机器学习模型,并接收更新的机器学习模型以便提高自主操作的准确性。例如,更新的机器学习模型可以基于来自车辆和参与cml网络的其它协作车辆的数据进行更新。具体来说,关于图1的车辆102和图2的车载计算系统109描述方法900,所述车载计算系统包括自主车辆感知、路径规划和控制系统261。此外,车辆可以加入具有组安全方案的cml网络,例如关于图7所描述。用于执行方法900的指令可以存储在车载计算系统的非暂时性存储器(例如,图2中所示的存储装置208)中。因此,可由处理器(例如,图2的操作系统处理器214)基于所存储的指令并且结合从车辆系统的传感器,例如上文参考图2所描述的传感器接收的信号来执行方法900。
[0071]
在902,方法900包括从组安全方案的gm接收gsk和gpk。例如,如关于方法800的802所述,gm可以基于组中车辆的详细信息建立组签名方案,包括生成组的gpk和车辆的gsk。gm可以向车辆提供gsk和gpk,以便车辆可以为消息生成不同的数字签名。
[0072]
在904,方法900包括基于传感器数据训练本地机器学习模型。例如,车辆包括自主车辆感知、路径规划和控制系统,其可以基于本地机器学习模型控制至少一个车辆系统。使
用本领域已知的机器学习技术,在车辆操作期间基于车辆传感器数据更新机器学习模型以增加机器学习模型的准确性。例如,可以将来自车辆传感器的数据与训练数据进行比较,以便更新本地机器学习模型的一个或多个系数。
[0073]
在906,方法900包括确定是否请求cml网络更新。例如,基于车辆设置和cml网络设置,车辆可以周期性地向车辆组的cm提供本地机器学习模型的系数和参数。在906,方法确定是否请求此种定期更新。
[0074]
如果方法900确定在906没有请求cml网络更新,则方法900继续到908并且包括不向cm发送用数字签名进行签名的更新模型。例如,所述方法可以不生成数字签名并向协作器发送具有本地机器学习模型的系数和参数的消息。然后方法900可以返回到904并且继续基于传感器数据、连接的自主车辆子系统输出等来训练本地机器学习模型。
[0075]
如果方法900确定在906请求cml网络更新,则方法900继续到910并且包括基于gpk和gsk生成数字签名。例如,使用关于方法800的804描述的数学过程,车载计算系统基于gsk和gpk计算不同的数字签名σ。如关于方法800的804所描述,数学过程将gsk和gpk作为输入,并计算不同的数字签名作为输出,其可用于对到达协作器的消息进行签名。例如,数字签名可由协作器验证,并且可由组管理器追踪。
[0076]
在912,方法900包括用数字签名对消息进行签名并通过无线连接将消息传输至协作器。例如,车载计算系统可以包括外部装置接口(例如,图2中所示的外部装置接口212),用于将消息无线传输至自主车辆云(例如,图2的自主车辆云256)。例如,自主车辆云是托管协作器、组管理器和撤销机构的远程服务器。例如,车载计算系统可以使用数字签名对包括本地机器学习模型的系数和参数的消息进行签名,并通过无线连接将签名后的消息传输至自主车辆云。因此,协作器可以接收到包括本地机器学习模型的系数和参数的消息。此外,协作器可以验证签名,并基于来自车辆组中的多个车辆的消息来更新全局机器学习模型,以增加全局机器学习模型的准确性。
[0077]
在914,方法900包括从协作器接收用于更新的机器学习模型的系数和参数。例如,协作器可以向车辆发送更新的机器学习模型,更新的机器学习模型基于全局机器学习模型,全局机器学习模型基于来自车辆组中的车辆的共享本地机器学习模型更新。车辆可以通过与外部装置接口的无线连接接收更新的机器学习模型。
[0078]
在916,方法900包括基于从协作器接收的更新的机器学习模型来调整车辆操作。例如,可以基于更新的机器学习模型更新本地机器学习模型,从而更新本地机器学习模型的系数和参数。因此,本地机器学习模型可以在自主操作期间以不同方式控制车辆系统。因此,可以通过使用cml方法更新本地机器学习模型来更新自主车辆感知、路径规划和控制系统。更新本地机器学习模型可以提高自主车辆感知、路径规划和控制系统的准确性,从而提高客户满意度。方法900随后可结束。
[0079]
以此方式,自主车辆可以参与cml方法以提高车辆的本地机器学习模型的准确性。例如,车辆可以将本地机器学习模型的系数和参数发送到云服务器,云服务器可以编译从来自多个车辆的多个本地机器学习模型产生的系数,以便更新全局机器学习模型。云服务器可以将更新的全局机器学习模型传输至车辆以增加本地机器学习模型的准确性。此外,可以制定组签名方案以验证cml网络中的每个车辆,并识别未经授权的车辆。例如,车辆可以配备gpk和gsk,并且可以生成不同的数字签名来对包括本地机器学习模型的系数和参数
的消息进行签名。通过制定组签名方案,可以增强网络安全性,同时维护车辆隐私。例如,在组签名方案下,除非检测到争议,否则每个车辆都可能是匿名的,同时可能会检测到未经授权的车辆。此外,通过采用cml方法,可以提高每个车辆的本地机器学习模型的准确性,这可以提高客户满意度。
[0080]
传输用数字签名进行签名的消息的技术效果是提高本地机器学习模型的准确性并提高系统安全性,所述消息包括本地机器学习模型的系数和参数并且所述数字签名基于组签名方案。
[0081]
例如,一种方法包括:在车辆中基于第一密钥和第二密钥生成数字签名,第一密钥和第二密钥均从组管理器接收;以及将用数字签名进行签名的消息传输至协作器,所述消息包括车辆的本地机器学习模型的系数。在前述示例中,所述方法另外或可选地还包括:从所述协作器接收更新的机器学习模型,并基于所述更新的机器学习模型调整所述本地机器学习模型。在前述示例中的一者或两者中,另外或可选地,基于所述更新的机器学习模型调整所述本地机器学习模型包括调整所述本地机器学习模型的至少一个系数。在前述示例中的任何或全部示例中,另外或可选地,所述更新的机器学习模型由所述协作器基于来自所述车辆和多个协作车辆的数据进行更新。在前述示例中的任何或全部示例中,另外或可选地,所述第一密钥是组公钥,所述组公钥由所述组管理器分发给多个协作车辆和所述协作器中的每一个。在前述示例中的任何或全部示例中,另外或可选地,所述第二密钥是车辆秘密密钥,所述车辆秘密密钥为所述车辆所独有并且由所述组管理器分发给所述车辆。在前述示例中的任何或全部示例中,另外或可选地,所述组管理器是通信地耦合至所述车辆、所述多个协作车辆和所述协作器中的每一者的计算系统。在前述示例中的任何或全部示例中,另外或可选地,所述车辆的所述本地机器学习模型被配置为在没有来自所述车辆用户的输入的情况下至少部分地控制所述车辆的车辆系统的操作。在前述示例中的任何或全部示例中,另外或可选地,所述车辆系统是转向系统、制动系统、加速系统、传动系统、物体检测系统、巡航控制系统和气候控制系统中的一者。
[0082]
作为另一示例,所述方法包括:在车辆处接收来自组管理器的车辆秘密密钥和组公钥;在所述车辆处基于来自所述车辆的至少一个传感器的传感器数据来调整所述车辆的本地机器学习模型的系数;在所述车辆处基于所述车辆秘密密钥和所述组公钥生成数字签名;经由来自所述车辆的用所述数字签名进行签名的消息将所述本地机器学习模型的所述系数传输至协作器;在所述车辆处从所述协作器接收更新的机器学习模型的系数;以及基于所述更新的机器学习模型调整所述车辆的车辆系统。在前述示例中,另外或可选地,所述组管理器和所述协作器中的每一者是所述车辆外部的处理器,所述组管理器和所述协作器中每一者通信地耦合至所述车辆,并且所述组管理器通信地耦合至所述协作器。在前述示例中的一者或两者中,另外或可选地,来自所述协作器的所述更新的机器学习模型部分地基于所述本地机器学习模型的所述系数。在前述示例中的任何或全部示例中,另外或可选地,所述本地机器学习模型是经过训练以自主控制所述车辆的所述车辆系统的机器学习算法。在前述示例中的任何或全部示例中,所述方法另外或可选地还包括:在所述车辆处从所述组管理器接收第二车辆秘密密钥和第二组公钥;在所述车辆处基于来自所述车辆的至少一个传感器的传感器数据来调整所述车辆的第二本地机器学习模型的系数;在所述车辆处基于所述第二车辆秘密密钥和所述第二组公钥生成第二数字签名;经由来自所述车辆的用
所述第二数字签名进行签名的消息将所述第二本地机器学习模型的所述系数传输至所述协作器;在所述车辆处从所述协作器接收第二更新的机器学习模型的系数;以及基于所述第二更新的机器学习模型调整所述车辆的第二车辆系统。
[0083]
作为又一示例,一种系统包括:车辆的车辆系统;自主车辆感知、路径规划和控制系统,其包括本地机器学习模型,所述本地机器学习模型对应于所述车辆系统并被配置为至少部分地控制所述车辆系统;以及控制器,其将可执行指令存储在非暂时性存储器中,所述指令在被执行时使所述控制器:经由无线连接从远程服务器接收组公钥和车辆秘密密钥;基于来自所述车辆的至少一个传感器的数据更新所述本地机器学习模型的系数;基于所述组公钥和所述车辆秘密密钥生成数字签名;将用所述数字签名进行签名的消息传输至所述远程服务器,所述消息包括所述本地机器学习模型的所述系数;以及从所述远程服务器接收更新的机器学习模型。在前述示例中,另外或可选地,所述远程服务器包括组管理器、协作器和撤销机构。在前述示例中的一者或两者中,另外或可选地,所述车辆系统是制动系统、加速系统、转向系统、巡航控制系统、气候控制系统、物体检测系统、照明系统和传动系统中的一者。在前述示例中的任何或全部示例中,另外或可选地,所述控制器包括存储在非暂时性存储器中的另外的指令,所述指令在被执行时使所述控制器:基于来自所述远程服务器的所述更新的机器学习模型调整所述本地机器学习模型。在前述示例中的任何或全部示例中,另外或可选地,基于bbs组签名方案、acjt组签名方案、cg组签名方案和bs组签名方案中的一者生成数字签名。在前述示例中的任何或全部示例中,另外或可选地,所述自主车辆感知、路径规划和控制系统用来自用户的输入至少部分地控制车辆操作。
[0084]
在另一表示中,一种协作机器学习系统包括:第一车辆,所述第一车辆包括第一车辆控制器和第一本地机器学习模型;第二车辆,所述第二车辆包括第二车辆控制器和第二本地机器学习模型;自主车辆云,所述自主车辆云包括组管理器控制器、协作器控制器和撤销机构控制器,所述组管理器控制器、所述协作器控制器和所述撤销机构控制器中的每一者经由无线连接通信地耦合至所述第一车辆控制器和所述第二车辆控制器中的每一者,所述组管理器控制器通信地耦合至所述协作器控制器和所述撤销机构控制器中的每一者,并且所述组管理器控制器包括存储在非暂时性存储器中的指令,这些指令在被执行时使所述组管理器控制器:生成组管理器秘密密钥和组公钥;为所述第一车辆和所述第二车辆的特性中的每一者分配车辆秘密密钥;以及响应于检测到争议,基于数字签名确定所述第一车辆和所述第二车辆中的一者的身份。在前述示例中,另外或可选地,其中所述第一车辆控制器包括存储在非暂时性存储器中的指令,所述指令在被执行时使所述第一车辆控制器:从所述组管理器控制器接收车辆秘密密钥和所述组公钥;基于来自所述第一车辆的至少一个传感器的传感器数据调整所述第一车辆的本地机器学习模型的系数;基于所述车辆秘密密钥和所述组公钥为所述第一车辆生成数字签名;经由用所述第一车辆的所述数字签名进行签名的消息将所述本地机器学习模型的所述系数传输至所述协作器控制器;从所述协作器控制器接收更新的机器学习模型的系数;以及基于所述更新的机器学习模型调整所述第一车辆的车辆系统。在前述示例中的一者或两者中,另外或可选地,所述第二车辆控制器包括存储在非暂时性存储器中的指令,所述指令在被执行时使所述第二车辆控制器:从所述组管理器控制器接收车辆秘密密钥和所述组公钥;基于来自所述第二车辆的至少一个传感器的传感器数据调整所述第二车辆的本地机器学习模型的系数;基于所述车辆秘密密钥和所
述组公钥为所述第二车辆生成数字签名;经由用所述第二车辆的所述数字签名进行签名的消息将所述本地机器学习模型的所述系数传输至所述协作器控制器;从所述协作器控制器接收更新的机器学习模型的系数;以及基于所述更新的机器学习模型调整所述第二车辆的车辆系统。在前述示例中的任何或全部示例中,另外或可选地,所述协作器控制器包括存储在非暂时性存储器中的指令,所述指令当被执行时使所述协作器控制器:接收所述第一车辆的本地机器学习模型和所述第二车辆的本地机器学习模型;基于所述第一车辆的所述本地机器学习模型和所述第二车辆的本地机器学习模型更新全局机器学习模型;以及将所述全局机器学习模型传输至所述第一车辆和所述第二车辆中的每一个。在前述示例中的任何或全部示例中,另外或可选地,撤销机构控制器包括存储在非暂时性存储器中的指令,所述指令当被执行时使所述撤销机构控制器:响应于未经授权的车辆,将所述未经授权的车辆添加到撤销列表;确定新的组公钥;以及将所述新的组公钥分发给所述第一车辆、所述第二车辆、所述组管理器和所述控制器中的每一者。
[0085]
在另一表示中,一种方法包括:在远程服务器的组管理器处生成组管理器秘密密钥和组公钥;在所述远程服务器的所述组管理器处,将第一车辆秘密密钥分配给所述第一车辆并且将第二车辆秘密密钥分配给所述第二车辆;在所述远程服务器的所述组管理器处,将所述第一车辆秘密密钥和所述组公钥传输至所述第一车辆;在所述远程服务器的所述组管理器处,将所述第二车辆秘密密钥和所述组公钥传输至所述第二车辆;以及响应于检测到争议,在所述远程服务器的所述组管理器处,基于数字签名和所述组管理器秘密密钥确定所述第一车辆和所述第二车辆中的一者的身份。
[0086]
在另一表示中,一种方法包括:在远程服务器的协作器处接收第一车辆的本地机器学习模型和第二车辆的本地机器学习模型;在所述远程服务器的所述协作器处验证来自所述第一车辆的数字签名和来自所述第二车辆的数字签名;在所述远程服务器的所述协作器处,基于所述第一车辆的所述本地机器学习模型和所述第二车辆的所述本地机器学习模型更新全局机器学习模型;以及在所述远程服务器的所述协作器处,将所述全局机器学习模型传输至所述第一车辆和所述第二车辆中的每一者。
[0087]
在另一表示中,一种方法包括:响应于未经授权的车辆,将所述未经授权的车辆添加到撤销列表;将所述撤销列表分发给组管理器、协作器和一组车辆中的每个车辆中的每一者;确定新的组公钥;以及将所述新的组公钥分发给所述第一车辆、所述第二车辆、所述组管理器和所述控制器中的每一者。在前述示例中,另外或可选地,所述一组车辆中的每个车辆包括被配置为自主地控制车辆系统的本地机器学习模型。在前述示例中的一者或两者中,另外或可选地,所述撤销机构、所述协作器和所述组管理器中的每一者是远程服务器的组件,所述远程服务器通信地耦合至所述第一车辆和所述第二车辆中的每一者。在前述示例中的任何或全部示例中,另外或可选地,不将所述新的组公钥传输至所述未经授权的车辆。
[0088]
已经出于说明和描述的目的呈现对实施方案的描述。可鉴于以上描述来执行对实施方案的合适的修改和改变,或者可通过实践方法来获取所述合适的修改和改变。例如,除非另外指出,否则可通过合适的装置和/或装置的组合来执行所描述的方法中的一者或多者,所述装置例如为参考图1所描述的远程信息处理单元30。所述方法可通过使用一个或多个逻辑装置(例如,处理器)与一个或多个额外硬件元件组合地执行所存储的指令来执行,
所述一个或多个额外硬件元件例如存储装置、存储器、硬件网络接口/天线、开关、致动器、时钟电路等。还可按照除了在本技术中描述的次序之外的各种次序、并行地和/或同时地执行所描述的方法和相关联的动作。所描述的系统在本质上是示例性的,并且可包括额外元件和/或省略元件。本公开的主题包括所公开的各种系统和配置与其它特征、功能和/或性质的所有新颖和非明显的组合和子组合。
[0089]
如本技术中所使用,以单数形式叙述并且前面有词语“一个”或“一种”的元件或步骤应理解为不排除多个所述元件或步骤,除非规定此类排除。此外,对本公开的“一个实施方案”或“一个示例”的提及不希望被解释为排除也并入有所叙述的特征的附加实施方案的存在。术语“第一”、“第二”和“第三”等仅用作标记,并且无意对它们的对象强加数值要求或特定位置次序。所附权利要求特别指出来自以上公开内容的被视为新颖且非明显的主题。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1