CN110989564B - 一种汽车数据诊断方法及装置 - Google Patents

一种汽车数据诊断方法及装置 Download PDF

Info

Publication number
CN110989564B
CN110989564B CN201911385733.0A CN201911385733A CN110989564B CN 110989564 B CN110989564 B CN 110989564B CN 201911385733 A CN201911385733 A CN 201911385733A CN 110989564 B CN110989564 B CN 110989564B
Authority
CN
China
Prior art keywords
equipment
access request
data
diagnosis
request
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.)
Active
Application number
CN201911385733.0A
Other languages
English (en)
Other versions
CN110989564A (zh
Inventor
刘均
邓春武
程驰
魏泽微
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.)
Shenzhen Launch Technology Co Ltd
Original Assignee
Shenzhen Launch Technology Co Ltd
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 Shenzhen Launch Technology Co Ltd filed Critical Shenzhen Launch Technology Co Ltd
Priority to CN201911385733.0A priority Critical patent/CN110989564B/zh
Publication of CN110989564A publication Critical patent/CN110989564A/zh
Application granted granted Critical
Publication of CN110989564B publication Critical patent/CN110989564B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0208Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the configuration of the monitoring system
    • G05B23/0213Modular or universal configuration of the monitoring system, e.g. monitoring system having modules that may be combined to build monitoring program; monitoring system that can be applied to legacy systems; adaptable monitoring system; using different communication protocols
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/24Pc safety
    • G05B2219/24065Real time diagnostics

Abstract

本申请公开了一种汽车数据诊断方法及装置,该方法包括:接收诊断设备发送的访问请求,访问请求包括第一数字摘要、接头序列号和待处理数据,其中,待处理数据包括车辆数据和用于指示至少一种请求算法的指示信息,第一数字摘要是对待处理数据、接头序列号和诊断设备的设备ID进行哈希运算获得的;根据访问请求判断设备ID是否合法;在判断设备ID合法的情况下,判断访问请求是否符合预设策略;在判断访问请求符合预设策略的情况下,利用至少一种请求算法对车辆数据进行处理获得诊断结果;将诊断结果发送给诊断设备。本申请可以防止用于诊断汽车数据的算法被恶意破解和非法使用,实现了汽车数据的安全诊断。

Description

