实现ECU的安全访问方法、ECU及上位机.pdf

上传人:大师****2 文档编号:624266 上传时间:2018-02-26 格式:PDF 页数:12 大小:884.56KB
返回 下载 相关 举报
摘要
申请专利号:

CN201410309182.0

申请日:

2014.07.01

公开号:

CN104134047A

公开日:

2014.11.05

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效IPC(主分类):G06F 21/62申请日:20140701|||公开

IPC分类号:

G06F21/62(2013.01)I

主分类号:

G06F21/62

申请人:

潍柴动力股份有限公司

发明人:

王欣伟; 王冰; 张坤明; 艾聪; 张国梁

地址:

261205 山东省潍坊市高新技术产业开发区福寿东街197号甲

优先权:

专利代理机构:

北京集佳知识产权代理有限公司 11227

代理人:

王宝筠

PDF下载: PDF下载
内容摘要

本申请提供了实现ECU的安全访问方法、ECU及上位机,一种方法应用于ECU上,该方法包括:响应于接收上位机的安全访问请求,生成随机数并发送给所述上位机;依据所述随机数和预先设置的链接变量的移位参数来计算第一MD5值,并将所述第一MD5值与所述上位机返回的第二MD5值进行比较;根据比较结果进行安全访问控制。在本申请中,引入了移位参数,利用该移位参数对MD5算法中的链接变量进行了移位,使得MD5算法更加灵活,同时,因为采用改进的MD5算法实现安全访问,也使得上位机对ECU的访问较为安全,并且提高了ECU安全访问的灵活性和可操控性。

权利要求书

1.  一种实现ECU的安全访问方法,其特征在于,该方法应用于ECU上,包括:
响应于接收上位机的安全访问请求,生成随机数并发送给所述上位机;
依据所述随机数和预先设置的链接变量的移位参数来计算第一MD5值,并将所述第一MD5值与所述上位机返回的第二MD5值进行比较;
根据比较结果进行安全访问控制。

2.
  根据权利要求1所述的方法,其特征在于,所述根据比较结果进行安全访问控制,包括:
判断所述第一MD5值与所述第二MD5值是否相等,如果是,则通过所述上位机的安全访问请求,如果否,则拒绝所述上位机的安全访问请求。

3.
  根据权利要求1所述的方法,其特征在于,所述依据所述随机数和预先设置的链接变量的移位参数来计算第一MD5值,包括:
将所述随机数确定为MD5算法的输入参数;
将所述移位参数对32进行取整,以得到移位的位数;
将所述MD5算法中的链接变量循环左移所述位数位;
利用所述输入参数和移位后的链接变量来计算所述第一MD5值。

4.
  一种实现ECU的安全访问方法,其特征在于,该方法应用于上位机中,包括:
向ECU发送安全访问请求;
接收所述ECU响应于安全访问请求返回的随机数;
依据所述随机数和预先设置的链接变量的移位参数来计算第二MD5值,并将所述第二MD5值发送给所述ECU,以便所述ECU依据所述第一MD5值和第二MD5值的比较结果进行安全访问控制。

5.
  根据权利要求1所述的方法,其特征在于,所述依据所述随机数和预先设置的链接变量的移位参数来计算第二MD5值,包括:
将所述随机数确定为MD5算法的输入参数;
将所述移位参数对32进行取整,以得到移位的位数;
将所述MD5算法中的链接变量循环左移所述位数位;
利用所述输入参数和移位后的链接变量来计算所述第二MD5值。

6.
  一种ECU,其特征在于,该ECU包括:
生成单元,用于响应于接收上位机的安全访问请求,生成随机数并发送给所述上位机;
第一计算单元,用于依据所述随机数和预先设置的链接变量的移位参数来计算第一MD5值;
比较单元,用于将所述第一MD5值与所述上位机返回的第二MD5值进行比较;
安全访问控制单元,用于根据比较结果进行安全访问控制。

7.
  根据权利要求6所述的装置,其特征在于,所述安全访问控制单元包括:
判断模块,用于判断所述第一MD5值与所述第二MD5值是否相等;
第一控制模块,用于在所述判断模块的结果为是的情况下,通过所述上位机的安全访问请求;
第二控制模块,用于在所述判断模块的结果为否的情况下,拒绝所述上位机的安全访问请求。

8.
  根据权利要求6所述的ECU,其特征在于,所述第一计算单元包括:
第一确定模块,用于将所述随机数确定为MD5算法的输入参数;
第一取整模块,用于将所述移位参数对32进行取整,以得到移位的位数;
第一移位模块,用于将所述MD5算法中的链接变量循环左移所述位数位;
第一计算模块,用于利用所述输入参数和移位后的链接变量来计算所述第一MD5值。

9.
  一种上位机,其特征在于,包括:
发送请求单元,用于向ECU发送安全访问请求;
接收单元,用于接收所述ECU响应于安全访问请求返回的随机数;
第二计算单元,用于依据所述随机数和预先设置的链接变量的移位参数来计算第二MD5值;
发送MD5值单元,用于将所述第二MD5值发送给所述ECU,以便所述ECU依据所述第一MD5值和第二MD5值的比较结果进行安全访问控制。

