掌桥专利:专业的专利平台
掌桥专利
首页

用于商用车诊断仪防止非法刷写的系统、方法及存储介质

文献发布时间:2024-04-18 19:58:53


用于商用车诊断仪防止非法刷写的系统、方法及存储介质

技术领域

本发明涉及汽车故障诊断及汽车信息安全技术领域,具体涉及一种用于商用车诊断仪防止非法刷写的系统、方法及存储介质。

背景技术

国内目前商用车诊断仪的刷写功能容易被外面厂商破解。车载控制器的刷写需要对应控制器的安全算法,对应的刷写文件,以及UDS刷写流程。安全算法以DLL的形式提供。刷写文件以AES,S19,HEX等形式提供。刷写流程方面,通过UDS诊断协议和刷写LOG可以得出。

刷写过程中有关信息安全采用UDS的27服务,本身安全性较弱。刷写文件存在被获取的可能。安全算法也存在被获取的可能。破解人员同时获取UDS的刷写流程、刷写文件、安全算法后,即可模拟诊断仪进行刷写。

如图1所示,现有技术中,诊断仪IDS刷写对应控制器的时候,调用安全算法DLL,由于安全算法DLL没有安全措施,当安全算法DLL本身被获取后,诊断仪即可进行后续操作,导致了车诊断仪的非法刷写。

发明内容

本发明的目的就是针对现有技术的缺陷,提供一种用于商用车诊断仪防止非法刷写的系统、方法及存储介质,通过在安全算法接口内定义一个需要被验证的通行变量的方式,实现刷写前的身份验证,防止安全算法接口被非法获取导致的商用车诊断仪非法刷写,提高了车辆的安全性。

本发明提供了一种用于商用车诊断仪防止非法刷写的方法,包括以下步骤:

用户获取通行变量码,并将所述通行变量码输入至诊断仪;

安全算法接口将用户输入的通行变量码与安全算法接口内预先定义的通行变量码进行比对;

若通行变量码一致,则允许诊断仪执行后续的刷写流程;反之,则禁止诊断仪的后续操作。

较为优选的,所述用户获取通行变量码的方式为:

用户通过账号和密码登录售后服务系统,从所述售后服务系统内获取的通行变量码。

较为优选的,所述通行变量码为一个动态变化的变量码。

较为优选的,所述安全算法的接口定义以DLL文件形式的安全算法接口实现,所述安全算法接口内预先定义有一个需要被验证的通行变量码。

较为优选的,所述通行变量码为诊断仪内安全算法的接口定义中定义的27服务通行变量。

本发明还提供了一种用于商用车诊断仪防止非法刷写的系统,包括

诊断仪软件模块,集成于诊断仪内,用于供用户输入通行变量码,以及在所述通行变量码校验通过后实现诊断仪数据刷写;

安全算法模块,集成于DLL安全算法接口内,用于将用户输入的通行变量码与预先定义的通行变量码进行比对,实现通行变量码的校验;

售后服务系统平台模块,用于向用户或DLL安全算法接口提供通行变量码。

较为优选的,所述诊断仪软件模块包括:

数据刷写模块,用于实现诊断仪的数据刷写,以及在刷写流程进行到27服务时跳转至通行变量输入模块,并在获取通行变量后跳转至安全算法接口定义模块;

安全算法接口定义模块,用于定义一个通行变量,并将定义的所述通行变量发送至安全算法模块,定义的所述通行变量从所述售后服务系统平台模块中获取;

通行变量输入模块,用于提供用户输入通行变量码的UI界面,并将用户输入的通行变量码发送至安全算法模块。

较为优选的,所述通行变量码的校验结束后,DLL安全算法接口向诊断仪反馈状态码,所述诊断仪通过所述状态码判断校验是否通过,若校验未通过,则禁止诊断仪的后续操作。

较为优选的,所述售后服务系统平台模块在接收到用户输入的账号和密码后,向用户反馈一个动态的通行变量码。

本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上所述方法的步骤。