一种汽车数据诊断方法及装置
技术领域
本申请涉及信息安全领域,尤其涉及一种汽车数据诊断方法及装置。
背景技术
汽车算法为汽车诊断设备对汽车的各项数据进行诊断的核心技术。汽车算法常用于对诊断设备从汽车的OBD(On Board Diagnostics,车载诊断系统)接口读取到的车辆数据进行给定的运算,从而转换成在诊断设备上显示的数据。
目前,对读取到的车辆数据进行解码的汽车算法是被编译成算法动态库存放于诊断设备的诊断软件中,一旦读取到车辆数据,算法动态库直接按照相应请求对车辆数据进行对应运算操作。算法动态库不仅易被他人破解获取到里面的算法数据,安全性较差,而且若需要对算法动态库中的算法进行优化或增加新算法,需要重新下载更新诊断设备中的算法动态库,操作繁琐。
发明内容
本申请实施例公开了一种汽车数据诊断方法及装置,能够防止用于诊断汽车数据的算法被恶意破解和非法使用,提高了汽车算法的安全性,实现了对汽车数据的安全诊断。
第一方面,本申请实施例提供了一种汽车数据诊断方法,应用于服务器中,所述方法包括:接收诊断设备发送的访问请求,所述访问请求包括第一数字摘要、接头序列号和待处理数据,所述待处理数据包括车辆数据和用于指示至少一种请求算法的指示信息,所述第一数字摘要是对所述待处理数据、所述接头序列号和诊断设备的设备ID进行哈希运算获得的;根据所述访问请求判断所述诊断设备的设备ID是否合法;在判断所述诊断设备的设备ID合法的情况下,判断所述访问请求是否符合预设策略;在判断所述访问请求符合预设策略的情况下,利用所述至少一种请求算法对所述车辆数据进行处理获得诊断结果;将所述诊断结果发送给所述诊断设备,所述诊断结果用于指示车辆的故障情况。
可以看到,实施本申请实施例,通过诊断设备向服务器发送携带有车辆数据、至少一种请求算法的指示信息等信息的访问请求,服务器侧在对接收到的访问请求使用对应算法进行处理之前还增加了对该访问请求的身份合法性验证以及访问请求是否符合预设策略,能够有效防止用于诊断汽车数据的算法被恶意破解和非法使用,提高了汽车算法的安全性,实现了对汽车数据的安全诊断。
基于第一方面,在可能的实施例中,所述根据所述访问请求判断所述诊断设备的设备ID 是否合法,包括:查找与所述接头序列号相关联的设备ID;对所述接头序列号、所述接头序列号相关联的设备ID和所述待处理数据进行所述哈希运算获得第二数字摘要;在所述第一数字摘要和所述第二数字摘要相同且所述诊断设备的设备ID有访问权限的情况下,判断所述诊断设备的设备ID合法;在所述第一数字摘要和所述第二数字摘要不同,或者,所述第一数字摘要和所述第二数字摘要相同但所述诊断设备的设备ID无访问权限的情况下,判断所述诊断设备的设备ID不合法。
基于第一方面,在可能的实施例中,所述判断所述访问请求是否符合预设策略,包括:在所述访问请求不满足以下任意一种条件的情况下,判断所述访问请求不符合预设策略;在所述访问请求满足以下全部条件的情况下,判断所述访问请求符合预设策略:所述访问请求中所述请求算法的数量之和小于等于第一预设阈值M1,M1为正整数;第一预设时间N1内,对同一所述诊断设备的设备ID,所述访问请求与历史访问请求中的最后一次访问请求相比,所述访问请求中不同类型的所述请求算法的数量之和小于第二预设阈值M2,M2为正整数;第二预设时间N2内,对同一所述诊断设备的设备ID,所述历史访问请求中出现不同类型的所述请求算法的次数小于等于第三预设阈值M3,N2、M3为正整数,N2大于N1;第三预设时间N3内,对同一所述诊断设备的设备ID,所述历史访问请求中不同类型的所述请求算法的数量之和小于第四预设阈值M4,N3、M4为正整数,N3大于N2,M4大于M2。
可以看到,服务器侧针对访问请求设定的预设策略能够有效防止诊断设备恶意破解用于汽车数据诊断的算法,提高了算法的安全性,实现了对汽车数据的安全诊断。
基于第一方面,在可能的实施例中,所述方法包括:在判断所述诊断设备的设备ID不合法的情况下,发送提示信息给所述诊断设备。
基于第一方面,在可能的实施例中,所述方法包括:在判断所述访问请求不符合预设策略的情况下,关闭所述诊断设备的设备ID的访问权限并发送所述提示消息给所述诊断设备。
可以看到,实施本申请实施例,通过诊断设备向服务器发送携带有车辆数据、至少一种请求算法的指示信息等信息的访问请求,服务器侧在对接收到的访问请求使用对应算法进行处理之前还增加了对该访问请求的身份合法性验证以及安全访问的预设策略验证,能够有效防止用于诊断汽车数据的算法被恶意破解和非法使用,提高了汽车算法的安全性,实现了对汽车数据的安全诊断。
第二方面,本申请实施例提供了一种用于汽车数据诊断装置,所述装置包括:信息收发单元,用于接收诊断设备发送的访问请求,所述访问请求包括第一数字摘要、接头序列号和待处理数据,所述待处理数据包括车辆数据和用于指示至少一种请求算法的指示信息,所述第一数字摘要是对所述待处理数据、所述接头序列号和诊断设备的设备ID进行哈希运算获得的;信息判断单元,用于根据所述访问请求判断所述诊断设备的设备ID是否合法;信息判断单元还用于,在判断所述诊断设备的设备ID合法的情况下,判断所述访问请求是否符合预设策略;信息处理单元,用于在判断所述访问请求符合预设策略的情况下,利用所述至少一种请求算法对所述车辆数据进行处理获得诊断结果;信息收发单元还用于将所述诊断结果发送给所述诊断设备,所述诊断结果用于指示车辆的故障情况。
基于第二方面,在可能的实施例中,所述信息判断单元具体用于:查找与所述接头序列号相关联的设备ID;对所述接头序列号、所述接头序列号相关联的设备ID和所述待处理数据进行所述哈希运算获得第二数字摘要;在所述第一数字摘要和所述第二数字摘要相同且所述诊断设备的设备ID有访问权限的情况下,判断所述诊断设备的设备ID合法;在所述第一数字摘要和所述第二数字摘要不同,或者,所述第一数字摘要和所述第二数字摘要相同但所述诊断设备的设备ID无访问权限的情况下,判断所述诊断设备的设备ID不合法。
基于第二方面,在可能的实施例中,所述信息判断单元具体用于:在所述访问请求不满足以下任意一种条件的情况下,判断所述访问请求不符合预设策略;在所述访问请求满足以下全部条件的情况下,判断所述访问请求符合预设策略:所述访问请求中所述请求算法的数量之和小于等于第一预设阈值M1,M1为正整数;第一预设时间N1内,对同一所述诊断设备的设备ID,所述访问请求与历史访问请求中的最后一次访问请求相比,所述访问请求中不同类型的所述请求算法的数量之和小于第二预设阈值M2,M2为正整数;第二预设时间N2内,对同一所述诊断设备的设备ID,所述历史访问请求中出现不同类型的所述请求算法的次数小于等于第三预设阈值M3,N2、M3为正整数,N2大于N1;第三预设时间N3内,对同一所述诊断设备的设备ID,所述历史访问请求中不同类型的所述请求算法的数量之和小于第四预设阈值 M4,N3、M4为正整数,N3大于N2,M4大于M2。
基于第二方面,在可能的实施例中,所述信息收发单元具体用于:在判断所述诊断设备的设备ID不合法的情况下,发送提示信息给所述诊断设备。
基于第二方面,在可能的实施例中,所述信息处理单元具体用于在判断所述访问请求不符合预设策略的情况下,关闭所述诊断设备的设备ID的访问权限,所述信息收发单元用于发送所述提示消息给所述诊断设备。
可以看到,实施本申请实施例,通过诊断设备向服务器发送携带有车辆数据、至少一种请求算法的指示信息等信息的访问请求,服务器侧在对接收到的访问请求使用对应算法进行处理之前还增加了对该访问请求的身份合法性验证以及安全访问的预设策略验证,能够有效防止用于诊断汽车数据的算法被恶意破解和非法使用,提高了汽车算法的安全性,实现了对汽车数据的安全诊断。
第三方面,本申请实施例提供了一种汽车数据诊断方法,应用于诊断设备中,所述方法包括:从车辆的OBD接口获取待处理数据,所述待处理数据包括车辆数据和至少一种请求算法的指示信息;读取与所述车辆的OBD接口连接的所述诊断设备的设备ID和所述诊断设备的设备ID对应的接头序列号;对所述诊断设备的设备ID、所述待处理数据和所述接头序列号进行哈希运算获得第一数字摘要;向服务器发送访问请求,所述访问请求包括所述待处理数据、所述接头序列号和所述第一数字摘要;接收所述服务器发送的返回结果,并根据所述返回结果进行显示。
基于第三方面,在一些可能的实施例中,所述返回结果为以下任意一种:提示信息,用于指示所述访问请求访问失败的原因;诊断结果,所述诊断结果指示所述车辆的故障情况。
第四方面,本申请实施例提供了一种服务器,所述装置包括:获取单元,用于从车辆的 OBD接口获取待处理数据,所述待处理数据包括车辆数据和至少一种请求算法的指示信息;读取与所述车辆的OBD接口连接的所述诊断设备的设备ID和所述诊断设备的设备ID对应的接头序列号;处理单元,用于对所述诊断设备的设备ID、所述待处理数据和所述接头序列号进行哈希运算获得第一数字摘要;发送单元,用于向服务器发送访问请求,所述访问请求包括所述待处理数据、所述接头序列号和所述第一数字摘要;显示单元,用于接收所述服务器发送的返回结果,并根据所述返回结果进行显示。
基于第四方面,在一些可能的实施例中,所述返回结果为以下任意一种:提示信息,用于指示所述访问请求访问失败的原因;诊断结果,所述诊断结果指示所述车辆的故障情况。
第五方面,本申请实施例提供了一种芯片,所述芯片包括处理器与数据接口,所述处理器通过所述数据接口读取存储器上存储的指令,执行第一方面或第一方面的任一可能的实现方式中的方法。
可选地,作为一种实现方式,所述芯片还可以包括存储器,所述存储器中存储有指令,所述处理器用于执行所述存储器上存储的指令,当所述指令被执行时,所述处理器用于执行第一方面或第一方面的任一可能的实现方式中的方法。
第六方面,本申请实施例提供了一种计算机可读存储介质,用于存储程序指令,所述程序指令用于实现第一方面所述的方法。
第七方面,本申请实施例提供了一种计算机可读存储介质,用于存储程序指令,所述程序指令用于实现第四方面所述的方法。
第八方面,本申请实施例提供了一种计算机软件产品,该计算机程序软件产品包括程序指令,当该计算机软件产品被装置的控制器执行时,该装置的控制器执行前述第一方面所述方法。该计算机软件产品可以为一个软件安装包,在需要使用前述第一方面的任一种可能的设计提供的方法的情况下,可以下载该计算机软件产品并在装置的控制器上执行该计算机软件产品,以实现第一方面所述方法。
第九方面,本申请实施例提供了一种计算机软件产品,该计算机程序软件产品包括程序指令,当该计算机软件产品被装置的控制器执行时,该装置的控制器执行前述第四方面所述方法。该计算机软件产品可以为一个软件安装包,在需要使用前述第四方面的任一种可能的设计提供的方法的情况下,可以下载该计算机软件产品并在装置的控制器上执行该计算机软件产品,以实现第四方面所述方法。
可以看到,实施本申请实施例,通过诊断设备向服务器发送携带有车辆数据、至少一种请求算法的指示信息等信息的访问请求,服务器侧在对接收到的访问请求使用对应算法进行处理之前还增加了对该访问请求的身份合法性验证以及访问请求是否符合预设策略,能够有效防止用于诊断汽车数据的算法被恶意破解和非法使用,提高了汽车算法的安全性,实现了对汽车数据的安全诊断。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种汽车数据诊断的系统结构示意图;
图2是本申请实施例提供的一种服务器的装置结构示意图;
图3是本申请实施例提供的一种诊断设备的装置结构示意图;
图4是本申请实施例提供的一种汽车算法数据保护方法的流程图;
图5是本申请实施例提供的一种服务器判断设备ID是否合法的方法流程图;
图6是本申请实施例提供的一种服务器功能结构示意图;
图7是本申请实施例提供的又一种服务器功能结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
需要说明的是,在本申请实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
现有技术中,车辆数据具有一定的数据存储和编码方式,需要经过相应的汽车算法对车辆数据进行分析解码获取对应的车辆诊断信息。汽车算法数据常被编译成算法动态库存放于诊断设备的诊断软件中,诊断设备通过从车辆的OBD接口读取待处理的车辆数据,通过内置的诊断软件对待处理的车辆数据进行分析运算获得对应的结果。但诊断设备仅需要与车辆的 OBD接口连接上就可获取车辆数据从而执行算法解析操作,即说明对算法动态库的访问没有限制,算法动态库易被他人进行频繁访问从而破解获取到里面的算法数据,安全性较差,初次以外,若需要对算法动态库中的算法进行优化或增加新算法,需要重新下载更新诊断设备中的算法动态库,操作繁琐。
本申请实施例提供的汽车算法数据保护方法,将对进行解析时所使用的汽车算法运算移植到后台服务器,诊断设备只需通过发送访问请求即可将从车辆OBD接口读取到的数据发送给服务器,有服务器对诊断设备发送的访问请求进行判断、运算等处理,最后将处理结果返回给诊断设备。一方面,在服务器侧,在使用对应算法对数据进行处理之前增加了对诊断设备的ID验证以确定设备的ID合法;另一方面,在服务器侧,在使用对应算法对数据进行处理之前还增加了结合同一设备ID的历史访问请求判断本次访问请求是否符合预设访问策略,提高了汽车算法数据的安全性,且能够有效防止汽车算法数据被恶意破解和非法使用。
下面描述本申请实施例所应用的系统架构。如图1所示,图1是本申请实施例提供的一种车辆数据诊断的系统结构示意图。其中,该通信系统至少包括车辆OBD接口10,诊断设备 12和服务器14,车辆OBD接口10与诊断设备12可以通过有线或者无线的方式进行通信,诊断设备12与服务器14通过无线网络设备进行无线通信,无线网络设备可以是3G、4G或者 5G网络设备等。
OBD接口10又叫做车载自动诊断系统,它可以检测车辆运行过程中的发动机电控系统以及车辆的其它功能模块的工作状况。OBD接口10通过CAN线、ISO 0141-2K线、J1850总线读取车辆实时运行信息,诊断设备12与OBD接口通信后可获得车辆数据,该车辆数据可用于进行车辆故障检测,为车辆的修理,开发车辆的相关功能、改造车辆设备等提供了便利。OBD 接口10一般设置于车辆的离合踏板和方向盘之间的隐蔽位置。
诊断设备12用于通过与车辆的OBD接口相连获取车辆数据,并将获得车辆数据、自身的设备ID等信息发送给服务器14进行后续处理,诊断设备12中还用于接收服务器14发送的返回结果,在返回结果为诊断结果(例如,具体的故障信息或者行车参数)时,诊断设备12可以根据返回结果进行显示。当然,在服务器发送的返回结果为提示信息时,诊断设备12可以将提示信息显示于显示屏上。
服务器14可以是服务中心计算机,服务器14用于接收诊断设备12发送的携带有车辆数据等信息的访问请求,对接收的访问请求进行判断、分析等处理,并将处理获得结果发送给诊断设备12。服务器14 还可以用于提供互联网连接,例如DNS(Domain Name Server,域名服务器)服务,或者作为使用DHCP(Dynamic host configuration protocol,动态主机配置协议)或者其它合适的协议来分配IP地址给诊断设备12的网络地址服务器。
如图2所示,图2是本申请实施例提供的一种服务器的装置结构示意图,服务器14至少包括控制器141、时钟模块144、供电模块143、通信接口145和存储器142。时钟模块144主要用于为控制器141产生数据传输和时序控制所需要的时钟,供电模块143主要用于为控制器141以及设备内的其他部件提供稳定的、高精确度的电压,通信接口145可以是有线接口(例如,以太网接口)或者无线接口,用于实现与其他终端进行通信。
控制器141可以由一个或者多个通用处理器构成,例如中央处理器(CentralProcessing Unit,CPU),或者CPU和硬件芯片的组合。上述硬件芯片可以是专用集成电路(Application-Specific Integrated Circuit,ASIC)、可编程逻辑器件(ProgrammableLogic Device, PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(ComplexProgrammable Logic Device, CPLD)、现场可编程逻辑门阵列(Field-Programmable GateArray,FPGA)、通用阵列逻辑(Generic Array Logic,GAL)或其任意组合。
存储器142可以包括易失性存储器(Volatile Memory),例如随机存取存储器(Random Access Memory,RAM);存储器142也可以包括非易失性存储器(Non-VolatileMemory),例如只读存储器(Read-Only Memory,ROM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,HDD)或固态硬盘(Solid-State Drive,SSD);存储器142还可以包括上述种类的组合。存储器142可以存储程序算法以及数据,其中,存储的程序算法包括:哈希算法(用于验签)、多种汽车算法(例如,专家系统方法、神经元网络方法、模糊推理方法、遗传算法等)、等,存储的数据包括:车辆数据、汽车故障码、诊断设备的ID以及接头序列号等。
本申请实施例中,控制器141具体被配置为调用存储器142中的程序代码及程序数据以执行如图4实施例所描述的方法。
如图3所示,图3是本申请实施例提供的一种诊断设备的装置结构示意图,诊断设备12 至少包括控制器121、时钟模块124、供电模块123、通信接口125、存储器122和显示屏126。时钟模块124主要用于为控制器121产生数据传输和时序控制所需要的时钟,供电模块123 主要用于为控制器121以及设备内的其他部件提供稳定的、高精确度的电压,通信接口125 可以是有线接口(例如,以太网接口)或者无线接口,用于实现与其他终端进行通信。显示屏126用于对接收到服务器发送的返回结果进行显示。
控制器121可以由一个或者多个通用处理器构成,例如中央处理器(CentralProcessing Unit,CPU),或者CPU和硬件芯片的组合。上述硬件芯片可以是专用集成电路(Application-Specific Integrated Circuit,ASIC)、可编程逻辑器件(ProgrammableLogic Device, PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(ComplexProgrammable Logic Device, CPLD)、现场可编程逻辑门阵列(Field-Programmable GateArray,FPGA)、通用阵列逻辑 (Generic Array Logic,GAL)或其任意组合。
存储器122可以包括易失性存储器(Volatile Memory),例如随机存取存储器(Random Access Memory,RAM);存储器122也可以包括非易失性存储器(Non-VolatileMemory),例如只读存储器(Read-Only Memory,ROM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,HDD)或固态硬盘(Solid-State Drive,SSD);存储器122还可以包括上述种类的组合。存储器122可以存储程序算法以及数据,其中,存储的程序算法包括:哈希算法(用于签名)等,存储的数据包括:车辆数据、汽车故障码、设备ID、接头序列号以及返回结果等。
参见图4,基于上文所描述的系统结构和装置,下面描述本申请实施例提供的一种汽车算法数据保护方法,该方法包括但不限于以下步骤:
S201、诊断设备向服务器发送访问请求。
本申请实施例中,诊断设备向服务器发送访问请求之前,需要先从车辆的OBD接头读取待处理数据,其中,待处理数据包括车辆数据和用于指示至少一种请求算法的指示信息,然后获取自身与OBD接口连接的接头的设备ID和接头序列号,接着对待处理数据、设备ID和接头序列号进行哈希运算获得第一数字摘要,最后诊断设备向服务器发送携带有第一数字摘要、待处理数据和接头系列号的访问请求,以使服务器使对访问请求中的车辆数据进行处理。
需要说明的是,待处理数据中的用于指示至少一种请求算法的指示信息用于指示采用对应的算法对车辆数据进行分析处理。在一些可能实施例中,诊断设备从车辆OBD接口获取的只是车辆数据,诊断设备可以根据车辆数据确定其所需的请求算法从而获得至少一种请求算法指示信息。当然,在一些可能的实施例中,请求算法指示信息也可以是直接包含于车辆数据中的,诊断设备从车辆OBD接口读取到的车辆数据即为本申请中的待处理数据。
可以理解,对待处理数据、设备ID和接头序列号进行哈希运算获得第一数字摘要,获取第一数字摘要的过程即为签名的过程,其目的是为了确保数据的传输完整一致,防止诊断设备发送的数据在传输过程中遭恶意篡改。一具体实施中,获得第一数字摘要采用的哈希算法可以是MD5算法(MD5 Message-Digest Algorithm),即对任意长度的数据生成一个128位长的数字摘要。MD5具体的算法原理为:以512位分组来处理待签名的信息,且每一分组又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将生成一个128位散列值。
需要说明的是,哈希算法除了可以是MD5算法,还可以是SHA-2(Secure HashAlgorithm 2,安全散列算法2)中的SHA256、SHA224、SHA384、SHA512等算法,这些变体除了生成数字摘要的长度、循环运行的次数等一些微小差异外,算法的基本原理是一致的。可以理解,一般来说,哈希算法中,数字摘要的长度越长,安全性也就越高。当然,也可以使用MD4、 SHA1系列算法生成应用程序包对应的数字摘要,本申请不做具体限定。应理解,上述所述的生成数字摘要的算法在信息安全领域已经非常成熟并被广泛使用,本申请在此不再赘述。
S202、服务器接收访问请求并根据访问请求判断诊断设备的设备ID是否合法,获得第一判断结果。
本申请实施例中,服务器需要判断诊断设备的设备ID是否合法,ID是否合法的判断步骤主要包括两步:对于访问请求中第一数字摘要的验证和判断诊断设备的设备ID是否有访问权限,从而获得第一判断结果。
为了更清楚地说明服务器判断诊断设备的设备ID是否合法的方法,参见图5,步骤S202 可以进一步包括以下步骤:
S2021、接收访问请求,查找与接头序列号相关联的设备ID。
本申请实施例中,服务器接收了诊断设备发送的访问请求后,会根据访问请求中的接头序列号查找与接头序列号相关联的设备ID。需要说明的是,服务器中预先存储有接头序列号以及与之对应的设备ID数据,且设备ID与接头序列号是一一对应的。
S2022、对接头序列号、与接头序列号相关联的设备ID和待处理数据进行哈希运算获得第二数字摘要。
本申请实施例中,服务器对诊断设备发送的访问请求中的接头序列号、待处理数据以及根据接头序列号在预存储的接头序列号-设备ID映射信息中查找到的与接头序列号相关联的设备ID进行哈希运算,获得第二数字摘要。
需要说明的是,服务器获得第二数字摘要所使用的哈希算法与诊断设备获得第一数字摘要所使用的哈希算法保持一致。举例来说,若诊断设备采用MD5算法获得第一数字摘要,那么服务器在获得第二数字摘要的过程中采用的哈希算法也应该是MD5算法。
可以理解,哈希运算所使用的哈希算法是一种将任意长度的消息或者数据压缩成具有固定长度的数字摘要,生成数字摘要的过程是不可逆的,即无法通过数字摘要解析出原来的消息或数据,且获得的数字摘要是将原数据打乱混合按照算法重新组成,数字摘要通常由随机字母和数字组成的固定长度的字符串来表示。可以理解,不同的原始数据生成的数字摘要是不同的,数字摘要唯一表征了原始数据的唯一性,因此保证原始数据的一致性。
S2023、比较第一数字摘要和第二数字摘要是否相同。
本申请实施例中,服务器获取到访问请求中的第一数字摘要和根据接收的接头序列号、和查找到的设备ID重新生成的第二数字摘要后,比较第一数字摘要和第二数字摘要是否相同,若第一数字摘要和第二数字摘要相同,则说明诊断设备的设备ID和查找到的与接头序列号相关联的设备ID一致,则继续执行步骤S2024;若第一数字摘要和第二数字摘要不同,则认为诊断设备的设备ID和查找到的与接头序列号相关联的设备ID不一致,执行步骤S2026。
需要说明的是,在第一数字摘要和第二数字摘要相同的情况下,下述中诊断设备的设备 ID或者与接头序列号相关联的设备ID都可以简称为设备ID。
需要说明的是,上述中涉及的第一数字摘要和第二数字摘要都是一串具有相同固定长度的数据串,通常用十六进制字符串表示,举例来说,第一数字摘要和第二数字摘要的固定长度都为128bit,可以表示为16Byte的十六进制数。
在一具体实施中,比较第一数字摘要和第二数字摘要是否相同,还可以从左向右(或者从右向左)分别循环遍历比较第一数字摘要和第二数字摘要每一位的字符,当某一位的字符不同时,则表示第一数字摘要和第二数字摘要不同;当所有位上的字符全部相同时,则表示第一数字摘要和第二数字摘要相同。
需要说明的是,本申请实施例对判断第一数字摘要和第二数字摘要是否相同的方式不做具体限定。
可以理解,针对相同的数据采用相同的哈希算法生成的数字摘要必定相同,针对不同的数字采用相同的哈希算法生成的数字摘要是不同的,因此,数字摘要是否相同可以作为判断用于生成数字摘要的数据是否一致的依据。
S2024、判断设备ID是否有访问权限。
本申请实施例中,在第一数字摘要和第二数字摘要相同的情况下,则说明服务器中根据接头序列号查找到的设备ID与诊断设备的接头对应的ID是一致的,服务器还需要判断设备 ID是否有访问权限,即在预存储的设备ID对应的信息中查找设备ID的访问权限状态,若设备ID的权限状态为关闭,则表明该设备ID没有访问权限;若设备ID的访问权限状态为开启,则表明该设备ID有访问权限。因此,若服务器获得该设备ID有访问权限,则执行步骤S2025;若服务器获得该设备ID没有访问权限,则执行步骤S2026。
需要说明的是,服务器对云存储的设备ID的访问权限的初始状态都设置为开启,诊断设备发送本次访问请求中的设备ID是否有访问权限是根据该设备ID的历史访问请求决定的,当该设备ID被记录的最近一次的历史访问请求符合服务器预设的策略时,该设备ID的访问权限状态保持为开启;当该设备ID被记录的最近一次的历史访问请求不符合服务器预设的策略时,则设备ID的访问权限的状态被设置为关闭;一具体实施中,当该设备ID被记录的最近一次的历史访问请求不符合策略时,可以直接将该设备ID的访问权限状态设置为关闭,只能通过人工的方式进行更改,这种情况下相当于该设备ID被拉入系统黑名单。在一些可能的实施例中,还可以根据不符合策略中的某些具体条件,对该设备ID的访问权限的状态设置为限时关闭,即从当前访问请求的时刻开始,限定预设时间阈值内,该设备ID的访问权限的状态为关闭,超过预设时间阈值,该设备ID的访问权限的状态自动恢复为开启。
S2025、获得第一判断结果为ID合法。
本申请实施例中,在第一数字摘要和第二数字摘要相同且设备ID有访问权限的情况下,获得第一判断结果为ID合法,后续可直接执行步骤S203。
S2026、获得第一判断结果为ID不合法,并将提示信息发送给诊断设备。
本申请实施例中,一方面,在第一数字摘要和第二数字摘要不同的情况下,获得第一判断结果为ID不合法,则诊断设备本次发送的访问请求访问失败,服务器会将提示信息(例如,设备ID不一致)发送给诊断设备;另一方面,在第一数字摘要和第二数字摘要相同但设备 ID没有访问权限的情况下,获得第一判断结果为ID不合法,则诊断设备本次发送的访问请求访问失败,服务器会将提示信息(例如,设备ID没有访问权限)发送给诊断设备。
S203、当第一判断结果为ID合法时,判断访问请求是否符合预设策略,获得第二判断结果。
本申请实施例中,当第一判断结果为ID合法时,即说明第一数字摘要和第二数字摘要相同且设备ID有访问权限,服务器会判断本次访问请求是否符合预设策略并获得对应的第二判断结果。本申请的预设策略中列举了四个条件,若本次访问请求不满足四个条件中的任意一个,则第二判断结果为请求不符合策略;若本次访问请求全部满足预设策略中的四个条件,则第二判断结果为请求符合策略。
本申请实施例中,服务器预设的策略可以包含四个条件,分别为:条件一:本次访问请求中请求算法的数量之和小于等于第一预设阈值M1,M1为正整数;条件二:第一预设时间 N1内,对同一设备ID,本次访问请求与历史访问请求中的最后一次访问请求相比,本次访问请求中不同类型的请求算法的数量之和小于第二预设阈值M2,M2为正整数;条件三:第二预设时间N2内,对同一设备ID,历史访问请求中出现不同类型的请求算法的次数小于等于第三预设阈值M3,N2、M3为正整数,N2大于N1;条件四:第三预设时间N3内,对同一设备ID,历史访问请求中不同类型的请求算法的数量之和小于第四预设阈值M4,其中,N3、M4为正整数,N3大于N2,M4大于M2。
可以理解,历史访问请求是指对于同一设备ID而言,该设备ID在发送本次访问请求之前的时间内被服务器记录的有效的访问请求。具体来说,即本次访问请求之前的某一时刻诊断设备发送的访问请求,经服务器判断设备ID合法且该访问请求符合预设的策略,服务器会使用对应的请求算法对该访问请求中的车辆数据进行运算,运算结束后会记录该访问请求的发送时间以及包含的请求算法的类型,访问请求一旦被记录即成为该设备ID的历史访问请求。本申请中的第一预设时间N1是指自本次访问请求的发送时间起往前N1的历史时间段内,第二预设时间N2、第三预设时间N3以此类推,也是同样的道理。
举例来说,假设预设策略中的M1为10,第一预设时间N1为3分钟,M2为5,第二预设时间N2为60分钟,M3为4,第三预设时间N3为24小时,M4为30,则预设策略中的四个条件具体为:
条件一:本次访问请求中的请求算法数量之和不超过10;
条件二:3分钟内,同一设备ID,本次访问请求与上次的历史访问请求相比,不同类型的请求算法数量之和小于5;
条件三:60分钟内,同一设备ID,历史访问请求中最多有4次访问请求出现不同的请求算法;
条件四:24小时内,历史访问请求中不同类型的请求算法的数量之和小于30。
下面对上述四个条件进行进一步解释。
一具体实施中,假设本次访问请求中涉及的请求算法有A、B、C三种不同类型的请求算法,则本次访问请求是满足条件一的;接着判断条件二:假设同一设备ID,历史3分钟时间内仅有两次历史访问记录,且最近一次的历史访问记录涉及请求算法类型有A、D、E三种,则易发现本次访问请求与上次访问请求相比有2种不同的请求算法,满足条件二;接着判断条件三:假设60分钟内,有五次历史访问记录,按照时间的由远及近,第一次的请求算法为A、E两种,第二次的请求算法为A、B两种,第三次的请求算法为A、B两种,第四次的请求算法为A一种,第五次的请求算法为A、D、E三种,易发现60分钟内仅有3次访问请求出现不同的算法,满足条件三;接着判断条件四:假设24小时内依然只有五次历史访问记录(在判断条件三时已有完整的罗列,此处不再赘述),易发现24小时内历史访问请求中一共有4 种不同类型(即A、B、D、E)的请求算法,满足条件四,由此可知,本次访问请求经判断是满足预设的策略的四个条件的,故本次访问请求符合策略。
一具体实施中,若3分钟内,本次访问请求涉及的请求算法有A、B、C、D、E、F,满足条件一,而最近一次历史访问请求涉及的请求算法为A,则本次访问请求与上次访问请求相比,有5种不同的请求算法,不满足条件二,故本次访问请求不符合策略。一具体实施中,若3分钟内,本次访问请求涉及的请求算法有A、B共2种,而最近一次历史访问请求涉及的请求算法为A、B、C、D、E、F、G、H共7种,则本次访问请求与上次访问请求相比,有5种不同的请求算法,不满足条件二,故本次访问请求不符合策略。
一具体实施中,假设条件一和条件二都满足,不满足条件三的情况可以是:60分钟内有 5次历史访问请求,且第一次请求算法A,第二次请求算法B、C,第三次请求算法D,第四次请求算法E、F,第五次请求算法G,易知有5次访问请求出现不同的算法,不满足条件三。一具体实施中,不满足条件三的情况也可以是:60分钟内有5次历史访问请求,且第一次请求算法A,第二次请求算法B,第三次请求算法D,第四次请求算法E,第五次请求算法G,易知有5次访问请求出现不同的算法,不满足条件三。一具体实施中,不满足条件三的情况也可以是:60分钟内有5次历史访问请求,且第一次请求算法A、B,第二次请求算法A、C,第三次请求算法D,第四次请求算法E,第五次请求算法G,易知有5次访问请求出现不同的算法,不满足条件三。
需要说明的是,上述中的预设策略中的四个条件只是一种示例性地举例,在一些可能的实施例中,还可以对上述预设策略中的条件进行部分合并、增加以及减少等操作,本发明不做具体限定。
需要说明的是,当第二判断结果为请求符合策略时,继续执行步骤S205;当第二判断结果为请求不符合策略时,将该设备ID的访问权限状态设置为关闭,只能通过人工的方式进行更改。在一些可能的实施例中,还可以根据不满足策略中的某些具体条件,对该设备ID的访问权限的状态设置为限时关闭,即从当前访问请求的时刻开始,限定预设未来一时间阈值内该设备ID的访问权限的状态保持为关闭,超过预设时间阈值,该设备ID的访问权限的状态自动恢复为开启。除此之外,还可以根据不满足策略中的对应条件时,按照条件设置设备ID 的访问权限的状态为关闭,和/或,限时关闭。
S204、当第二判断结果为请求符合预设策略时,对访问请求中的车辆数据进行处理获得诊断结果。
本申请实施例中,当第二判断结果为请求符合预设策略时,服务器对本次访问请求中需要计算的车辆数据使用对应的请求算法进行运算获得对应的诊断结果,该诊断结果可以是诊断信息,也可以是表征诊断信息的诊断数据,例如,故障码。
需要说明的是,在获得诊断结果之后,服务器还会对本次访问请求进行记录以存储本次访问请求的相关访问信息,访问信息包括本次访问请求的时间以及本次访问请求中涉及的请求算法的类型。
需要说明的是,若诊断结果为表征诊断信息的诊断数据,诊断数据以故障码为例,一般情况下,故障码总共有五个字符,第一个字符是字母,后面四个是数字,其中,第一个字符总共有P、C、B、U四类,P表示动力系统,C表示底盘,B表示车身,U表示通信网络,第二个字符表征故障码是标准化代码还是汽车制造商控制的代码,第三个字符用于表示该故障下的具体子分支,第四个和第五个字符表示触发故障码的条件,编号为00~99,
需要说明的是,本次访问请求一旦被服务器记录,则本次访问请求就成了对应设备ID的历史访问请求。
S205、服务器向诊断设备发送诊断结果。
本申请实施例中,服务器向诊断设备发送对本次访问请求中的车辆数据进行相应运算后的诊断结果。服务器发送的诊断结果可以是具体的诊断信息,即说明车辆的某部件出了故障或者某部件故障是什么原因造成的或者是某一具体的行车参数,服务器发送的诊断结果还可以是表征诊断信息的诊断数据,例如,故障码或者自定义的错误码,可以理解,此处的诊断数据相当于是服务器处理的一个中间结果。
需要说明的是,本申请对诊断结果的具体形式不做具体限定。
S206、诊断设备根据诊断结果进行显示。
本申请实施例中,诊断设备接收服务器发送的诊断结果,并根据诊断结果进行显示。需要说明的是,在诊断结果为诊断信息时,诊断设备可以直接在显示屏上显示诊断信息;在诊断结果为表征诊断信息的诊断数据时,诊断设备会对接收的诊断数据进行进一步处理获得诊断信息,并将诊断信息在显示屏上进行显示。
举例来说,若接收的诊断结果为“左后轮速传感器故障”,则诊断设备在显示屏上显示“左后轮速传感器故障”;若接收的诊断结果为故障码“C1492”,则诊断设备根据接收的故障码在预存储于诊断设备中的故障码表中进行查找,查找到故障码“C1492”对应的诊断信息为“左后轮速传感器故障”,则诊断设备在显示屏上显示“左后轮速传感器故障”。
可以看到,实施本申请实施例,通过将诊断设备中的汽车算法运算移植到后台服务器中,通过诊断设备向服务器发送携带有车辆数据、至少一种请求算法的指示信息等信息的访问请求,服务器侧在对接收到的访问请求使用对应算法进行处理之前还增加了对该访问请求的身份合法性验证以及访问请求是否符合预设策略,能够有效防止用于诊断汽车数据的算法被恶意破解和非法使用,提高了汽车算法的安全性,实现了对汽车数据的安全诊断。
参见图6,图6是本申请实施例提供的一种服务器的装置功能结构示意图,该装置100 进一步包括信息收发单元801、信息判断单元802和信息处理单元803。该装置100可以通过硬件、软件或者软硬件结合的方式来实现。
其中,信息接收单元801,用于接收诊断设备发送的访问请求,所述访问请求包括第一数字摘要、接头序列号和待处理数据,所述待处理数据包括车辆数据和用于指示至少一种请求算法的指示信息,所述第一数字摘要是对所述待处理数据、所述接头序列号和诊断设备的设备ID进行哈希运算获得的;信息判断单元802,用于根据所述访问请求判断所述诊断设备的设备ID是否合法以及在判断所述诊断设备的设备ID合法的情况下,判断所述访问请求是否符合预设策略;信息处理单元803,用于在判断所述访问请求符合预设策略的情况下,利用所述至少一种请求算法对所述车辆数据进行处理获得诊断结果;信息接收单元801还用于将所述诊断结果发送给所述诊断设备,所述诊断结果用于指示车辆的故障情况。
该装置100的各功能模块可用于实现如图4步骤S202至步骤S205以及图5所示的方法。信息判断单元802可用于执行步骤S202和S203,信息收发单元802可用于执行步骤S2021中访问请求的接收以及步骤S205,信息处理单元803可用于执行步骤S204,为了说明书的简洁,本申请在此不再赘述。
参见图7,图7是本申请实施例提供的一种诊断设备的装置功能结构示意图,该装置200 进一步包括获取单元901、处理单元902、发送单元903和显示单元904。该装置100可以通过硬件、软件或者软硬件结合的方式来实现。
其中,获取单元901,用于从车辆OBD接口获取待处理数据,所述待处理数据包括车辆数据和至少一种请求算法的指示信息;读取与所述车辆OBD接口连接的设备ID和所述设备 ID对应的接头序列号;处理单元902,用于对所述设备ID、所述待处理数据和所述接头序列号进行哈希运算获得第一数字摘要;发送单元903,用于向服务器发送访问请求,所述访问请求包括所述待处理数据、所述接头序列号和所述第一数字摘要;显示单元904,用于接收所述服务器发送的返回结果,并根据所述返回结果进行显示。
在实际应用中,结合图3,该装置200中的获取单元901和发送单元903可以通过通信接口125实现,处理单元902可以通过控制器121实现,显示单元904可以通过显示器126实现。
本申请实施例还提供一种计算机存储介质,其中,该计算机存储介质存储用于电子数据交换的计算机程序,该计算机程序使得计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤。
本申请实施例还提供一种计算机程序产品,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤。该计算机程序产品可以为一个软件安装包,上述计算机包括电子设备。
需要说明的是,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质包括只读存储器(Read-Only Memory,ROM)、随机存储器(Random AccessMemory, RAM)、可编程只读存储器(Programmable Read-only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、一次可编程只读存储器 (One-time Programmable Read-Only Memory,OTPROM)、电子抹除式可复写只读存储(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(CompactDisc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
在上述的实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详细描述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是个人计算机,服务器,或者网络设备、机器人、单片机、芯片、机器人等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
以上对本申请实施例公开的进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (9)

1.一种汽车数据诊断方法,应用于服务器,其特征在于,所述方法包括:
接收诊断设备发送的访问请求,所述访问请求包括第一数字摘要、接头序列号和待处理数据,所述待处理数据包括车辆数据和用于指示至少一种请求算法的指示信息,所述第一数字摘要是对所述待处理数据、所述接头序列号和诊断设备的设备ID进行哈希运算获得的;
查找与所述接头序列号相关联的设备ID;
对所述接头序列号、所述接头序列号相关联的设备ID和所述待处理数据进行所述哈希运算获得第二数字摘要;
在所述第一数字摘要和所述第二数字摘要相同且所述诊断设备的设备ID有访问权限的情况下,判断所述诊断设备的设备ID合法;
在判断所述诊断设备的设备ID合法的情况下,判断所述访问请求是否符合预设策略;
在判断所述访问请求符合预设策略的情况下,利用所述至少一种请求算法对所述车辆数据进行处理获得诊断结果;
将所述诊断结果发送给所述诊断设备,所述诊断结果用于指示车辆的故障情况。
2.根据权利要求1所述的方法,其特征在于,所述判断所述访问请求是否符合预设策略,包括:
在所述访问请求不满足以下任意一种条件的情况下,判断所述访问请求不符合预设策略;在所述访问请求满足以下全部条件的情况下,判断所述访问请求符合预设策略:
所述访问请求中所述请求算法的数量之和小于等于第一预设阈值M1,M1为正整数;
第一预设时间N1内,对同一所述诊断设备的设备ID,所述访问请求与历史访问请求中的最后一次访问请求相比,所述访问请求中不同类型的所述请求算法的数量之和小于第二预设阈值M2,M2为正整数;
第二预设时间N2内,对同一所述诊断设备的设备ID,所述历史访问请求中出现不同类型的所述请求算法的次数小于等于第三预设阈值M3,N2、M3为正整数,N2大于N1;
第三预设时间N3内,对同一所述诊断设备的设备ID,所述历史访问请求中不同类型的所述请求算法的数量之和小于第四预设阈值M4,N3、M4为正整数,N3大于N2,M4大于M2。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
在所述第一数字摘要和所述第二数字摘要不同,或者,所述第一数字摘要和所述第二数字摘要相同但所述诊断设备的设备ID无访问权限的情况下,判断所述诊断设备的设备ID不合法,在判断所述诊断设备的设备ID不合法的情况下,发送提示信息给所述诊断设备。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述方法包括:在判断所述访问请求不符合预设策略的情况下,关闭所述诊断设备的设备ID的访问权限并发送提示消息给所述诊断设备。
5.一种汽车数据诊断方法,应用于诊断设备中,其特征在于,所述方法包括:
从车辆的OBD接口获取待处理数据,所述待处理数据包括车辆数据和至少一种请求算法的指示信息;
读取与所述车辆的OBD接口连接的所述诊断设备的设备ID和所述诊断设备的设备ID对应的接头序列号;
对所述诊断设备的设备ID、所述待处理数据和所述接头序列号进行哈希运算获得第一数字摘要;
向服务器发送访问请求,所述访问请求包括所述待处理数据、所述接头序列号和所述第一数字摘要,以使所述服务器判断所述诊断设备的设备ID是否满足合法条件以及所述访问请求是否符合预设策略,所述合法条件为所述第一数字摘要和第二数字摘要相同且所述诊断设备的设备ID有访问权限;所述第二数字摘要为对所述接头序列号、所述接头序列号相关联的设备ID和所述待处理数据进行所述哈希运算获得的;
接收所述服务器发送的返回结果,并根据所述返回结果进行显示。
6.根据权利要求5所述的方法,其特征在于,所述返回结果为以下任意一种:
提示信息,用于指示所述访问请求访问失败的原因;
诊断结果,所述诊断结果指示所述车辆的故障情况。
7.一种用于汽车数据诊断的装置,其特征在于,所述装置包括:
信息收发单元,用于接收诊断设备发送的访问请求,所述访问请求包括第一数字摘要、接头序列号和待处理数据,所述待处理数据包括车辆数据和用于指示至少一种请求算法的指示信息,所述第一数字摘要是对所述待处理数据、所述接头序列号和诊断设备的设备ID进行哈希运算获得的;
信息判断单元,用于查找与所述接头序列号相关联的设备ID;对所述接头序列号、所述接头序列号相关联的设备ID和所述待处理数据进行所述哈希运算获得第二数字摘要;在所述第一数字摘要和所述第二数字摘要相同且所述诊断设备的设备ID有访问权限的情况下,判断所述诊断设备的设备ID合法;
信息判断单元还用于,在判断所述诊断设备的设备ID合法的情况下,判断所述访问请求是否符合预设策略;
信息处理单元,用于在判断所述访问请求符合预设策略的情况下,利用所述至少一种请求算法对所述车辆数据进行处理获得诊断结果;
信息收发单元还用于将所述诊断结果发送给所述诊断设备,所述诊断结果用于指示车辆的故障情况。
8.一种服务器,其特征在于,所述服务器包括处理器、存储器和通信接口,所述通信接口、所述存储器和所述处理器相互连接,其中,所述处理器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如权利要求1-4任一项所述的方法。
9.一种诊断设备,其特征在于,所述设备包括处理器、存储器、通信接口和显示屏,所述通信接口、所述显示屏、所述存储器和所述处理器相互连接,其中,所述处理器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如权利要求5-6任一项所述的方法。
CN201911385733.0A 2019-12-27 2019-12-27 一种汽车数据诊断方法及装置 Active CN110989564B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911385733.0A CN110989564B (zh) 2019-12-27 2019-12-27 一种汽车数据诊断方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911385733.0A CN110989564B (zh) 2019-12-27 2019-12-27 一种汽车数据诊断方法及装置

Publications (2)

Publication Number Publication Date
CN110989564A CN110989564A (zh) 2020-04-10
CN110989564B true CN110989564B (zh) 2021-05-04

Family

ID=70076804

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911385733.0A Active CN110989564B (zh) 2019-12-27 2019-12-27 一种汽车数据诊断方法及装置

Country Status (1)

Country Link
CN (1) CN110989564B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022056740A1 (zh) * 2020-09-16 2022-03-24 华为技术有限公司 电子控制单元及其数据访问方法与装置
CN112214738B (zh) * 2020-10-20 2024-02-13 上海星融汽车科技有限公司 诊断设备反破解方法
CN114338073A (zh) * 2021-11-09 2022-04-12 江铃汽车股份有限公司 车载网络的防护方法、系统、存储介质及设备
CN114465777B (zh) * 2021-12-31 2023-06-30 惠州华阳通用智慧车载系统开发有限公司 一种tsp服务器访问控制方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2672353A1 (en) * 2012-06-05 2013-12-11 ABB Research Ltd. Transformer monitoring with a mobile device
CN104601612A (zh) * 2013-10-31 2015-05-06 上海汽车集团股份有限公司 车载电控单元的数据自动更新系统以及自动更新方法
CN104965507A (zh) * 2015-06-29 2015-10-07 广州汽车集团股份有限公司 生成开放式诊断数据交换数据库的方法及装置
CN109407528A (zh) * 2018-09-19 2019-03-01 北京小米移动软件有限公司 安全访问方法、装置、服务器及存储介质
CN109885037A (zh) * 2019-03-27 2019-06-14 深圳市元征科技股份有限公司 一种车辆诊断的方法及相关设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2672353A1 (en) * 2012-06-05 2013-12-11 ABB Research Ltd. Transformer monitoring with a mobile device
CN104601612A (zh) * 2013-10-31 2015-05-06 上海汽车集团股份有限公司 车载电控单元的数据自动更新系统以及自动更新方法
CN104965507A (zh) * 2015-06-29 2015-10-07 广州汽车集团股份有限公司 生成开放式诊断数据交换数据库的方法及装置
CN109407528A (zh) * 2018-09-19 2019-03-01 北京小米移动软件有限公司 安全访问方法、装置、服务器及存储介质
CN109885037A (zh) * 2019-03-27 2019-06-14 深圳市元征科技股份有限公司 一种车辆诊断的方法及相关设备

Also Published As

Publication number Publication date
CN110989564A (zh) 2020-04-10

Similar Documents

Publication Publication Date Title
CN110989564B (zh) 一种汽车数据诊断方法及装置
CN108762783B (zh) 车辆系统的软件更新方法、装置及车辆系统
US10049232B2 (en) Rewrite detection system, rewrite detection device and information processing device
US9792440B1 (en) Secure boot for vehicular systems
US10723361B2 (en) Monitoring apparatus, communication system, vehicle, monitoring method, and non-transitory storage medium
US8161285B2 (en) Protocol-Independent remote attestation and sealing
CN109257374B (zh) 安全控制方法、装置和计算机设备
US10268557B2 (en) Network monitoring device, network system, and computer program product
CN110460573A (zh) 一种应用于汽车ecu安全升级管理系统及方法
CN111142500B (zh) 车辆诊断数据的权限设置方法、装置及车载网关控制器
Van den Herrewegen et al. Beneath the bonnet: A breakdown of diagnostic security
CN109885037B (zh) 一种车辆诊断的方法及相关设备
US20170302693A1 (en) Rewrite detection system and information processing device
CN113645590A (zh) 基于加密算法的远程控制车辆的方法、装置、设备及介质
US11550480B2 (en) Method of identifying errors in or manipulations of data or software stored in a device
CN111565182B (zh) 一种车辆诊断方法、装置及存储介质
CN113114659B (zh) 诊断设备检测方法、装置、终端设备及存储介质
CN111835504B (zh) 识别码生成方法及服务器
JP2021083005A (ja) 車両通信装置、通信異常の判定方法及びプログラム
JP2017168907A (ja) 通信システム
CN112347481A (zh) 安全启动方法、控制器和控制系统
CN115495123A (zh) 硬件安全模块的刷写方法及系统
CN114338073A (zh) 车载网络的防护方法、系统、存储介质及设备
CN116710917A (zh) 数据保存装置、数据保存方法、以及数据保存程序
US7346931B2 (en) Accepting a set of data in a computer unit

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
GR01 Patent grant
GR01 Patent grant