首页
Portal
资讯
论坛
BBS
文库
学堂
会员
圈子
Group
相册
Album
导读
Guide
排行榜
Ranklist
登录
立即注册
淘帖
Collection
日志
Blog
分享
Share
记录
Doing
广播
Follow
帮助
返回列表
发布新帖
行业规范
漫谈UDS协议之Service 84
786
0
车载诊断技术
Lv.16
发表于 2022-8-24 22:14:34
|
查看全部
阅读模式
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要
登录
才可以下载或查看,没有账号?
立即注册
|
×
今天是2022年8月20日,周六,昨晚跑了一万米(跑步多巴胺,快乐且能独自思考,极好的时光),今天彻底起不来了,久违的舒服。看了天气预报,至少还有一周时间才可以降温,因为有所期待,不觉漫长!
老规矩,分享段喜欢的文字,避免自己成为高知识低文化的人:
“
把注意力放在体验感而非结果上,人是真的会慢慢慢慢松弛下来。不要觉得没到终点就一无所得,这一路上你遇到的人、吹过的风、看过的日落和喝过的酒,都会变成你区别于旁人的独一无二的收藏。
”
“
我们追求的结果,只是用来指引我们前进,是灯,但不代表我们眼里就只能看到那一盏灯,灯下的竹影摇曳,灯下的人间温情,更值得我们用心体会。
”
Return to tiday‘s topic!
承接上文,自己专心将UDS协议中定义的26个服务,做一个全覆盖总结。
伴随着以太网引入到车载网络,给车辆带来了更多的应用场景:
-> 远程诊断;
-> 远程数据采集;
-> 远程Software Update;
有好的一面,就会有坏的一面,这样也给信息安全带了极大隐患。每天每个车企都会为这方面做大量投资,做攻防演练、渗透测试等操作。
本文主要分享UDS协议Service 84。
该服务目的:此服务的目的是传输受到第三方攻击保护的数据——这可能会危及数据安全。如果客户打算在安全模式下使用本文档中定义的诊断服务,则Secured Data Transmission服务适用。
另外该服务也可以用于Client端和Server端之间的安全模式下传输符合其他应用协议的外部数据。在这种情况下的安全模式意味着传输的数据受到加密办法的保护。
在车载诊断范畴,有两种方案可以在Client端和Server端之间执行诊断服务数据传输:
->不安全的数据传输模式
该应用程序使用本文中介绍的诊断服务和应用程序层服务在Client端和Server端之间的应用程序和应用程序层之间执行数据的传递。
->安全的数据传输模式
应用程序使用诊断服务或外部服务以及安全子服务在Client端和Server端之间交互数据。安全子层使用Secured Data Transmission服务发送和接受安全数据。安全链接必须是点对点通信,因此只允许物理寻址,这意味着该功能只能涉及Client端和Server端一对一通信和数据传输。
安全子层和应用程序的接口符合ISO/OSI模型,因此提供以下四个安全子层服务:
⎯ SS_SecuredMode.req: Security sub-layer Request
⎯ SS_SecuredMode.ind: Security sub-layer Indication
⎯ SS_SecuredMode.resp: Security sub-layer Response
⎯ SS_SecuredMode.conf: Security sub-layer Confirmation
ISO 14229这一部分定义了确认和未确认的服务,只允许确认的服务并且肯定响应抑制位不被置1,因此根据这个要求,如下服务不允许在安全模式下执行:
⎯ ResponseOnEvent (0x86);
⎯ ReadDataByPeriodicIdentifier (0x2A);
⎯ TesterPresent (0x3E);
在安全模式下执行已确认的诊断服务,请求与响应需要映射到如上4个安全子层服务上。当以安全模式执行诊断服务时,安全子层的任务是加密由“应用程序”提供的数据,以解密由“应用层”提供的数据并添加、检查和移除安全特性的数据元素。安全子层使用应用层的Secured Data Transmission(0x84)服务根据外部协议(请求和响应)发送和接受整个诊断消息或报文,这些报文(通信或者诊断)应在安全模式下交换。
安全子层位安全执行诊断服务提供服务“Secured Service Execution”给应用程序,“Secured Service Execution”服务的安全子层请求和指示根据如下格式指定:
Secured Service Execution服务的安全子层响应和确认根据如下格式指定:
安全子层访问
访问用于安全执行的安全子层的概念,与本文中描述的应用层接口类似。
1、客户端应用程序使用安全子层,Secured Service Excution服务请求以安全模式执行诊断服务,安全子层执行所需的动作用于建立与Server端(ECU)链接,添加特定的安全相关参数,如果需要,加密要在安全模式下执行的诊断服务的服务数据,并使用应用层Secured Data Transmission服务请求将安全数据传输到Server端。
2、Server端接受Server(ECU)安全子层处理的应用层Secured Service Excution服务指示。Server的安全子层检查安全特性参数解密加密数据,并通过安全子层Secured Service Excution服务指示将用以安全模式执行服务的数据呈现给应用程序。应用程序(Application)执行接受到的服务并使用安全子层Secured Service Excution服务响应以安全模式响应服务。Server端的安全子层添加特定的安全相关参数,根据需要加密响应报文数据,并使用应用层Secured Data Transmission服务响应将响应数据发送至Client端。
3、Client端接收应用层Secured Data Transmission服务确认的内容,该原报文由Client端的安全子层处理。Client端的安全子层检查安全特性参数,解密加密的响应数据并通过安全子层Secured Service Excution确认将数据呈现给应用程序。
如下图展示了安全模式下执行确认诊断服务安全子层、应用层和应用程序的交互。
该服务请求格式如下:
响应格式如下:
如上分享,希望有所帮助!
日进一步,功不唐捐!
愿你我相信时间的力量,
做一个长期主义者!
-----------------------------------
作者简介 | 穿拖鞋的汉子
汽车电子工程师
微信公众号:车载诊断技术
来,每天进步一点点!
技术
车研会员,开心每一天!
回复
举报
猜您喜欢
•
华为电子机械制动(EMB)技术解析
•
小唐老师:你知道汽车玻璃有这么多讲究吗?(2017.5.11)
•
漫谈UDS协议之Service 86
•
整车电子电器测试都包含哪些?
•
汽车工程师解读:整车PedalMap分析概要
•
漫话UDS协议之Service 3D
•
漫谈UDS协议之Service 23
•
关于OBD协议(ISO 15031)的学习
•
CANoe和CANoe.DiVa关于通信测试的简略汇总
•
车载软件架构规范AUTOSAR
返回列表
发布新帖
回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
|
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
车载诊断技术
Lv.16
专栏作者
主题
好友
1302
积分
+ 关注
发消息
关灯
在本版发帖
扫一扫添加客服微信
返回顶部
快速回复
返回顶部
返回列表