10.
  根据权利要求9所述的上位机,其特征在于,所述第二计算单元包括:
第二确定模块,用于将所述随机数确定为MD5算法的输入参数;
第二取整模块,用于将所述移位参数对32进行取整,以得到移位的位数;
第二移位模块,用于将所述MD5算法中的链接变量循环左移所述位数位;
第二计算模块,用于利用所述输入参数和移位后的链接变量来计算所述第二MD5值。

说明书

实现ECU的安全访问方法、ECU及上位机
技术领域
本申请涉及网络数据处理领域,特别涉及实现ECU的安全访问方法、ECU及上位机。
背景技术
ECU(电子控制单元,Electronic Contol Unit),又称“行车电脑”、“车载电脑”等。ECU和普通的电脑一样,由微处理器(CPU)、存储器(ROM、RAM)、输入\输出接口(I/O)、模数转换器(A/D)以及整形、驱动等大规模集成电路组成。也因此对于ECU的安全访问就显得至关重要,而现有技术并不存在一种能够有效控制对ECU的安全访问的方案。
发明内容
本申请所要解决的技术问题是提供一种实现ECU的安全访问方法,用以解决现有技术中无法实现对ECU进行安全访问的技术问题,从而提高ECU访问的安全性。
本申请还提供了一种ECU及上位机,用以保证上述方法在实际中的实现及应用。
为了解决上述问题,本申请公开了一种实现ECU的安全访问方法,该方法应用于ECU上,包括:
响应于接收上位机的安全访问请求,生成随机数并发送给所述上位机;
依据所述随机数和预先设置的链接变量的移位参数来计算第一MD5值,并将所述第一MD5值与所述上位机返回的第二MD5值进行比较;
根据比较结果进行安全访问控制。
可选的,所述根据比较结果进行安全访问控制,包括:
判断所述第一MD5值与所述第二MD5值是否相等,如果是,则通 过所述上位机的安全访问请求,如果否,则拒绝所述上位机的安全访问请求。
可选的,所述依据所述随机数和预先设置的链接变量的移位参数来计算第一MD5值,包括:
将所述随机数确定为MD5算法的输入参数;
将所述移位参数对32进行取整,以得到移位的位数;
将所述MD5算法中的链接变量循环左移所述位数位;
利用所述输入参数和移位后的链接变量来计算所述第一MD5值。
本申请公开了一种ECU,包括:
生成单元,用于响应于接收上位机的安全访问请求,生成随机数并发送给所述上位机;
第一计算单元,用于依据所述随机数和预先设置的链接变量的移位参数来计算第一MD5值;
比较单元,用于将所述第一MD5值与所述上位机返回的第二MD5值进行比较;
安全访问控制单元,用于根据比较结果进行安全访问控制。
可选的,所述安全访问控制单元包括:
判断模块,用于判断所述第一MD5值与所述第二MD5值是否相等;
第一控制模块,用于在所述判断模块的结果为是的情况下,通过所述上位机的安全访问请求;
第二控制模块,用于在所述判断模块的结果为否的情况下,拒绝所述上位机的安全访问请求。
可选的,所述第一计算单元包括:
第一确定模块,用于将所述随机数确定为MD5算法的输入参数;
第一取整模块,用于将所述移位参数对32进行取整,以得到移位的位数;
第一移位模块,用于将所述MD5算法中的链接变量循环左移所述位数位;
第一计算模块,用于利用所述输入参数和移位后的链接变量来计算所 述第一MD5值。
本申请还公开了另一种实现ECU的安全访问方法,该方法应用于上位机中,包括:
向ECU发送安全访问请求;
接收所述ECU响应于安全访问请求返回的随机数;
依据所述随机数和预先设置的链接变量的移位参数来计算第二MD5值,并将所述第二MD5值发送给所述ECU,以便所述ECU依据所述第一MD5值和第二MD5值的比较结果进行安全访问控制。
可选的,所述依据所述随机数和预先设置的链接变量的移位参数来计算第二MD5值,包括:
将所述随机数确定为MD5算法的输入参数;
将所述移位参数对32进行取整,以得到移位的位数;
将所述MD5算法中的链接变量循环左移所述位数位;
利用所述输入参数和移位后的链接变量来计算所述第二MD5值。
本申请还公开了一种上位机,包括:
发送请求单元,用于向ECU发送安全访问请求;
接收单元,用于接收所述ECU响应于安全访问请求返回的随机数;
第二计算单元,用于依据所述随机数和预先设置的链接变量的移位参数来计算第二MD5值;
发送MD5值单元,用于将所述第二MD5值发送给所述ECU,以便所述ECU依据所述第一MD5值和第二MD5值的比较结果进行安全访问控制。
可选的,所述第二计算单元包括:
第二确定模块,用于将所述随机数确定为MD5算法的输入参数;
第二取整模块,用于将所述移位参数对32进行取整,以得到移位的位数;
第二移位模块,用于将所述MD5算法中的链接变量循环左移所述位数位;
第二计算模块,用于利用所述输入参数和移位后的链接变量来计算所 述第二MD5值。
与现有技术相比,本申请包括以下优点:
在本申请中,引入了移位参数,利用预先设置的移位参数对MD5算法中的链接变量进行了移位,使得MD5算法更加灵活,同时,因为采用改进的MD5算法实现安全访问,也使得上位机对ECU的访问较为安全,并且提高了ECU安全访问的灵活性和可操控性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请的一种实现ECU的安全访问方法实施例1的流程图;
图2是本申请的一种实现ECU的安全访问方法实施例2的流程图;
图3是本申请的一种ECU实施例的结构框图;
图4是本申请的一种上位机的实施例的结构框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请可用于众多通用或专用的计算装置环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器装置、包括以上任何装置或设备的分布式计算环境等等。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布 式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
参考图1,示出了本申请一种实现ECU的安全访问方法实施例1的流程图,可以包括以下步骤:
步骤101:ECU响应于接收上位机的安全访问请求,生成随机数并发送给所述上位机。
在实际英语中,用户如果触发了对ECU的安全访问请求,上位机将响应于用户发送的安全访问请求,再将安全访问请求发送给ECU,ECU在接收到对自己的安全访问请求之后,会生成一随机数,并且为了保证上位机也能根据该随机数计算MD5值,还会将随机数发送给上位机。
其中,MD5(Message Digest Algorithm5,)算法主要用于确保信息传输完整一致,它是计算机广泛使用的杂凑算法之一。而杂凑算法的基础原理是将数据(如汉字)运算为另一个固定长度值。
步骤102:ECU依据所述随机数和预先设置的链接变量的移位参数来计算第一MD5值。
ECU在生成随机数之后,将该随机数作为MD5算法中的输入参数,并将预先设置的移位参数args决定的位数来对链接变量进行移位,再按照输入参数和移位后的链接变量来利用MD5算法计算第一MD5值。
在具体实现时,步骤102在实际应用中具体可以包括:
步骤A1:ECU将所述随机数确定为MD5算法的输入参数。
步骤A2:ECU将所述移位参数对32进行取整,以得到移位的位数;
因为在MD5算法中,有四个32位被称作链接变量(Chaining Variable)的整数参数,他们分别为:A=0x01234567,B=0x89abcdef,C=0xfedcba98,D=0x76543210。例如已知移位参数args,对于十六进制来讲,那么移位数就是args的值对16取整,即int s=args%32。对哪一个数值进行取整决定与计算机的操作倍数。
步骤A3:ECU将所述MD5算法中的链接变量循环左移所述位数位;
在得到链接变量需要移位的位数之后,即将四个链接变量循环左移所述位数位。以上面的例子来讲,移位后的链接变量分别为:A=0x67452301(A=A<<s|A>>(32-s)),B=0xefcdab89(B=B<<s|B>>(32-s)),C=0x98badcfe(C=C<<s|C>>(32-s)),D=0x10325476(D=D<<s|D>>(32-s))。
步骤A4:ECU利用所述输入参数和移位后的链接变量来计算所述第一MD5值。
ECU再利用输入参数和移位后的链接变量来计算第一MD5值。
具体在实现时,可以在编程时将UInt32[]bits的第args%4个值转化为一个长度为4的byte[]数组,作为返回值。如果计算机为十六进制,当args为0或者16的倍数时,采用本实施例的计算结果就会与未进行移位操作的MD5算法的结果重合,因此,本领域技术人员可以将MD5的四轮主循环中的第一个循环中FF第一步的“循环左移s11”与最后一步的“左移s14”互换,互换后,在第一个循环中FF第一步为循环左移s14位,最后一步则为左循环s11位。
步骤103:ECU将所述第一MD5值与所述上位机返回的第二MD5值进行比较。
ECU在计算出第一MD5值之和,将自己计算得到的第一MD5值与上位机返回的第二MD5值进行比较,其中,上位机计算第二MD5值的方式与步骤102中的介绍相同。
步骤104:ECU根据比较结果进行安全访问控制。
在不同的实施例中,步骤104在实际应用中具体可以包括:
步骤B1:判断所述第一MD5值与所述第二MD5值是否相等,如果是,则进入步骤B2,如果否,则进入步骤B3。
ECU判断第一MD5值和第二MD5值是否相等,如果相等,说明本次访问是安全的,则通过上位机的安全访问请求。如果不等,则说明本次访问可能不是安全的,此时则拒绝上位机的安全访问请求。
步骤B2:通过所述上位机的安全访问请求。
步骤B3:拒绝所述上位机的安全访问请求。
采用本发明实施例,通过预先设置的移位参数,可以对MD5算法中的链接变量进行了移位,使得MD5算法更加灵活,同时,因为采用改进的MD5算法实现安全访问,也使得上位机对ECU的访问较为安全,并且提高了ECU安全访问的灵活性和可操控性。
参考图2,示出了本申请一种ECU的安全访问方法实施例2的流程图,可以包括以下步骤:
步骤201:上位机向ECU发送安全访问请求。
上位机在接收到用户触发的对ECU的访问时,将安全访问请求发送给ECU。
步骤202:上位机接收所述ECU响应于安全访问请求返回的随机数。
上位机接收到ECU返回的随机数。
步骤203:上位机依据所述随机数和链接变量的移位参数来计算第二MD5值。
上位机将该随机数作为MD5算法中中的输入参数,并依据输入参数和链接变量的移位参数来计算第二MD5值。具体的计算方式可以参考步骤102的介绍,在此不再赘述。
其中,在不同的实施例中,所述步骤203具体可以包括:
步骤C1:将所述随机数确定为MD5算法的输入参数;
步骤C2:将所述移位参数对32进行取整,以得到移位的位数。
步骤C3:将所述MD5算法中的链接变量循环左移所述位数位。
步骤C4:利用所述输入参数和移位后的链接变量来计算所述第二MD5值。
步骤204:上位机将所述第二MD5值发送给所述ECU,以便所述ECU依据所述第一MD5值和第二MD5值的比较结果进行安全访问控制。
上位机再将第二MD5值发送给所述ECU,ECU依据所述第一MD5值和第二MD5值的比较结果进行安全访问控制,具体的安全访问控制过程可以参考步骤104中的介绍,在此不再赘述。
需要说明的是,本实施例与前一个实施例的不同之处仅在于执行主 体,因此,未尽之处可以参考前一个实施例的相关介绍。
采用本发明实施例,利用预先设置的移位参数,对MD5算法中的链接变量进行了移位,使得MD5算法更加灵活,同时,因为采用改进的MD5算法实现安全访问,也使得上位机对ECU的访问较为安全,并且提高了ECU安全访问的灵活性和可操控性。
对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
与上述本申请一种实现ECU的安全访问方法实施例1所提供的方法相对应,参见图3,本申请还提供了一种ECU实施例,在本实施例中,可以包括:
生成单元301,用于响应于接收上位机的安全访问请求,生成随机数并发送给所述上位机。
第一计算单元302,用于依据所述随机数和预先设置的链接变量的移位参数来计算第一MD5值。
在不同的实施例中,所述第一计算单元302具体可以包括:
第一确定模块,用于将所述随机数确定为MD5算法的输入参数;第一取整模块,用于将所述移位参数对32进行取整,以得到移位的位数;第一移位模块,用于将所述MD5算法中的链接变量循环左移所述位数位;以及,第一计算模块,用于利用所述输入参数和移位后的链接变量来计算所述第一MD5值。
比较单元303,用于将所述第一MD5值与所述上位机返回的第二MD5值进行比较。
安全访问控制单元304,用于根据比较结果进行安全访问控制。
在不同的实施例中,所述安全访问控制单元304具体可以包括:
判断模块,用于判断所述第一MD5值与所述第二MD5值是否相等; 第一控制模块,用于在所述判断模块的结果为是的情况下,通过所述上位机的安全访问请求;以及,第二控制模块,用于在所述判断模块的结果为否的情况下,拒绝所述上位机的安全访问请求。
本实施例中的ECU对MD5算法中的链接变量进行了移位,使得MD5算法更加灵活,同时,因为采用改进的MD5算法实现安全访问,也使得上位机对ECU的访问较为安全,并且提高了ECU安全访问的灵活性和可操控性。
与上述本申请一种实现ECU的安全访问方法实施例2所提供的方法相对应,参见图4,本申请还提供了一种上位机实施例,在本实施例中,可以包括:
发送请求单元401,用于向ECU发送安全访问请求。
接收单元402,用于接收所述ECU响应于安全访问请求返回的随机数。
第二计算单元403,用于依据所述随机数和预先设置的链接变量的移位参数来计算第二MD5值。
在不同的实施例中,所述第二计算单元403具体可以包括:
第二确定模块,用于将所述随机数确定为MD5算法的输入参数;第二取整模块,用于将所述移位参数对32进行取整,以得到移位的位数;第二移位模块,用于将所述MD5算法中的链接变量循环左移所述位数位;以及,第二计算模块,用于利用所述输入参数和移位后的链接变量来计算所述第二MD5值。
发送MD5值单元404,用于将所述第二MD5值发送给所述ECU,以便所述ECU依据所述第一MD5值和第二MD5值的比较结果进行安全访问控制。
本实施例中的上位机对MD5算法中的链接变量进行了移位,使得MD5算法更加灵活,同时,因为采用改进的MD5算法实现安全访问,也使得上位机对ECU的访问较为安全,并且提高了ECU安全访问的灵活性和可操控性。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本申请所提供的一种ECU的安全访问方法、ECU及上位机进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

