Ecu刷写方法及装置的制造方法

文档序号:10555402阅读:523来源:国知局
Ecu刷写方法及装置的制造方法
【专利摘要】本发明公开了一种ECU刷写方法及装置,本发明中上位机刷写模块首先与ECU刷写引导模块约定密钥,之后上位机刷写模块根据密钥对要刷写进ECU中的数据进行加密,形成密文数据,并将密文数据传输给ECU刷写引导模块;最后ECU刷写引导模块根据密钥对接收的密文数据进行解密,并将解密后的数据刷写进ECU,其中,上述密钥随机产生,因此每次刷写,加密后的刷写数据均不相同,无法通过报文记录工具反推刷写数据,即使盗取刷写数据,也无法将其刷写至ECU中,有效地遏制了非法刷写,在很大程度上提高了ECU刷写的保密程度,同时本发明无需增加额外的成本,具有较好的市场应用前景。
【专利说明】
ECU刷写方法及装置
技术领域
[0001 ]本发明涉及汽车电控领域,更具体涉及一种ECU刷写方法及装置。
【背景技术】
[0002] EQJ(Electronic Control Unit)电子控制单元,又称"行车电脑"、"车载电脑"等。 在共轨式蓄压器喷射系统中,ECU通过接收各传感器的信号,借助于喷油器上的电磁阀,让 柴油以正确的喷油压力在正确的喷油点喷射出正确的喷油量,保证柴油机最佳的燃烧比、 雾化和最佳的点火时间,以及良好的经济性和最少的污染排放。
[0003] E⑶中的程序需要严格保密,E⑶程序刷写过程中,按照目前通用的UDS(Unified Diagnostic Service,通用诊断服务,包含指导刷写过程的服务)刷写协议要求,一般均通 过安全校验服务进行加密。那么通过非法手段通过安全校验服务后就能够直接获得刷写数 据。现有技术中没有对刷写数据的格式进行更改,那么只要通过报文记录工具将报文记录 下来就可解析出刷写数据。另外,现有技术方案均是从硬件上进行改进,这就增加了保护成 本。

【发明内容】