本发明的有益效果为:用户在使用诊断仪刷写控制器功能之前,需要登陆售后服务系统(CRM),在系统内根据所需要刷写的控制器种类,获取一个动态的可变的通行变量码,在诊断仪软件刷写对应控制器之前,需要在诊断仪UI界面上输入售后服务系统(CRM)中获取的通行变量,另外对应控制器的安全算法中也植入了此通行变量码,安全算法可以自行从售后服务系统(CRM)中实时获取此通行变量码,如果用户在诊断仪UI界面上输入的通行变量和安全算法自行从售后服务系统(CRM)中实时获取的通行变量码一致,则诊断仪可以进行下一步操作。此发明对安全算法本身进行了保护,解决了之前外面厂商获取了控制器对应的安全算法后,可以随意进行控制器刷写的问题,提高了车辆的安全性。

附图说明

图1为现有技术的内部数据交互示意图;

图2为本发明方法流程示意图;

图3为本发明系统连接原理示意图。

具体实施方式

为了使本申请所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。

应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。

还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。

如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。

另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。“多个”表示“两个或两个以上”。

实施例一

图2示出了本申请较佳实施例提供的一种用于商用车诊断仪防止非法刷写的方法的流程示意图,为了便于说明,仅示出了与本实施例相关的部分,详述如下:

本发明提供了一种用于商用车诊断仪防止非法刷写的方法,包括以下步骤:

步骤1,用户获取通行变量码;

步骤2,用户将所述通行变量码输入至诊断仪;

步骤3,安全算法接口将用户输入的通行变量码与安全算法接口内预先定义的通行变量码进行比对,若通行变量码一致,则允许诊断仪执行后续的刷写流程;反之,则禁止诊断仪的后续操作。

在一个实施例中,步骤1中,所述用户获取通行变量码的方式为:

用户通过账号和密码登录售后服务系统,从所述售后服务系统内获取的通行变量码。

在一个实施例中,所述通行变量码为一个动态变化的变量码。

在一个实施例中,所述安全算法的接口定义以DLL文件形式的安全算法接口实现,所述安全算法接口内预先定义有一个需要被验证的通行变量码。

在一个实施例中,所述通行变量码为诊断仪内安全算法的接口定义中定义的27服务通行变量。

本实施例中,诊断仪关于安全算法的实现需要诊断仪软件内安全算法的接口定义,以DLL文件形式的安全算法接口实现,以及诊断仪软件内实现的UDS的27服务;

诊断仪软件内安全算法的接口定义中定义一个27服务通行变量,控制器进行刷写时走到UDS的27服务,使用DLL文件形式的安全算法接口实现时,需要核对诊断仪软件内安全算法的接口定义中定义的27服务通行变量,核对成功才能过安全算法,否则视为安全算法通过失败;

诊断仪软件内安全算法的接口定义中定义一个27服务通行变量,此变量需要用户在诊断仪软件对应控制器界面进行输入,用户需要在售后服务系统平台上通过自己账号密码才能获取对应变量,且此变量动态变化。DLL文件形式的安全算法接口实现中核对诊断仪软件内安全算法的接口定义中定义的变量(用户输入)和售后服务系统平台上提供变量的一致性,若一致则可以进行刷写下一步,否则无法进行刷写下一步。

诊断仪关于安全算法的实现需要诊断仪软件内安全算法的接口定义,以DLL文件形式的安全算法接口实现,以及诊断仪软件内实现的UDS的27服务,包括:

根据UDS刷写流程,诊断仪刷写流程中走到27服务的时候,此时27服务需要以DLL文件形式的安全算法接口实现,诊断仪通过诊断仪软件内安全算法的接口定义调用DLL。

诊断仪软件内安全算法的接口定义中定义一个变量,控制器进行刷写时走到UDS的27服务,使用DLL文件形式的安全算法接口实现时,需要核对诊断仪软件内安全算法的接口定义中定义的变量,核对成功才能过安全算法,否则视为安全算法通过失败;诊断仪软件内安全算法的接口定义中定义一个变量,此变量需要用户在诊断仪软件对应控制器界面进行输入,用户需要在售后服务系统平台上通过自己账号密码才能获取对应变量,且此变量动态变化。DLL文件形式的安全算法接口实现中核对诊断仪软件内安全算法的接口定义中定义的变量(用户输入)和售后服务系统平台上提供变量的一致性,若一致则可以进行刷写下一步,否则无法进行刷写下一步。包括:

诊断仪软件内安全算法的接口定义中定义的一个变量,在诊断仪对应控制器连接成功后即可人为手动在诊断仪软件对应控制器界面输入。