实现ECU的安全访问方法、ECU及上位机.pdf_第1页
第1页 / 共12页
实现ECU的安全访问方法、ECU及上位机.pdf_第2页
第2页 / 共12页
实现ECU的安全访问方法、ECU及上位机.pdf_第3页
第3页 / 共12页
点击查看更多>>
资源描述

《实现ECU的安全访问方法、ECU及上位机.pdf》由会员分享,可在线阅读,更多相关《实现ECU的安全访问方法、ECU及上位机.pdf(12页珍藏版)》请在专利查询网上搜索。

1、10申请公布号CN104134047A43申请公布日20141105CN104134047A21申请号201410309182022申请日20140701G06F21/6220130171申请人潍柴动力股份有限公司地址261205山东省潍坊市高新技术产业开发区福寿东街197号甲72发明人王欣伟王冰张坤明艾聪张国梁74专利代理机构北京集佳知识产权代理有限公司11227代理人王宝筠54发明名称实现ECU的安全访问方法、ECU及上位机57摘要本申请提供了实现ECU的安全访问方法、ECU及上位机,一种方法应用于ECU上,该方法包括响应于接收上位机的安全访问请求,生成随机数并发送给所述上位机;依据所述随。

2、机数和预先设置的链接变量的移位参数来计算第一MD5值,并将所述第一MD5值与所述上位机返回的第二MD5值进行比较;根据比较结果进行安全访问控制。在本申请中,引入了移位参数,利用该移位参数对MD5算法中的链接变量进行了移位,使得MD5算法更加灵活,同时,因为采用改进的MD5算法实现安全访问,也使得上位机对ECU的访问较为安全,并且提高了ECU安全访问的灵活性和可操控性。51INTCL权利要求书2页说明书7页附图2页19中华人民共和国国家知识产权局12发明专利申请权利要求书2页说明书7页附图2页10申请公布号CN104134047ACN104134047A1/2页21一种实现ECU的安全访问方法,。