[0004] (一)要解决的技术问题
[0005] 本发明要解决的技术问题是如何在不增加硬件成本的前提下,对ECU程序进行保 护,即使刷写数据泄露也无法将刷写数据盗刷至另一块E⑶中。
[0006] (二)技术方案
[0007] 为了解决上述技术问题,本发明提供了一种ECU刷写方法,所述方法包括以下步 骤:
[0008] S1、上位机刷写模块与ECU刷写引导模块约定密钥;其中,所述密钥随机产生;
[0009] S2、所述上位机刷写模块根据所述密钥对要刷写进ECU中的数据进行加密,形成密 文数据,并将所述密文数据传输给所述ECU刷写引导模块;
[0010] S3、所述ECU刷写引导模块根据所述密钥对接收的所述密文数据进行解密,并将解 密后的数据刷写进ECU。
[0011] 优选地,所述步骤S2中进行加密为采用可逆的加密方法进行加密。
[0012] 优选地,所述密钥包括多个随机数。
[0013] 优选地,所述步骤S2中进行加密具体包括以下步骤:
[0014] 所述上位机刷写模块根据所述密钥以及预定算法计算得到一个偏移量;其中所述 预定算法设置于所述上位机刷写模块中;
[0015] 所述上位机刷写模块将所述要刷写进ECU中的数据均加上所述偏移量得到所述密 文数据。
[0016] 优选地,所述步骤S3中进行解密具体包括以下步骤:
[0017] 所述ECU刷写引导模块根据所述密钥以及所述预定算法计算得到所述偏移量;其 中所述预定算法设置于所述ECU刷写引导模块中;
[0018]所述ECU刷写引导模块将其接收的所述密文数据中的每个数据均减去所述偏移 量,得到所述解密后的数据。
[0019] -种ECU刷写装置,所述装置包括上位机刷写模块以及ECU刷写引导模块;所述上 位机刷写模块与所述ECU刷写引导模块进行通信,约定密钥;其中,所述密钥随机产生;
[0020] 所述上位机刷写模块用于根据所述密钥对要刷写进ECU中的数据进行加密,形成 密文数据,并将所述密文数据传输给所述ECU刷写引导模块;
[0021] 所述ECU刷写引导模块用于根据所述密钥对接收的所述密文数据进行解密,并将 解密后的数据刷写进ECU。
[0022] 优选地,所述上位机刷写模块包括加密单元,所述加密单元采用可逆的加密方法 进行加密。
[0023] 优选地,所述密钥包括多个随机数。
[0024] 优选地,所述加密单元还用于根据所述密钥以及预定算法计算得到一个偏移量, 并将所述要刷写进ECU中的数据均加上所述偏移量得到所述密文数据,其中所述预定算法 设置于所述上位机刷写模块中。
[0025] 优选地,所述ECU刷写引导模块包括解密单元,所述解密单元用于根据所述密钥以 及所述预定算法计算得到所述偏移量,并将其接收的所述密文数据中的每个数据均减去所 述偏移量,得到所述解密后的数据,其中所述预定算法设置于所述ECU刷写引导模块中。 [00 26](三)有益效果
[0027]本发明提供了一种ECU刷写方法及装置,本发明中上位机刷写模块首先与ECU刷写 引导模块约定密钥,之后上位机刷写模块根据密钥对要刷写进ECU中的数据进行加密,形成 密文数据,并将密文数据传输给ECU刷写引导模块;最后ECU刷写引导模块根据密钥对接收 的密文数据进行解密,并将解密后的数据刷写进ECU,其中,上述密钥随机产生,因此每次刷 写,加密后的刷写数据均不相同,无法通过报文记录工具反推刷写数据,即使盗取刷写数 据,也无法将其刷写至ECU中,有效地遏制了非法刷写,在很大程度上提高了ECU刷写的保密 程度,同时本发明无需增加额外的成本,具有较好的市场应用前景。
【附图说明】
[0028] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以 根据这些附图获得其他的附图。
[0029] 图1是本发明的E⑶刷写方法的流程图;
[0030] 图2是本发明的一个较佳实施例的E⑶刷写方法的流程图。
【具体实施方式】
[0031] 下面结合附图和实施例对本发明作进一步详细描述。以下实施例用于说明本发 明,但不能用来限制本发明的范围。
[0032] 一种E⑶刷写方法,如图1所示,所述方法包括以下步骤:
[0033] SI、上位机刷写模块与ECU刷写引导模块约定密钥;其中,所述密钥随机产生;
[0034] S2、所述上位机刷写模块根据所述密钥对要刷写进ECU中的数据进行加密,形成密 文数据,并将所述密文数据传输给所述ECU刷写引导模块;
[0035] S3、所述ECU刷写引导模块根据所述密钥对接收的所述密文数据进行解密,并将解 密后的数据刷写进ECU。
[0036] ECU内部Flash分为两个大区,分别为Bootloader( 即ECU刷写引导模块)和EMS区。 其中EMS是ECU的应用程序区;Bootloader是用户更新EMS区的引导加载程序,是系统上电后 运行的第一段软件代码,能够更新程序和数据。本发明所说的刷写过程就是通过 Bootloader 刷写EMS 区。
[0037] 上述密钥随机产生,因此每次刷写,加密后的刷写数据均不相同,无法通过报文记 录工具反推刷写数据,即使盗取刷写数据,也无法将其刷写至ECU中,有效地遏制了非法刷 写,在很大程度上提高了 ECU刷写的保密程度,同时本发明无需增加额外的成本,具有较好 的市场应用前景。
[0038] 进一步地,所述步骤S2中进行加密为采用可逆的加密方法进行加密。优选地,可逆 的加密方法具体包括以下步骤:
[0039] S21、所述上位机刷写模块根据所述密钥以及预定算法计算得到一个偏移量;其中 所述预定算法设置于所述上位机刷写模块中;
[0040] S22、所述上位机刷写模块将所述要刷写进ECU中的数据均加上所述偏移量得到所 述密文数据。其中,密钥包括多个随机数。
[0041 ] 相应的所述步骤S3中进行解密具体包括以下步骤:
[0042] S31、所述ECU刷写引导模块根据所述密钥以及所述预定算法计算得到所述偏移 量;其中所述预定算法设置于所述ECU刷写引导模块中;
[0043] S32、所述ECU刷写引导模块将其接收的所述密文数据中的每个数据均减去所述偏 移量,得到所述解密后的数据。
[0044] 综上,刷写时上位机刷写工具,即上位机刷写模块根据Bootloader中发出的报文, 将所有字节加上某个偏移量或进行其他可逆更改,然后再进行刷写;Bootloader刷写时再 将偏移量移除或解密所用可逆更改后刷写至ECU内存,不同的ECU加密后的报文均不同。采 用这种刷写方式,即使通过报文记录工具将刷写过程记录下来,或者获取程序数据文件,要 想盗刷至别的ECU中,由于无法获知该这块ECU的刷写报文加密方法,也无法刷写成功,有效 地遏制了非法刷写。
[0045] 下面通过一个具体实施例对上述方法进行详细介绍,如图2所示,整个的刷写过程 包括以下步骤:
[0046] Sl、诊断会话控制;
[0047] S2、安全访问请求种子;
[0048] S3、安全访问发送密钥;
[0049] S4、例程控制、擦除存储;
[0050] S5、请求下载;
[0051] S6、传输数据;
[0052] S7、请求传输退出;
[0053] S8、例程控制,检查;
[0054] S9、ECU复位-硬复位。
[0055] 刷写时,上位机刷写工具根据S3发送密钥key的第3、4、5、6个字节(这四个字节值 在实际操作中为随机数,保证计算的值也是随机的)设计一个算法计算偏移量,S6中刷写时 将传输的数据均添加上该偏移量,ECU的Bootloader接收到传输的数据后也按照相同的算 法计算偏移量,同时将刷写至ECU内存的字节均减去该偏移量。由于key的第3、4、5、6个字节 每次刷写均不一样,所以计算的偏移量每次也不一样,这样就保证了即使相同版本的程序 数据文件,每次刷写报文均不一样。
[0056]例如,从第3个字节开始的所有字节加上某一偏移量,如下表所示:
[0057]表1数据传输服务报文定义
[0059] 可见,刷写报文传输数据部分的数据都进行偏移,每次刷写过程的偏移量均不一 样。不同的刷写,刷写报文均不一样,无法通过报文记录工具反推程序数据文件。即使盗取 程序数据文件,也无法将其刷写至E⑶中,有效地遏制了非法刷写。
[0060] 对应于上述方法本发明还公开了一种ECU刷写装置,所述装置包括上位机刷写模 块以及ECU刷写引导模块;所述上位机刷写模块与所述ECU刷写引导模块进行通信,约定密 钥;其中,所述密钥随机产生;所述上位机刷写模块用于根据所述密钥对要刷写进ECU中的 数据进行加密,形成密文数据,并将所述密文数据传输给所述ECU刷写引导模块;所述ECU刷 写引导模块用于根据所述密钥对接收的所述密文数据进行解密,并将解密后的数据刷写进 ECU。
[0061 ] 进一步地,所述上位机刷写模块包括加密单元,所述加密单元采用可逆的加密方 法进行加密。优选地,所述加密单元用于根据所述密钥以及预定算法计算得到一个偏移量, 并将所述要刷写进ECU中的数据均加上所述偏移量得到所述密文数据,其中所述预定算法 设置于所述上位机刷写模块中。其中,所述密钥包括多个随机数。
[0062] 相应地,所述ECU刷写引导模块包括解密单元,所述解密单元用于根据所述密钥以 及所述预定算法计算得到所述偏移量,并将其接收的所述密文数据中的每个数据均减去所 述偏移量,得到所述解密后的数据,其中所述预定算法设置于所述ECU刷写引导模块中。
[0063] 由于上述装置的处理步骤与上述方法的步骤一样对应,所以这里不对上述装置中 相同的部分赘述。
[0064] 上述装置或方法适用但不限于欧六的发动机电控系统。
[0065] 以上实施方式仅用于说明本发明,而非对本发明的限制。尽管参照实施例对本发 明进行了详细说明,本领域的普通技术人员应当理解,对本发明的技术方案进行各种组合、 修改或者等同替换,都不脱离本发明技术方案的精神和范围,均应涵盖在本发明的权利要 求范围当中。
【主权项】
1. 一种ECU刷写方法,其特征在于,所述方法包括以下步骤: 51、 上位机刷写模块与ECU刷写引导模块约定密钥;其中,所述密钥随机产生; 52、 所述上位机刷写模块根据所述密钥对要刷写进ECU中的数据进行加密,形成密文数 据,并将所述密文数据传输给所述ECU刷写引导模块; 53、 所述ECU刷写引导模块根据所述密钥对接收的所述密文数据进行解密,并将解密后 的数据刷写进E⑶。2. 根据权利要求1所述的方法,其特征在于,所述步骤S2中进行加密为采用可逆的加密 方法进行加密。3. 根据权利要求1所述的方法,其特征在于,所述密钥包括多个随机数。4. 根据权利要求1至3任一项所述的方法,其特征在于,所述步骤S2中进行加密具体包 括以下步骤: 所述上位机刷写模块根据所述密钥以及预定算法计算得到一个偏移量;其中所述预定 算法设置于所述上位机刷写模块中; 所述上位机刷写模块将所述要刷写进ECU中的数据均加上所述偏移量得到所述密文数 据。5. 根据权利要求4所述的方法,其特征在于,所述步骤S3中进行解密具体包括以下步 骤: 所述ECU刷写引导模块根据所述密钥以及所述预定算法计算得到所述偏移量;其中所 述预定算法设置于所述ECU刷写引导模块中; 所述ECU刷写引导模块将其接收的所述密文数据中的每个数据均减去所述偏移量,得 到所述解密后的数据。6. -种ECU刷写装置,其特征在于,所述装置包括上位机刷写模块以及ECU刷写引导模 块;所述上位机刷写模块与所述ECU刷写引导模块进行通信,约定密钥;其中,所述密钥随机 产生; 所述上位机刷写模块用于根据所述密钥对要刷写进ECU中的数据进行加密,形成密文 数据,并将所述密文数据传输给所述ECU刷写引导模块; 所述ECU刷写引导模块用于根据所述密钥对接收的所述密文数据进行解密,并将解密 后的数据刷写进ECU。7. 根据权利要求6所述的装置,其特征在于,所述上位机刷写模块包括加密单元,所述 加密单元采用可逆的加密方法进行加密。8. 根据权利要求7所述的装置,其特征在于,所述密钥包括多个随机数。9. 根据权利要求8所述的装置,其特征在于,所述加密单元还用于根据所述密钥以及预 定算法计算得到一个偏移量,并将所述要刷写进ECU中的数据均加上所述偏移量得到所述 密文数据,其中所述预定算法设置于所述上位机刷写模块中。10. 根据权利要求9所述的装置,其特征在于,所述ECU刷写引导模块包括解密单元,所 述解密单元用于根据所述密钥以及所述预定算法计算得到所述偏移量,并将其接收的所述 密文数据中的每个数据均减去所述偏移量,得到所述解密后的数据,其中所述预定算法设 置于所述ECU刷写引导模块中。
【文档编号】H04L29/06GK105915341SQ201610442733
【公开日】2016年8月31日
【申请日】2016年6月17日
【发明人】秦涛, 纪小娟, 史家涛, 孙潇
【申请人】潍柴动力股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1