分布式车辆授权操作的制作方法

文档序号:24346436发布日期:2021-03-19 12:30阅读:48来源:国知局
分布式车辆授权操作的制作方法
本公开总体上涉及车辆用户授权。
背景技术
:为了向不同用户提供访问,可以在用户之间物理地传送车辆访问装置,例如钥匙、钥匙扣等。另外,可以基于各种条件而限制各种用户对车辆的访问。技术实现要素:一种系统包括计算机,所述计算机包括处理器和存储器,所述存储器存储指令,所述指令可由所述处理器执行以存储电子账本,所述电子账本指定实体对车辆执行的授权操作。所述指令还包括用于接收请求(包括作出所述请求的实体的实体标识符)以执行所请求的操作的指令。所述指令还包括用于查询电子账本以确定所请求的操作是授权操作的指令。所述指令还包括用于基于所述授权操作来致动车辆的指令。所述电子账本是至少在所述车辆与所述实体之间共享的分布式电子账本。致动所述车辆包括将所述车辆操作到所述实体的位置。所述指令还可以包括用于基于所述实体标识符向用户输出消息的指令。所述指令还可以包括基于所述车辆的位置来发起所述请求的指令。所述指令还可以包括基于从车辆通信总线上的装置接收的数据来发起所述请求的指令。所述指令还可以包括用于在所述电子账本中记录对由所述实体进行的所述请求的响应包括所述授权和对所述车辆的致动以执行所述授权操作的记录的指令。所述指令还可以包括用于基于针对所述实体记录在电子账本中的一个或多个先前操作确定所请求的操作未被授权的指令。所述指令还可以包括用于基于所请求的操作不满足存储在电子装置中的一个或多个参数来确定所述授权操作未被授权的指令。所述系统包括主装置。确定所请求的操作是所述授权操作包括除了车辆计算机和实体计算机之外还查询存储所述电子账本的主装置。所述系统包括主装置。所述指令还可以包括用于从主装置接收针对所述实体的所述授权操作并将针对所述实体的所述授权操作存储到所述电子账本的指令。一种方法包括存储电子账本,所述电子账本指定实体对车辆执行的授权操作。所述方法还包括接收请求,包括作出所述请求的实体的实体标识符,以执行所请求的操作。所述方法还包括查询电子账本以确定所请求的操作是授权操作。所述方法还包括基于所述授权操作致动所述车辆。所述电子账本是至少在所述车辆与所述实体之间共享的分布式电子账本。致动所述车辆包括将所述车辆操作到所述实体的位置。所述方法还可以包括基于所述实体标识符向用户输出消息。所述方法还可以包括基于所述车辆的位置来发起所述请求。所述方法还可以包括基于从车辆通信总线上的装置接收的数据来发起所述请求。所述方法还可以包括在所述电子账本中记录对由所述实体进行的所述请求的响应包括所述授权和对所述车辆的致动以执行所述授权操作的记录。所述方法还可以包括基于针对所述实体记录在电子账本中的一个或多个先前操作确定所请求的操作未被授权。所述方法还可以包括基于所请求的操作不满足存储在电子装置中的一个或多个参数来确定所述授权操作未被授权。确定所请求的操作是所述授权操作包括除了车辆计算机和实体计算机之外还查询存储所述电子账本的主装置。所述方法还可以包括从主装置接收针对所述实体的所述授权操作并将针对所述实体的所述授权操作存储到所述电子账本。本文还公开了一种计算装置,所述计算装置被编程为执行上述方法步骤中的任一者。本文还公开了一种计算机程序产品,所述计算机程序产品包括计算机可读介质,所述计算机可读介质存储指令,所述指令可由计算机处理器执行,以执行上述方法步骤中的任一者。附图说明图1a是示出用于授权实体对车辆执行的所请求操作的示例性系统的框图。图1b是示出示例性区块链网络的框图。图2是区块链账本的示例。图3是用于授权所请求操作的示例性过程的流程图。具体实施方式多个计算机110、140生成并维护用于管理车辆105的授权操作的区块链账本150。多个计算机110、140中的每一个通信地耦接在区块链网络111中。例如,计算机110、140可以包括在车辆105外部的计算装置140中和车辆计算机110中。区块链网络111包括作为对等网络或具有监控计算机的对等网络的分布式计算机110、140。被授权参与区块链网络111的计算机110、140在区块链账本150中列出。在本公开中,在区块链网络111的上下文中的术语“网络”是指由计算机110、140形成的网络,即,区块链网络111是指形成区块链的计算机110、140,包括到计算机110、140彼此的链接。另一方面,在彼此通信的装置(例如,ecu和/或经由车辆网络和/或广域网135通信的装置)的上下文中的“网络”是指包括常规的联网硬件、媒体、协议等的物理有线和/或无线网络。每个计算机110、140可以包括编程以提供作为计算机参与区块链维护组的工作量证明(proofofwork)。工作量证明是共识算法的一个示例,所述共识算法用于实现在多个实体之间共享的数据的一致性。工作量证明是将执行通常需要大量计算资源(即,大量处理能力和/或大量处理时间)的计算作为进行计算任务,例如执行交易(例如,向区块链账本添加区块)的先决条件的要求。作为示例,工作量证明可以是识别数量的要求,所述数量在被添加到数据区块时修改数据,使得数据的哈希具有特定质量,所述数量诸如前导零的数量。提供工作量证明可以包括对来自区块链维护组的请求作出响应。所述请求可以包括例如要修改数据区块、使用哈希函数生成数据区块的哈希以及从工作量证明获取特定结果。另外或替代地,执行工作量证明可以包括解决需要大量计算资源的其他类型的数字谜题。实体要对车辆105执行的授权操作可以作为数据区块存储在区块链账本150中。区块链账本150是电子账本的一个示例。电子账本是分布式数据库。在该上下文中的“分布式”意味着数据库的副本由访问电子账本的多个实体维护,例如,验证账本上的数据、将数据存储到账本等。针对实体的授权操作由车辆105的所有者指定。针对实体的授权操作可以进一步指定一个或多个参数。参数的非限制性示例包括实体的位置、时间范围、传感器数据、令牌阈值(如下所述)、路线等。例如,车辆105所有者可以指定实体(例如,用户)可以在特定时间范围(例如,在上午9点至下午5点之间)内访问车辆。作为另一示例,车辆105所有者可以授权车辆105例如在特定时间范围内行驶到特定实体的位置。作为又一个示例,车辆105所有者可以指定实体(例如,用户)可以操作车辆105的授权路线,例如,禁止实体在高速公路上操作车辆105。存储在区块链账本150内的数据区块通过哈希被链接成链。区块链账本150是在形成区块链网络111的多个计算机110、140中的每一个中维护的电子账本,每个计算机基于数据区块的哈希的生成来存储共享数据。本上下文中的哈希是具有固定位数的数据的单向加密(即,执行哈希函数的结果)。哈希加密的示例是sha-256。哈希(即,哈希函数的结果)通过识别数据区块在存储装置(数字存储器)中的位置(例如通过使用将哈希映射到相应存储位置的关联表)来提供至数据区块的链接。关联表提供了一种用于将哈希(也可以被称为哈希密钥)与指定车辆或固定位置中的物理存储装置的地址相关联的机制。数据区块的哈希进一步提供了用于验证哈希链接到的数据的代码。在检索到数据区块后,计算机可以重新计算数据区块的哈希,并将所得哈希与提供链接的哈希进行比较。在重新计算的哈希与链接哈希匹配的情况下,计算机可以确定数据区块未改变。相反地,与链接哈希不匹配的重新计算的哈希指示数据区块或哈希已经改变,例如通过损坏或篡改。提供到数据区块的链接的哈希也可以被称为密钥或哈希密钥。下面参考图2讨论区块链账本150的示例性结构。图1a及图1b是包括托管在至少一个计算装置140以及车辆计算机110上的区块链账本150的实例的示例性系统100的框图。计算机110、140被编程为存储电子账本,例如区块链账本150,所述电子账本指定实体对车辆105执行的授权操作。计算机110、140被进一步编程为接收请求,包括作出请求的实体的实体标识符,以执行所请求的操作。计算机110、140被进一步编程为查询电子账本(例如,区块链账本150)以确定所请求的操作是授权操作,并且基于授权操作来致动车辆105。所述电子账本是至少在所述车辆105与所述实体之间共享的分布式电子账本。车辆计算机110可以例如经由网络135通信地耦接到在车辆计算机110外部的一个或多个计算装置140。一个或多个计算装置140可以请求车辆计算机110执行操作,并且车辆计算机110可以在例如来自用户的授权下执行操作。在这些情况下,用户可以更改存储在车辆计算机110的存储器中的设置和/或偏好以授权未授权操作。有利地,电子账本向车辆计算机110提供车辆105中的用户不能改变的授权操作,这防止个人用户篡改存储在车辆计算机110的存储器中的设置和/或偏好以授权未授权操作。车辆105包括车辆计算机110、传感器115、致动器120、车辆部件125和车辆通信总线130。经由网络135,通信总线130允许车辆计算机110与其他计算装置140通信。车辆计算机110包括诸如已知的处理器和存储器。存储器包括一种或多种形式的计算机可读介质,并且存储可由车辆计算机110执行以用于执行包括如本文所公开的各种操作的指令。车辆计算机110可以自主模式、半自主模式或非自主(或手动)模式来操作车辆105。出于本公开的目的,自主模式被定义为其中车辆105的推进、制动和转向中的每一者都由车辆计算机110控制的模式;在半自主模式中,车辆计算机110控制车辆105的推进、制动和转向中的一者或两者;在非自主模式中,人类操作员控制车辆105的推进、制动和转向中的每一者。车辆计算机110可以包括用于操作车辆105制动、推进(例如,通过控制内燃发动机、电动马达、混合动力发动机等中的一者或多者来控制车辆105的加速度)、转向、变速器、气候控制、内部和/或外部灯等中的一者或多者以及用于确定车辆计算机110(而非人类操作员)是否以及何时控制此类操作的编程。另外,车辆计算机110可以被编程为确定人类操作员是否以及何时控制此类操作。车辆计算机110可以包括一个以上处理器或例如经由如下面进一步描述的车辆通信网络135(诸如,通信总线130)通信地耦接到所述一个以上处理器,所述一个以上处理器例如包括在车辆105中所包括的用于监测和/或控制各种车辆部件125(例如变速器控制器、制动控制器、转向控制器等)的电子控制器单元(ecu)等中。车辆计算机110通常布置用于在车辆通信网络上进行通信,所述车辆通信网络可以包括车辆105中的总线,诸如控制器局域网(can)等,和/或其他有线和/或无线机制。经由车辆通信网络135,车辆计算机110可向车辆105中的各种装置(例如,传感器115、致动器120、ecu等)传输消息和/或从所述各种装置接收消息(例如,can消息)。替代地或另外,在车辆计算机110实际上包括多个装置的情况下,车辆通信网络135可用于在本公开中表示为车辆计算机110的装置之间的通信。此外,如下文所提及,各种控制器和/或传感器115可以经由车辆通信网络135向车辆计算机110提供数据。车辆105传感器115可以包括诸如已知的用于向车辆计算机110提供数据的各种装置。例如,传感器115可以包括设置在车辆105的顶部上、在车辆105的前挡风玻璃后面、在车辆105周围等的一个或多个光探测和测距(lidar)传感器115等,所述传感器提供车辆105周围的对象的相对位置、大小和形状。作为另一示例,固定到车辆105保险杠的一个或多个雷达传感器115可以提供数据来提供对象、第二车辆105等相对于车辆105的位置的位置。替代地或另外,传感器115还可例如包括一个或多个相机传感器115(例如,前视、侧视等),所述相机传感器提供来自车辆105周围的区域的图像。在本公开的上下文中,对象是可通过可由传感器115检测到的物理现象(例如,光或其他电磁波或声音等)来表示的物理(即,客观存在)物品。因此,车辆105以及包括以下讨论的其他物品都落在本文的“对象”的定义内。车辆105致动器120经由电路、芯片或可根据如已知的适当控制信号来致动各种车辆子系统的其他电子和/或机械部件来实现。致动器120可以用于控制部件125,包括车辆105的制动、加速和转向。在本公开的上下文中,车辆部件125是适于执行机械或机电功能或操作(诸如使车辆105移动、使车辆105减速或停止、使车辆105转向等)的一个或多个硬件部件。部件125的非限制性示例包括推进部件(其包括例如内燃发动机和/或电动马达等)、变速器部件、转向部件(例如,其可包括方向盘、转向齿条等中的一者或多者)、制动部件(如下所述)、驻车辅助部件、自适应巡航控制部件、自适应转向部件、可移动座椅等。另外,车辆计算机110可被配置用于经由车辆对车辆通信总线130或接口与车辆105外部的装置通信,例如,通过车辆对车辆(v2v)或车辆对基础设施(v2x)无线通信与另一车辆和/或其他计算机140(通常经由直接射频通信)通信。通信总线130可以包括车辆105的计算机110可通过其进行通信的一种或多种机制,包括无线(例如,蜂窝、无线、卫星、微波和射频)通信机制的任何期望组合以及任何期望网络拓扑(或当利用多种通信机制时的多种拓扑)。经由通信总线130提供的示例性通信包括提供数据通信服务的蜂窝、蓝牙、ieee802.11、专用短程通信(dsrc)和/或包括互联网的广域网(wan)。网络135表示车辆计算机110可以通过其与远程装置(包括车辆105外部的计算机140)进行通信的一种或多种机制。因此,网络135可以是各种有线或无线通信机制中的一者或多者,包括有线(例如,电缆和光纤)和/或无线(例如,蜂窝、无线、卫星、微波和射频)通信机制的任何期望的组合以及任何期望的网络拓扑(或当利用多种通信机制时的多种拓扑)。示例性通信网络包括提供数据通信服务的无线通信网络(例如,使用低功耗(ble)、ieee802.11、车辆对车辆(v2v)(诸如专用短程通信(dsrc))等)、局域网(lan)和/或包括因特网的广域网(wan)。区块链网络111(如图1b所示)包括多个计算机110、140,即,在对等网络中,其中对等网络中的每个计算机110、140包括到区块链网络111中的其他计算机110、140的链接。区块链网络111中的计算机110、140可以由例如车辆105所有者、车辆105制造商等指定,并且可以记录在区块链账本150中。区块链账本150是分布式区块链账本。也就是说,每个计算机110、140例如在存储器中存储区块链账本150的一个副本。计算机110、140可以例如从其他计算机110、140接收数据区块并且可以将数据区块上传到区块链账本150的其相应副本,即,将相应数据区块存储在其相应区块链账本150中的相应存储位置中,使得每个数据区块链接到一个相应的先前数据区块。每个数据区块可以指定实体对车辆105执行的授权操作。在本上下文中,“实体”是除车辆105所有者之外的例如经由计算装置140请求执行对车辆105的操作的一个或多个用户。可以基于请求生成数据区块,所述请求可以例如由实体维护的计算机140(例如,实体计算机)提交。每个计算机110、140可以将其存储的区块链数据(即,链接的数据区块)与其他计算机110、140存储的区块链账本150的版本进行比较以验证数据区块。例如,每个计算机110、140可以基于由另一计算机110、140存储的区块链的相应数据区块中存储的数据来生成哈希。在由一个计算机110、140生成的哈希与由其他计算机110、140为相应数据区块存储的哈希相匹配的情况下,一个计算机110、140确定数据区块被验证。多个计算机110、140维护区块链账本150。也就是说,多个计算机110、140可以不时地接收将计算机添加到多个计算机110、140的请求。计算机可以是例如托管在车辆105外部的计算装置140上的计算机,所述计算机例如由实体维护。在本上下文中,“在车辆105外部”意味着计算机装置140未安装在车辆105上。也就是说,车辆105可以与计算装置140分开地移动。多个计算机110、140中的计算机评估请求,如下所述。在请求被批准的情况下,多个计算机110、140将计算机添加到多个计算机110、140,并且将数据区块添加到记录添加的区块链账本150。另外或替代地,多个计算机110、140可以接收一个实体执行对车辆105的所请求操作的请求。计算机110、140评估请求,如下所述。在请求被批准的情况下,多个计算机110、140将数据区块添加到记录授权的区块链账本150。每个计算机110、140存储区块链账本150的一个副本。可以经由通信网络135访问计算机110、140。计算机110、140可以与参与维护区块链账本150的实体相关联,例如,以验证区块链账本150中的数据、在区块链账本150上存储数据等。例如,计算机110、140可以托管在车辆计算机110和车辆105外部的计算装置140上。车辆105外部的计算装置140可以包括主装置和一个或多个实体计算机。主装置是包括已知的处理器和存储器的计算装置。主装置可以由例如车辆105的所有者维护。例如,主装置可以是便携式装置。便携式装置可以是可以在由人携带时使用的各种计算机中的任何一种,例如智能手机、平板电脑、个人数字助理、智能手表等。主装置存储区块链账本150的副本。主装置可以包括识别主装置的标识符。在该上下文中,“标识符”是对应于主装置的字母数字数据串。也就是说,标识符识别特定的主装置。主装置被编程为向区块链账本150提供授权操作。例如,主装置可以例如经由接口从车辆105所有者接收指示实体的授权操作的输入。然后,主装置可以将针对实体的授权操作和主装置的标识符传输到其他计算机110、140。在接收到传输时,多个计算机110、140基于标识符来评估传输。例如,区块链账本150可以存储授权标识符,所述授权标识符指定被授权为实体提供授权操作的装置。在主装置的标识符与存储在区块链账本150中的授权标识符匹配的情况下,多个计算机110、140授权传输并将针对实体的授权操作存储到区块链账本150。所述实体计算机为包括处理器和存储器的计算装置。所述实体计算机由所述实体维护。作为一个示例,实体计算机可以是便携式装置。便携式装置可以是可以在由人携带时使用的各种计算机中的任何一种,例如智能手机、平板电脑、个人数字助理、智能手表等。作为另一示例,实体计算机可保持在实体的位置处。实体计算机存储区块链账本150的副本。实体计算机可以包括识别实体的实体标识符。在该上下文中,“实体标识符”是对应于实体的字母数字数据串。也就是说,实体标识符识别特定实体。实体计算机可以被编程为发起执行对车辆105的操作的请求。操作是由车辆计算机110和/或车辆部件125执行的机械、电气或机电功能。所请求的操作的非限制性示例包括允许用户访问车辆105、在时间范围内将车辆105引导和/或操作到某一位置、将令牌(如下所述)传送到实体计算机等。实体计算机可以基于一个或多个参数来发起请求。例如,实体计算机可以基于车辆105的位置来发起请求。例如,实体计算机可以被编程为当车辆105在实体计算机的距离阈值内时发起请求。距离阈值可以是实体计算机可以与车辆计算机110通信的最大距离。距离阈值可以通过实证测试来确定,以确定实体计算机可以与车辆计算机110通信或由车辆105所有者指定的最大距离。另外或替代地,实体计算机可以基于从车辆通信总线130上的装置(例如,传感器115、服务器、远程计算机等)接收的数据来发起请求。例如,实体计算机可以基于来自一个或多个传感器115的传感器115数据来发起请求,所述传感器115数据指示例如车辆105的燃料液面、油位、轮胎压力等。作为另一示例,实体计算机可以基于从服务器接收的数据(例如,交通数据、天气数据等)来发起请求。车辆计算机110存储区块链账本150的副本。车辆计算机110被编程为例如经由网络135接收来自其他计算机140(例如,实体计算机和/或主装置)的请求。车辆计算机110可以被编程为基于请求和实体标识符向车辆105的用户输出消息。例如,该消息可以指示例如计算机110、140拒绝或授权所请求的操作(如下所述),车辆计算机110正在基于请求、实体的位置和针对实体的对应的授权操作、由实体计算机提供的信息(诸如到达实体的位置的时间、由实体完成的服务等)来执行授权操作。消息可以例如显示在车辆105中的显示器上和/或经由车辆105的扬声器输出。车辆计算机110可以被编程为在计算机110、140确定所请求的操作是授权操作(如下所述)时致动车辆105以执行该授权操作。例如,车辆计算机110被编程为基于授权操作来致动一个或多个车辆部件125。例如,车辆计算机110可以被编程为致动车辆105的一个或多个锁,以向实体提供或拒绝对车辆105的物理访问。作为另一示例,车辆计算机110可以被编程为致动制动、推进和转向中的一者或多者以例如将车辆105操作到实体的位置。在这种情况下,车辆计算机110可以操作车辆105以在时间范围(例如,营业时间、预约时间等)内到达实体的位置。作为又一示例,车辆计算机110可以被编程为致动导航系统,以例如沿着授权路线将车辆105引导到实体的位置等。车辆计算机110可以被编程为在区块链账本150中记录指示在执行授权操作时对实体的请求的响应的记录。所述响应可以包括指示授权和对车辆105的致动以执行授权操作的数据。例如,响应可以指示授权操作的完成。另外地或替代地,响应可以包括指示令牌从车辆计算机110到实体计算机的传送的数据。在本上下文中,“令牌”是表示对象的单位的数量的数据并且可在区块链上传送。该单位可以是例如货币单位例如0.01美分、0.1美分、1美分、虚拟货币(或其分支)单位等,对象的量例如原材料对象的大小或重量例如1克金或银、1英尺木材等。车辆计算机110可以例如在存储器中存储令牌,并且可以向一个或多个计算机140传输令牌。例如,所请求的操作可以包括在到达实体的位置时将多个令牌传送到实体计算机的请求。在这种示例中,车辆计算机110可以被编程为当所请求的令牌的数量低于令牌阈值时授权所请求的传送。令牌阈值是被授权从车辆计算机110传送到实体计算机的令牌的最大数量。令牌阈值由车辆105所有者例如经由主装置为实体指定,并且存储在区块链账本150中。在到达实体位置后,车辆计算机110可以将令牌传送到实体计算机,并且将对请求的响应(即,令牌的传送)记录到区块链账本150。计算机110、140被编程为投票接受或拒绝所请求的操作。投票结果可以基于多个计算机110、140中的计算机110、140中的大多数,即共识协议。作为一个示例,投票结果可以基于加权多数,即,权益证明,其中计算机110、140中的每一个都被分配权重。每个计算机110、140都可以被分配具有预定权重的投票(例如,由装置制造商存储在存储器中,或者对于售后装置,当售后装置被添加到区块链账本150时存储在存储器中)。权重可以例如基于与计算机110、140相关联的实体来预先确定。在这种示例中,与主装置相关联的计算装置140可以具有比与实体计算机相关联的计算装置140更高的预定权重。替代地,投票结果可以基于任何合适的共识算法,例如,燃烧证明、消逝时间证明、容量证明、活动证明等。计算机110、140可以评估所述请求并确定是接受还是拒绝请求,即,如何对请求进行投票。计算机110、140基于一个或多个标准来执行评估。第一标准可以是所请求的操作是否匹配存储在区块链账本150中的授权操作。例如,计算机110、140(例如,主装置、实体计算机和车辆计算机110)可以查询区块链账本150的相应副本,以确定所请求的操作是授权操作。例如,计算机110、140可以基于所请求的操作与存储在区块链账本150的每个副本中的授权操作匹配(即,满足一个授权操作的每个参数)来确定所请求的操作被授权。相反,计算机110、140可以基于所请求的操作与授权操作不匹配(即,不满足针对实体存储在区块链账本150中的一个或多个参数)来确定所请求的操作未被授权。作为另一示例,计算机110、140可以基于针对实体记录在区块链账本150中的一个或多个先前操作来确定所请求的操作未被授权。也就是说,计算机110、140可以将先前操作与所请求的操作进行比较,并且基于先前操作来确定所请求的操作是否被授权。例如,计算机110、140可以授权所请求的再次发生的操作,即,在重复的基础上发生的类似或相同的操作。作为另一示例,计算机110、140可以授权落在先前授权的操作的参数内的所请求的操作。另外或替代地,其他标准可以是实体计算机140是否提供了正确的工作量证明。例如,在工作量证明是识别在被添加到第一数据区块时生成第二数据区块(哈希函数为所述第二数据区块产生具有特定质量的哈希)的数量的情况下,计算机110、140可以确认结果。也就是说,计算机110、140可以向第一数据区块添加由实体计算机提供的数量以重新生成第二数据区块,然后将哈希函数应用于第二数据区块以确定所得哈希具有特定质量。在所得哈希具有特定质量的情况下,计算机110、140将会投票接受请求。另外或替代地,可以使用其他标准来评估请求以确定相对于授予所请求的授权是积极还是消极投票。例如,计算机110、140可以维护可以被授权的实体计算机的标识符列表。计算机110、140可以需要由请求访问的实体计算机供应的实体标识符出现在可以被授权的实体标识符列表上,并且仅接受来自供应这种实体标识符的实体计算机的请求。作为另一示例,作为供应工作量证明和/或授权实体标识符的补充或替代,实体计算机可能需要供应与由计算机110、140维护的数字密钥匹配或配对的数字密钥。在实体计算机提供数字密钥的情况下,计算机110、140可以接受请求。在不满足计算机110、140可接受的标准中的一者或多者的情况下,计算机110、140将会投票拒绝请求。图2是诸如可以用于区块链账本150的区块链200的示例。区块链200包括零数据区块202、第一数据区块206、第二数据区块210和第n数据区块214。所述区块被组织成链。零数据区块202位于链的第一起始端。第一数据区块206链接到零数据区块202。第二数据区块210链接到第一数据区块206。每个连续数据区块链接到前一数据区块。在链的第二端处的第n数据区块214链接到第(n-1)数据区块(未示出)。每个区块包括数据部分和链接部分,如表1所示。数据区块数据部分链接部分202203204206207208210211212214215216所述数据部分203、207、211、215包括要存储在数据区块中的数据。链接部分204、208、212、216包括与数据部分的链接,并且除零数据区块之外,包括与链中的前一数据区块的链接。例如,在第一数据区块206中,数据部分207存储数据。链接部分208包括提供与数据部分207的链接的链接“区块1数据链接”。链接部分208还包括提供与数据区块0的链接部分的链接的链接“反向链接到区块0”。图3是用于授权实体执行对车辆105的操作的请求的示例性过程300的图示。过程300在框305中开始。在框305中,计算机110、140从主装置接收针对实体的授权操作。例如,车辆105所有者可以例如经由接口将授权操作输入到主装置中,并且主装置可以例如经由区块链网络111将指示授权操作的数据传输到每个计算机110、140。每个授权操作指定实体标识符和一个或多个参数,如上所述。过程300在框310中继续。在框310中,计算机110、140确定是否批准指定授权操作的传输。例如,除了授权操作之外,主装置还可以例如在与授权操作相同或不同的传输中传输主装置的标识符。区块链账本150可以存储授权标识符,所述授权标识符指定被授权提供授权操作的装置。计算机110、140可以查询区块链账本150以确定主装置的标识符是否与授权标识符匹配。在主装置的标识符与授权标识符匹配的情况下,主装置被授权提供授权操作。相反,在主装置的标识符与授权标识符不匹配的情况下,主装置不被授权提供授权操作。在主装置被授权的情况下,计算机110、140将授权操作存储到区块链账本150,并且过程300在框315中继续。否则,计算机110、140拒绝所述授权操作,并且过程300返回到框305。在框315中,计算机110、140从实体(例如,实体计算机140)接收对车辆105执行所请求的操作的请求。例如,实体计算机140可以例如经由区块链网络111向每个计算机110、140传输请求。所请求的操作可以用于例如车辆105向用户提供访问、车辆105在时间范围内操作到实体的位置、车辆计算机110将令牌传送到实体计算机140等。每个所述请求包括所述实体的所述实体标识符和执行所请求的操作的所述请求。过程300在框320中继续。在框320中,计算机110、140进行投票以授权或拒绝所请求的操作。例如,计算机110、140可以查询区块链账本150,以基于实体标识符来确定所请求的操作是否匹配针对实体的授权操作,如上所述。在所请求的操作与授权操作匹配的情况下,计算机110、140投票授权所请求的操作。在所请求的操作与授权操作不匹配的情况下,即,不满足授权操作的一个或多个参数的情况下,计算机110、140投票拒绝所请求的操作。车辆计算机110从计算机110、140接收投票,然后基于授权所请求的操作的票数来确定所请求的操作是否被授权。投票的结果可以根据例如计算机110、140的多数票(即,共识协议)、每个计算机110、140被分配权重的加权多数票(即,权益证明)等来确定,如上所述。在所请求的操作被授权的情况下,过程300在框325中继续。否则,过程300结束。在框325中,车辆计算机110被编程为在计算机110、140授权所请求的操作时致动车辆105。例如,车辆计算机110可以被编程为执行所请求的操作。也就是说,车辆计算机110可被编程为致动一个或多个车辆部件125以执行所请求的操作。例如,车辆计算机110可以致动一个或多个车辆部件125以例如允许用户访问车辆105、操作车辆105和/或将车辆105引导到实体的位置等。过程300在框330中继续。在框330中,在执行所请求的操作时,车辆计算机110记录指示授权和对授权操作的致动的响应。也就是说,车辆计算机110验证所请求的执行的完成。然后,车辆计算机110可以将响应传输到其他计算机140。另外或替代地,车辆计算机110可以将一个或多个令牌传送到实体计算机140,如上所述。过程300在框335中继续。在框335中,修改区块链账本150。通常,每个计算机110、140修改存储在计算机110、140的存储器中的区块链账本150的相应副本。例如,每个计算机110、140可以将数据区块添加到区块链账本150的相应副本。所添加的数据区块可以包括数据部分,所述数据部分包括请求执行所请求的操作(所请求的操作被授权)的实体的实体标识符,以及来自车辆计算机110的响应。所述数据区块还可包括链接部分,所述链接部分包括与数据部分的链接,以及与被添加到区块链账本150的最新的前一区块的链接。在向区块链账本150添加数据区块之后,过程300结束。如本文所使用,副词“基本上”意指形状、结构、测量结果、数量、时间等因为材料、机加工、制造、数据传输、计算速度等的缺陷而可能偏离精确描述的几何形状、距离、测量结果、数量、时间等。一般来讲,所描述的计算系统和/或装置可采用许多计算机操作系统中的任一者,包括但绝不限于以下版本和/或变型:ford应用、applink/smartdevicelink中间件、microsoft操作系统、microsoft操作系统、unix操作系统(例如,由加州红木海岸的oraclecorporation发布的操作系统)、由纽约阿蒙克市的internationalbusinessmachines发布的aixunix操作系统、linux操作系统、由加州库比蒂诺的appleinc.发布的macosx和ios操作系统、由加拿大滑铁卢的blackberry,ltd.发布的blackberryos以及由google,inc.和开放手机联盟开发的android操作系统,或由qnxsoftwaresystems供应的car信息娱乐平台。计算装置的示例包括但不限于车载车辆计算机、计算机工作站、服务器、台式计算机、笔记本计算机、膝上型计算机或手持式计算机或者某一其他计算系统和/或装置。计算机和计算装置一般包括计算机可执行指令,其中所述指令可由一个或多个计算装置(诸如以上列出的那些)执行。计算机可执行指令可以由使用各种编程语言和/或技术创建的计算机程序编译或解译,所述编程语言和/或技术包括但不限于单独或组合的javatm、c、c++、matlab、simulink、stateflow、visualbasic、javascript、perl、html等。这些应用中的一些可以在虚拟机(诸如java虚拟机、dalvik虚拟机等)上编译和执行。通常,处理器(例如,微处理器)接收来自例如存储器、计算机可读介质等的指令,并执行这些指令,从而执行一个或多个过程,包括本文所述过程中的一者或多者。可使用各种计算机可读介质来存储和传输此类指令和其他数据。计算装置中的文件一般是存储在诸如存储介质、随机存取存储器等计算机可读介质上的数据集合。存储器可以包括计算机可读介质(也称为处理器可读介质),所述计算机可读介质包括参与提供可由计算机(例如,由计算机的处理器)读取的数据(例如,指令)的任何非暂时性(例如,有形)介质。此类介质可以采取许多形式,包括但不限于非易失性介质和易失性介质。非易失性介质可包括例如光盘或磁盘以及其他永久存储器。易失性介质可以包括例如通常构成主存储器的动态随机存取存储器(dram)。此类指令可以由一种或多种传输介质传输,所述一种或多种传输介质包括同轴电缆、铜线和光纤,包括构成耦接到ecu的处理器的系统总线的电线。计算机可读介质的常见形式包括例如软盘、软磁盘、硬盘、磁带、任何其他磁性介质、cd-rom、dvd、任何其他光学介质、穿孔卡、纸带、任何其他具有孔图案的物理介质、ram、prom、eprom、flash-eeprom、任何其他存储器芯片或盒式磁带、或计算机可从中读取的任何其他介质。数据库、数据存储库或本文所描述的其他数据存储装置可包括用于存储、访问和检索各种数据的各种机制,包括分层数据库、文件系统中的文件集、呈专用格式的应用数据库、关系型数据库管理系统(rdbms)等。每个此类数据存储装置通常包括在采用计算机操作系统(诸如以上所提及那些中的一种)的计算装置内,并且经由网络以各种方式中的任一种或多种来访问。文件系统可从计算机操作系统访问,并且可以包括以各种格式存储的文件。rdbms除了用于创建、存储、编辑和执行所存储的程序的语言(诸如以上提及的pl/sql语言)之外还通常采用结构化查询语言(sql)。在一些示例中,系统元件可被实现为一个或多个计算装置(例如,服务器、个人计算机等)上、存储在与其相关联的计算机可读介质(例如,磁盘、存储器等)上的计算机可读指令(例如,软件)。计算机程序产品可以包括存储在计算机可读介质上以用于执行本文所述的功能的此类指令。关于本文描述的介质、过程、系统、方法、启发等,应当理解,虽然此类过程等的步骤已被描述为按照某一有序的顺序发生,但是可以通过以与本文所述顺序不同的顺序执行所述步骤来实践此类过程。还应理解,可以同时执行某些步骤,可以添加其他步骤,或者可以省略本文中描述的某些步骤。换句话说,本文中对过程的描述是出于说明某些实施例的目的而提供的,并且绝不应被解释为限制权利要求。因此,应理解,以上描述旨在是说明性的而非限制性的。在阅读以上描述时,除了所提供的示例之外的许多实施例和应用对于本领域的技术人员将是明显的。不应参考以上描述来确定本发明的范围,而应改为参考所附权利要求连同此类权利要求有权得到的等效物的全部范围来确定本发明的范围。预期并期望本文所讨论的技术未来将有所发展,并且所公开的系统和方法将并入此类未来实施例中。总之,应理解,本发明能够进行修改和变化,并且仅受所附权利要求限制。除非本文做出明确的相反指示,否则权利要求中使用的所有术语意图给出如本领域技术人员所理解的普通和一般的含义。具体地,除非权利要求叙述相反的明确限制,否则使用诸如“一个”、“该”、“所述”等单数冠词应被解读为叙述所指示的要素中的一者或多者。根据本发明,提供了一种系统,所述系统具有:计算机,所述计算机包括处理器和存储器,所述存储器存储指令,所述指令可由所述处理器执行以:存储电子账本,所述电子账本指定实体对车辆执行的授权操作;接收请求,包括作出所述请求的实体的实体标识符,以执行所请求的操作;查询所述电子账本以确定所请求的操作是所述授权操作;以及基于所述授权操作致动所述车辆;其中所述电子账本是在至少所述车辆与所述实体之间共享的分布式电子账本。根据一个实施例,致动所述车辆包括将所述车辆操作到所述实体的位置。根据一个实施例,所述指令还包括用于基于所述实体标识符向用户输出消息的指令。根据一个实施例,所述指令还包括基于所述车辆的位置或时间范围中的一者来发起所述请求的指令。根据一个实施例,所述指令还包括基于从车辆通信总线上的装置接收的数据来发起所述请求的指令。根据一个实施例,所述指令还包括用于在所述电子账本中记录对由所述实体进行的所述请求的响应包括所述授权和对所述车辆的致动以执行所述授权操作的记录的指令。根据一个实施例,所述指令还包括用于基于针对所述实体记录在电子账本中的一个或多个先前操作确定所请求的操作未被授权的指令。根据一个实施例,所述指令还包括用于基于所请求的操作不满足存储在电子装置中的一个或多个参数来确定所述授权操作未被授权的指令。根据一个实施例,本发明的特征还在于主装置,其中确定所请求的操作是所述授权操作包括除了车辆计算机和实体计算机之外还查询存储所述电子账本的主装置。根据一个实施例,本发明的特征还在于主装置,其中所述指令还包括用于从主装置接收针对所述实体的所述授权操作并将针对所述实体的所述授权操作存储到所述电子账本的指令。根据本发明,一种方法包括:存储电子账本,所述电子账本指定实体对车辆执行的授权操作;接收请求,包括作出所述请求的实体的实体标识符,以执行所请求的操作;查询所述电子账本以确定所请求的操作是所述授权操作;以及基于所述授权操作致动所述车辆;其中所述电子账本是在至少所述车辆与所述实体之间共享的分布式电子账本。在本发明的一个方面,致动所述车辆包括将所述车辆操作到所述实体的位置。在本发明的一个方面,所述方法包括基于所述实体标识符向用户输出消息。在本发明的一个方面,所述方法包括基于所述车辆的位置或时间范围中的一者来发起所述请求。在本发明的一个方面,所述方法包括基于从车辆通信总线上的装置接收的数据来发起所述请求。在本发明的一个方面,所述方法包括在所述电子账本中记录对由所述实体进行的所述请求的响应包括所述授权和对所述车辆的致动以执行所述授权操作的记录。在本发明的一个方面,所述方法包括基于针对所述实体记录在电子账本中的一个或多个先前操作确定所请求的操作未被授权。在本发明的一个方面,所述方法包括基于所请求的操作不满足存储在电子装置中的一个或多个参数来确定所述授权操作未被授权。在本发明的一个方面,确定所请求的操作是所述授权操作包括除了车辆计算机和实体计算机之外还查询存储所述电子账本的主装置。在本发明的一个方面,所述方法包括从主装置接收针对所述实体的所述授权操作并将针对所述实体的所述授权操作存储到所述电子账本。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1