3、其特征在于,该方法应用于ECU上,包括响应于接收上位机的安全访问请求,生成随机数并发送给所述上位机;依据所述随机数和预先设置的链接变量的移位参数来计算第一MD5值,并将所述第一MD5值与所述上位机返回的第二MD5值进行比较;根据比较结果进行安全访问控制。2根据权利要求1所述的方法,其特征在于,所述根据比较结果进行安全访问控制,包括判断所述第一MD5值与所述第二MD5值是否相等,如果是,则通过所述上位机的安全访问请求,如果否,则拒绝所述上位机的安全访问请求。3根据权利要求1所述的方法,其特征在于,所述依据所述随机数和预先设置的链接变量的移位参数来计算第一MD5值,包括将所述随机数确定为MD5算法。

4、的输入参数;将所述移位参数对32进行取整,以得到移位的位数;将所述MD5算法中的链接变量循环左移所述位数位;利用所述输入参数和移位后的链接变量来计算所述第一MD5值。4一种实现ECU的安全访问方法,其特征在于,该方法应用于上位机中,包括向ECU发送安全访问请求;接收所述ECU响应于安全访问请求返回的随机数;依据所述随机数和预先设置的链接变量的移位参数来计算第二MD5值,并将所述第二MD5值发送给所述ECU,以便所述ECU依据所述第一MD5值和第二MD5值的比较结果进行安全访问控制。5根据权利要求1所述的方法,其特征在于,所述依据所述随机数和预先设置的链接变量的移位参数来计算第二MD5值,包括将。