上述变量诊断仪使用者可以在售后服务系统平台通过自己的账号密码登陆获取,且此变量动态变化。

只有人为在诊断仪软件对应控制器界面输入的变量和DLL从售后服务系统平台获取的变量一致时,UDS刷写流程才会进行27服务。

实施例二

图3示出了本申请较佳实施例提供的一种用于商用车诊断仪防止非法刷写的方法的流程示意图,为了便于说明,仅示出了与本实施例相关的部分,详述如下:

一种用于商用车诊断仪防止非法刷写的系统,包括

诊断仪软件模块,集成于诊断仪内,用于供用户输入通行变量码,以及在所述通行变量码校验通过后实现诊断仪数据刷写;

安全算法模块,集成于DLL安全算法接口内,用于将用户输入的通行变量码与预先定义的通行变量码进行比对,实现通行变量码的校验;

售后服务系统平台模块,用于向用户或DLL安全算法接口提供通行变量码。

较为优选的,所述诊断仪软件模块包括:

数据刷写模块,用于实现诊断仪的数据刷写,以及在刷写流程进行到27服务时跳转至通行变量输入模块,并在获取通行变量后跳转至安全算法接口定义模块;

数据刷写模块进行到27服务的时候,会跳转到安全算法的接口定义模块,从而调用DLL文件形式的安全算法接口实现,在调用DLL文件形式的安全算法接口实现之前,会进入27服务通行变量输入模块。核对无误后会调用DLL文件形式的安全算法接口实现,后续继续完成数据刷写模块剩余流程。

安全算法接口定义模块,用于定义一个通行变量,并将定义的所述通行变量发送至安全算法模块,定义的所述通行变量从所述售后服务系统平台模块中获取;由于DLL被外界获取,现在为了让DLL在被获取情况下依然可以正常使用,所以在诊断仪硬件识别车载控制器之前,前置一个判断逻辑,判断使用者是否是授权用户,此前置逻辑用于将用户在刷写模块中输入的通行变量码与DLL从网站上获取的通行变量码进行比对,实现通行变量码的校验。安全算法接口定义模块中除了定义该通行变量,还定义有用于实现其余功能的多个变量,本实施例中提及的通行变量仅用于与车载控制器交互时验证。

通行变量输入模块,用于提供用户输入通行变量码的UI界面,并将用户输入的通行变量码发送至安全算法模块。

在一个实施例中,所述通行变量码的校验结束后,DLL安全算法接口向诊断仪反馈状态码,所述诊断仪通过所述状态码判断校验是否通过,若校验未通过,则禁止诊断仪的后续操作。

在一个实施例中,所述售后服务系统平台模块在接收到用户输入的账号和密码后,向用户反馈一个动态的通行变量码。服务站都能正常登陆CRM系统,外面的厂商无法通过正常手段登陆CRM系统,登陆后既可以手动获取需要刷写控制器的通行变量。

本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上所述方法的步骤。

应该明白,公开的过程中的步骤的特定顺序或层次是示例性方法的实例。基于设计偏好,应该理解,过程中的步骤的特定顺序或层次可以在不脱离本公开的保护范围的情况下得到重新安排。所附的方法权利要求以示例性的顺序给出了各种步骤的要素,并且不是要限于所述的特定顺序或层次。

在上述的详细描述中,各种特征一起组合在单个的实施方案中,以简化本公开。不应该将这种公开方法解释为反映了这样的意图,即,所要求保护的主题的实施方案需要比清楚地在每个权利要求中所陈述的特征更多的特征。相反,如所附的权利要求书所反映的那样,本发明处于比所公开的单个实施方案的全部特征少的状态。因此,所附的权利要求书特此清楚地被并入详细描述中,其中每项权利要求独自作为本发明单独的优选实施方案。

为使本领域内的任何技术人员能够实现或者使用本发明,上面对所公开实施例进行了描述。对于本领域技术人员来说;这些实施例的各种修改方式都是显而易见的,并且本文定义的一般原理也可以在不脱离本公开的精神和保护范围的基础上适用于其它实施例。因此,本公开并不限于本文给出的实施例,而是与本申请公开的原理和新颖性特征的最广范围相一致。