5、所述随机数确定为MD5算法的输入参数;将所述移位参数对32进行取整,以得到移位的位数;将所述MD5算法中的链接变量循环左移所述位数位;利用所述输入参数和移位后的链接变量来计算所述第二MD5值。6一种ECU,其特征在于,该ECU包括生成单元,用于响应于接收上位机的安全访问请求,生成随机数并发送给所述上位机;第一计算单元,用于依据所述随机数和预先设置的链接变量的移位参数来计算第一MD5值;比较单元,用于将所述第一MD5值与所述上位机返回的第二MD5值进行比较;安全访问控制单元,用于根据比较结果进行安全访问控制。7根据权利要求6所述的装置,其特征在于,所述安全访问控制单元包括判断模块,用于判断所述第。

6、一MD5值与所述第二MD5值是否相等;第一控制模块,用于在所述判断模块的结果为是的情况下,通过所述上位机的安全访问请求;第二控制模块,用于在所述判断模块的结果为否的情况下,拒绝所述上位机的安全访权利要求书CN104134047A2/2页3问请求。8根据权利要求6所述的ECU,其特征在于,所述第一计算单元包括第一确定模块,用于将所述随机数确定为MD5算法的输入参数;第一取整模块,用于将所述移位参数对32进行取整,以得到移位的位数;第一移位模块,用于将所述MD5算法中的链接变量循环左移所述位数位;第一计算模块,用于利用所述输入参数和移位后的链接变量来计算所述第一MD5值。9一种上位机,其特征在于,。

7、包括发送请求单元,用于向ECU发送安全访问请求;接收单元,用于接收所述ECU响应于安全访问请求返回的随机数;第二计算单元,用于依据所述随机数和预先设置的链接变量的移位参数来计算第二MD5值;发送MD5值单元,用于将所述第二MD5值发送给所述ECU,以便所述ECU依据所述第一MD5值和第二MD5值的比较结果进行安全访问控制。10根据权利要求9所述的上位机,其特征在于,所述第二计算单元包括第二确定模块,用于将所述随机数确定为MD5算法的输入参数;第二取整模块,用于将所述移位参数对32进行取整,以得到移位的位数;第二移位模块,用于将所述MD5算法中的链接变量循环左移所述位数位;第二计算模块,用于利用。

8、所述输入参数和移位后的链接变量来计算所述第二MD5值。权利要求书CN104134047A1/7页4实现ECU的安全访问方法、ECU及上位机技术领域0001本申请涉及网络数据处理领域,特别涉及实现ECU的安全访问方法、ECU及上位机。背景技术0002ECU电子控制单元,ELECTRONICCONTOLUNIT,又称“行车电脑”、“车载电脑”等。ECU和普通的电脑一样,由微处理器CPU、存储器ROM、RAM、输入输出接口I/O、模数转换器A/D以及整形、驱动等大规模集成电路组成。也因此对于ECU的安全访问就显得至关重要,而现有技术并不存在一种能够有效控制对ECU的安全访问的方案。发明内容0003本。

9、申请所要解决的技术问题是提供一种实现ECU的安全访问方法,用以解决现有技术中无法实现对ECU进行安全访问的技术问题,从而提高ECU访问的安全性。0004本申请还提供了一种ECU及上位机,用以保证上述方法在实际中的实现及应用。0005为了解决上述问题,本申请公开了一种实现ECU的安全访问方法,该方法应用于ECU上,包括0006响应于接收上位机的安全访问请求,生成随机数并发送给所述上位机;0007依据所述随机数和预先设置的链接变量的移位参数来计算第一MD5值,并将所述第一MD5值与所述上位机返回的第二MD5值进行比较;0008根据比较结果进行安全访问控制。0009可选的,所述根据比较结果进行安全访。

10、问控制,包括0010判断所述第一MD5值与所述第二MD5值是否相等,如果是,则通过所述上位机的安全访问请求,如果否,则拒绝所述上位机的安全访问请求。0011可选的,所述依据所述随机数和预先设置的链接变量的移位参数来计算第一MD5值,包括0012将所述随机数确定为MD5算法的输入参数;0013将所述移位参数对32进行取整,以得到移位的位数;0014将所述MD5算法中的链接变量循环左移所述位数位;0015利用所述输入参数和移位后的链接变量来计算所述第一MD5值。0016本申请公开了一种ECU,包括0017生成单元,用于响应于接收上位机的安全访问请求,生成随机数并发送给所述上位机;0018第一计算单。

11、元,用于依据所述随机数和预先设置的链接变量的移位参数来计算第一MD5值;0019比较单元,用于将所述第一MD5值与所述上位机返回的第二MD5值进行比较;0020安全访问控制单元,用于根据比较结果进行安全访问控制。说明书CN104134047A2/7页50021可选的,所述安全访问控制单元包括0022判断模块,用于判断所述第一MD5值与所述第二MD5值是否相等;0023第一控制模块,用于在所述判断模块的结果为是的情况下,通过所述上位机的安全访问请求;0024第二控制模块,用于在所述判断模块的结果为否的情况下,拒绝所述上位机的安全访问请求。0025可选的,所述第一计算单元包括0026第一确定模块,。

12、用于将所述随机数确定为MD5算法的输入参数;0027第一取整模块,用于将所述移位参数对32进行取整,以得到移位的位数;0028第一移位模块,用于将所述MD5算法中的链接变量循环左移所述位数位;0029第一计算模块,用于利用所述输入参数和移位后的链接变量来计算所述第一MD5值。0030本申请还公开了另一种实现ECU的安全访问方法,该方法应用于上位机中,包括0031向ECU发送安全访问请求;0032接收所述ECU响应于安全访问请求返回的随机数;0033依据所述随机数和预先设置的链接变量的移位参数来计算第二MD5值,并将所述第二MD5值发送给所述ECU,以便所述ECU依据所述第一MD5值和第二MD5。

13、值的比较结果进行安全访问控制。0034可选的,所述依据所述随机数和预先设置的链接变量的移位参数来计算第二MD5值,包括0035将所述随机数确定为MD5算法的输入参数;0036将所述移位参数对32进行取整,以得到移位的位数;0037将所述MD5算法中的链接变量循环左移所述位数位;0038利用所述输入参数和移位后的链接变量来计算所述第二MD5值。0039本申请还公开了一种上位机,包括0040发送请求单元,用于向ECU发送安全访问请求;0041接收单元,用于接收所述ECU响应于安全访问请求返回的随机数;0042第二计算单元,用于依据所述随机数和预先设置的链接变量的移位参数来计算第二MD5值;0043。

14、发送MD5值单元,用于将所述第二MD5值发送给所述ECU,以便所述ECU依据所述第一MD5值和第二MD5值的比较结果进行安全访问控制。0044可选的,所述第二计算单元包括0045第二确定模块,用于将所述随机数确定为MD5算法的输入参数;0046第二取整模块,用于将所述移位参数对32进行取整,以得到移位的位数;0047第二移位模块,用于将所述MD5算法中的链接变量循环左移所述位数位;0048第二计算模块,用于利用所述输入参数和移位后的链接变量来计算所述第二MD5值。0049与现有技术相比,本申请包括以下优点0050在本申请中,引入了移位参数,利用预先设置的移位参数对MD5算法中的链接变说明书CN。