上文的描述包括一个或多个实施例的举例。当然,为了描述上述实施例而描述部件或方法的所有可能的结合是不可能的,但是本领域普通技术人员应该认识到,各个实施例可以做进一步的组合和排列。因此,本文中描述的实施例旨在涵盖落入所附权利要求书的保护范围内的所有这样的改变、修改和变型。此外,就说明书或权利要求书中使用的术语“包含”,该词的涵盖方式类似于术语“包括”,就如同“包括”,在权利要求中用作衔接词所解释的那样。此外,使用在权利要求书的说明书中的任何一个术语“或者”是要表示“非排它性的或者”。

本领域技术人员还可以了解到本发明实施例列出的各种说明性逻辑块(illustrative logical block),单元,和步骤可以通过电子硬件、电脑软件,或两者的结合进行实现。为清楚展示硬件和软件的可替换性(interchangeability),上述的各种说明性部件(illustrative components),单元和步骤已经通用地描述了它们的功能。这样的功能是通过硬件还是软件来实现取决于特定的应用和整个系统的设计要求。本领域技术人员可以对于每种特定的应用,可以使用各种方法实现所述的功能,但这种实现不应被理解为超出本发明实施例保护的范围。

本发明实施例中所描述的各种说明性的逻辑块,或单元都可以通过通用处理器,数字信号处理器,专用集成电路(ASIC),现场可编程门阵列或其它可编程逻辑装置,离散门或晶体管逻辑,离散硬件部件,或上述任何组合的设计来实现或操作所描述的功能。通用处理器可以为微处理器,可选地,该通用处理器也可以为任何传统的处理器、控制器、微控制器或状态机。处理器也可以通过计算装置的组合来实现,例如数字信号处理器和微处理器,多个微处理器,一个或多个微处理器联合一个数字信号处理器核,或任何其它类似的配置来实现。

本发明实施例中所描述的方法或算法的步骤可以直接嵌入硬件、处理器执行的软件模块、或者这两者的结合。软件模块可以存储于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动磁盘、CD-ROM或本领域中其它任意形式的存储媒介中。示例性地,存储媒介可以与处理器连接,以使得处理器可以从存储媒介中读取信息,并可以向存储媒介存写信息。可选地,存储媒介还可以集成到处理器中。处理器和存储媒介可以设置于ASIC中,ASIC可以设置于用户终端中。可选地,处理器和存储媒介也可以设置于用户终端中的不同的部件中。

在一个或多个示例性的设计中,本发明实施例所描述的上述功能可以在硬件、软件、固件或这三者的任意组合来实现。如果在软件中实现,这些功能可以存储与电脑可读的媒介上,或以一个或多个指令或代码形式传输于电脑可读的媒介上。电脑可读媒介包括电脑存储媒介和便于使得让电脑程序从一个地方转移到其它地方的通信媒介。存储媒介可以是任何通用或特殊电脑可以接入访问的可用媒体。例如,这样的电脑可读媒体可以包括但不限于RAM、ROM、EEPROM、CD-ROM或其它光盘存储、磁盘存储或其它磁性存储装置,或其它任何可以用于承载或存储以指令或数据结构和其它可被通用或特殊电脑、或通用或特殊处理器读取形式的程序代码的媒介。此外,任何连接都可以被适当地定义为电脑可读媒介,例如,如果软件是从一个网站站点、服务器或其它远程资源通过一个同轴电缆、光纤电缆、双绞线、数字用户线(DSL)或以例如红外、无线和微波等无线方式传输的也被包含在所定义的电脑可读媒介中。所述的碟片(disk)和磁盘(disc)包括压缩磁盘、镭射盘、光盘、DVD、软盘和蓝光光盘,磁盘通常以磁性复制数据,而碟片通常以激光进行光学复制数据。上述的组合也可以包含在电脑可读媒介中。

以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

相关技术
  • 用于增强存储设备的服务质量的存储系统、方法和非暂态计算机可读介质
  • 用于多业务融合平台的通信方法、设备、系统及存储介质
  • 一种用于化妆间盒子的交易方法、系统、电子设备及存储介质
  • 一种用于存储系统之间的信息传输方法、装置及介质
  • 用于摄像画图机的图像处理方法、系统、设备和存储介质
  • 网络游戏系统、服务器、非法行为防止方法,非法行为检测方法,信息存储介质和程序
  • 防止非法设备接入方法、装置、系统及存储介质
技术分类

06120116512855