15、104134047A3/7页6量进行了移位,使得MD5算法更加灵活,同时,因为采用改进的MD5算法实现安全访问,也使得上位机对ECU的访问较为安全,并且提高了ECU安全访问的灵活性和可操控性。附图说明0051为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。0052图1是本申请的一种实现ECU的安全访问方法实施例1的流程图;0053图2是本申请的一种实现ECU的安全访问方法实施例2的流程图;0054图3是本申。

16、请的一种ECU实施例的结构框图;0055图4是本申请的一种上位机的实施例的结构框图。具体实施方式0056下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。0057本申请可用于众多通用或专用的计算装置环境或配置中。例如个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器装置、包括以上任何装置或设备的分布式计算环境等等。0058本申请可以在由计算机执行的计算机可执行指令的一般。

17、上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。0059参考图1,示出了本申请一种实现ECU的安全访问方法实施例1的流程图,可以包括以下步骤0060步骤101ECU响应于接收上位机的安全访问请求,生成随机数并发送给所述上位机。0061在实际英语中,用户如果触发了对ECU的安全访问请求,上位机将响应于用户发送的安全访问请求,再将安全访问。

18、请求发送给ECU,ECU在接收到对自己的安全访问请求之后,会生成一随机数,并且为了保证上位机也能根据该随机数计算MD5值,还会将随机数发送给上位机。0062其中,MD5MESSAGEDIGESTALGORITHM5,算法主要用于确保信息传输完整一致,它是计算机广泛使用的杂凑算法之一。而杂凑算法的基础原理是将数据如汉字运算为另一个固定长度值。0063步骤102ECU依据所述随机数和预先设置的链接变量的移位参数来计算第一MD5值。说明书CN104134047A4/7页70064ECU在生成随机数之后,将该随机数作为MD5算法中的输入参数,并将预先设置的移位参数ARGS决定的位数来对链接变量进行移位。

19、,再按照输入参数和移位后的链接变量来利用MD5算法计算第一MD5值。0065在具体实现时,步骤102在实际应用中具体可以包括0066步骤A1ECU将所述随机数确定为MD5算法的输入参数。0067步骤A2ECU将所述移位参数对32进行取整,以得到移位的位数;0068因为在MD5算法中,有四个32位被称作链接变量CHAININGVARIABLE的整数参数,他们分别为A0X01234567,B0X89ABCDEF,C0XFEDCBA98,D0X76543210。例如已知移位参数ARGS,对于十六进制来讲,那么移位数就是ARGS的值对16取整,即INTSARGS32。对哪一个数值进行取整决定与计算机的。

20、操作倍数。0069步骤A3ECU将所述MD5算法中的链接变量循环左移所述位数位;0070在得到链接变量需要移位的位数之后,即将四个链接变量循环左移所述位数位。以上面的例子来讲,移位后的链接变量分别为A0X67452301AA32S,B0XEFCDAB89BB32S,C0X98BADCFECC32S,D0X10325476DD32S。0071步骤A4ECU利用所述输入参数和移位后的链接变量来计算所述第一MD5值。0072ECU再利用输入参数和移位后的链接变量来计算第一MD5值。0073具体在实现时,可以在编程时将UINT32BITS的第ARGS4个值转化为一个长度为4的BYTE数组,作为返回值。。

21、如果计算机为十六进制,当ARGS为0或者16的倍数时,采用本实施例的计算结果就会与未进行移位操作的MD5算法的结果重合,因此,本领域技术人员可以将MD5的四轮主循环中的第一个循环中FF第一步的“循环左移S11”与最后一步的“左移S14”互换,互换后,在第一个循环中FF第一步为循环左移S14位,最后一步则为左循环S11位。0074步骤103ECU将所述第一MD5值与所述上位机返回的第二MD5值进行比较。0075ECU在计算出第一MD5值之和,将自己计算得到的第一MD5值与上位机返回的第二MD5值进行比较,其中,上位机计算第二MD5值的方式与步骤102中的介绍相同。0076步骤104ECU根据比较。

22、结果进行安全访问控制。0077在不同的实施例中,步骤104在实际应用中具体可以包括0078步骤B1判断所述第一MD5值与所述第二MD5值是否相等,如果是,则进入步骤B2,如果否,则进入步骤B3。0079ECU判断第一MD5值和第二MD5值是否相等,如果相等,说明本次访问是安全的,则通过上位机的安全访问请求。如果不等,则说明本次访问可能不是安全的,此时则拒绝上位机的安全访问请求。0080步骤B2通过所述上位机的安全访问请求。0081步骤B3拒绝所述上位机的安全访问请求。0082采用本发明实施例,通过预先设置的移位参数,可以对MD5算法中的链接变量进行了移位,使得MD5算法更加灵活,同时,因为采用。

23、改进的MD5算法实现安全访问,也使得上位机对ECU的访问较为安全,并且提高了ECU安全访问的灵活性和可操控性。0083参考图2,示出了本申请一种ECU的安全访问方法实施例2的流程图,可以包括以说明书CN104134047A5/7页8下步骤0084步骤201上位机向ECU发送安全访问请求。0085上位机在接收到用户触发的对ECU的访问时,将安全访问请求发送给ECU。0086步骤202上位机接收所述ECU响应于安全访问请求返回的随机数。0087上位机接收到ECU返回的随机数。0088步骤203上位机依据所述随机数和链接变量的移位参数来计算第二MD5值。0089上位机将该随机数作为MD5算法中中的输。

24、入参数,并依据输入参数和链接变量的移位参数来计算第二MD5值。具体的计算方式可以参考步骤102的介绍,在此不再赘述。0090其中,在不同的实施例中,所述步骤203具体可以包括0091步骤C1将所述随机数确定为MD5算法的输入参数;0092步骤C2将所述移位参数对32进行取整,以得到移位的位数。0093步骤C3将所述MD5算法中的链接变量循环左移所述位数位。0094步骤C4利用所述输入参数和移位后的链接变量来计算所述第二MD5值。0095步骤204上位机将所述第二MD5值发送给所述ECU,以便所述ECU依据所述第一MD5值和第二MD5值的比较结果进行安全访问控制。0096上位机再将第二MD5值发。

25、送给所述ECU,ECU依据所述第一MD5值和第二MD5值的比较结果进行安全访问控制,具体的安全访问控制过程可以参考步骤104中的介绍,在此不再赘述。0097需要说明的是,本实施例与前一个实施例的不同之处仅在于执行主体,因此,未尽之处可以参考前一个实施例的相关介绍。0098采用本发明实施例,利用预先设置的移位参数,对MD5算法中的链接变量进行了移位,使得MD5算法更加灵活,同时,因为采用改进的MD5算法实现安全访问,也使得上位机对ECU的访问较为安全,并且提高了ECU安全访问的灵活性和可操控性。0099对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知。

26、悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。0100与上述本申请一种实现ECU的安全访问方法实施例1所提供的方法相对应,参见图3,本申请还提供了一种ECU实施例,在本实施例中,可以包括0101生成单元301,用于响应于接收上位机的安全访问请求,生成随机数并发送给所述上位机。0102第一计算单元302,用于依据所述随机数和预先设置的链接变量的移位参数来计算第一MD5值。0103在不同的实施例中,所述第一计算单元302具体可以包括01。

27、04第一确定模块,用于将所述随机数确定为MD5算法的输入参数;第一取整模块,用于将所述移位参数对32进行取整,以得到移位的位数;第一移位模块,用于将所述MD5算法中的链接变量循环左移所述位数位;以及,第一计算模块,用于利用所述输入参数和移位后的链接变量来计算所述第一MD5值。0105比较单元303,用于将所述第一MD5值与所述上位机返回的第二MD5值进行比较。说明书CN104134047A6/7页90106安全访问控制单元304,用于根据比较结果进行安全访问控制。0107在不同的实施例中,所述安全访问控制单元304具体可以包括0108判断模块,用于判断所述第一MD5值与所述第二MD5值是否相等。

28、;第一控制模块,用于在所述判断模块的结果为是的情况下,通过所述上位机的安全访问请求;以及,第二控制模块,用于在所述判断模块的结果为否的情况下,拒绝所述上位机的安全访问请求。0109本实施例中的ECU对MD5算法中的链接变量进行了移位,使得MD5算法更加灵活,同时,因为采用改进的MD5算法实现安全访问,也使得上位机对ECU的访问较为安全,并且提高了ECU安全访问的灵活性和可操控性。0110与上述本申请一种实现ECU的安全访问方法实施例2所提供的方法相对应,参见图4,本申请还提供了一种上位机实施例,在本实施例中,可以包括0111发送请求单元401,用于向ECU发送安全访问请求。0112接收单元40。

29、2,用于接收所述ECU响应于安全访问请求返回的随机数。0113第二计算单元403,用于依据所述随机数和预先设置的链接变量的移位参数来计算第二MD5值。0114在不同的实施例中,所述第二计算单元403具体可以包括0115第二确定模块,用于将所述随机数确定为MD5算法的输入参数;第二取整模块,用于将所述移位参数对32进行取整,以得到移位的位数;第二移位模块,用于将所述MD5算法中的链接变量循环左移所述位数位;以及,第二计算模块,用于利用所述输入参数和移位后的链接变量来计算所述第二MD5值。0116发送MD5值单元404,用于将所述第二MD5值发送给所述ECU,以便所述ECU依据所述第一MD5值和第。

30、二MD5值的比较结果进行安全访问控制。0117本实施例中的上位机对MD5算法中的链接变量进行了移位,使得MD5算法更加灵活,同时,因为采用改进的MD5算法实现安全访问,也使得上位机对ECU的访问较为安全,并且提高了ECU安全访问的灵活性和可操控性。0118需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。0119最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体。

31、或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。0120以上对本申请所提供的一种ECU的安全访问方法、ECU及上位机进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为说明书CN104134047A7/7页10对本申请的限制。说明书CN104134047A101/2页11图1图2说明书附图CN104134047A112/2页12图3图4说明书附图CN104134047A12。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 >


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1