【UDS】ISO14229之0x27服务
文章目录
- 前言
- 一、理论描述
- 二、使用步骤
- 1.总述
- 2.请求
- 3.响应
- 总结
->返回总目录<-
前言
简称: “SecurityAccess”,安全访问
功能: 由于(保密、排放或安全的原因),安全访问服务提供一种方法以方便访问受限制的数据或诊断服务。
一、理论描述
1,例如,上传/下载程序或数据至 ECU、读取 ECU 特殊位置中内存数据等诊断服务一般需要执行安全访问,
因为下载不恰当的程序或数据 至 ECU 可能破坏电子设备,或影响汽车的排放和功能安全。
(说白了就是防止乱刷程序到ECU)
2,支持安全访问的 ECU 应该实现种子和密钥的合理算法,该算法应在特定文档中(整车厂会给出算法规范)记录,
而只有特定的少数人(软件开发人员)可以访问该文档。
3,当外部测试工具(CANoe等上位机)从 ECU 中请求安全访问类型时,安全访问过程就开始了。
当外部测试工具提供的安全密钥与ECU 计算的安全密钥匹配时,将授予对 ECU 的安全访问权。
二、使用步骤
1.总述
举例子:某整车厂针对0x27服务的需求如下:
请求Seed(种子) 27 01
发送Key(密钥) 27 02
数据长度为4Byte
Step1: 诊断工具发送 “SecurityAccess-RequestSeed” 请求种子报文(27 01 ),ECU会回复一个带Seed数据的报文
(67 01 22 33 44 55 )。注: 此时ECU已经在代码里使用Seed计算出Key了。
Step2: 诊断工具收到ECU回复的Seed(如22 33 44 55),然后根据整车厂给出的算法,计算出Key(如 AA BB CC DD )。然后
发送包含密钥的“SecurityAccess-SendKey” (27 02 AA BB CC DD)服务报文给 ECU 请求比较密钥(Step1中计算的Key)。
如果密钥一致, ECU 使能(解锁)诊断工具对特定服务的使用权限和对特定数据的访问权限,
并通过“SecurityAccess-SendKey” 肯定响应(67 02)报文指出 ECU 和诊断工具认证成功。
Step3: 如果密钥不相符,此访问被认为是一次错误的访问尝试;(ECU回复NRC35:密钥无效) 如果是无效的密钥或者其他原因被
拒绝访问要求诊断工具从头开始重新发送“SecurityAccess-RequestSeed” 请求报文;如果连续密钥无效三次,
ECU回复NRC36:超过最大尝试次数。此时需要等待10秒后才可以请求27 01服务,否则ECU回复NRC37:延时要求不满足
2.请求
第一个字节就是SID,后边的一个字节 用于标识将要访问的安全访问类型。下图红色框内是请求Seed的帧格式,
绿色框 是请求对比密钥的帧格式。
3.响应
1)正响应
见CANoe报文数据图中的蓝色框。
Response ID: 67
securityAccessType=requestSeed :01
securitySeed:00 95 00 06
见CANoe报文数据图中的黄色框。
Response ID: 67
securityAccessType=SendKey:02
2)否定响应
支持的否定响应如下,一般工作上根据整车厂给的诊断输入文档来选择要支持的NRC码。
博主平日项目中,常需要支持的是NRC 0x12,0x13,0x22,0x24,0x35,0x36,0x37,0x7F。
NRC12: 子服务不支持(根本没有27 00服务,安全访问类型不支持00)
NRC13: 请求报文数据长度有误(请求数据27 01只有两个字节。而下图中请求的是27 01 00)
27前面的03是指发送报文的数据长度:27 01 00.
NRC22: 请求条件不满足
(一般整车厂会告诉你NRC22的满足条件,例如:车速>3km/h,电源过欠压时候,请求服务,ECU便回复该NRC)
NRC24: 请求顺序不正确(不按套路出牌,一上来就请求27 02去对比密钥了)
NRC35: 密钥对比有误(在请求27 02时候,输入错误的Key并且发送。)
NRC36: 超过最大解锁尝试次数(错误一次 NRC35,错误第二次NRC35,错误第三次NRC36)
NRC37: 延时要求不满足(回复NRC36之后,10秒延时时间内再次请求27 01)
NRC7F: 当前会话下服务不支持
(整车厂要求该安全访问服务,需要在Extend session会话下支持。10 01是默认会话,因此回复7F 27 7F )
总结
0x27服务还是比较有意思的,之前博主一直是手写代码的,现在的项目考虑到了功能安全,整车厂要求是Autosar架构的,
因此现在开发都是使用DaVinCi软件开发生成代码,很强大的软件(德国佬的确很6)。下一章0x28控制通信服务见!
->返回总目录<-
【UDS】ISO14229之0x27服务相关推荐
- 跟我学UDS(ISO14229) ———— 0x19 服务参数介绍
相关链接:跟我学UDS(ISO14229) ---- 0x19(ReadDTCInformation) 目录 DTCStatusMask 工作状态 bit 作用说明 切换逻辑 DTCExtendedD ...
- 跟我学UDS(ISO14229) ———— 0x11(ECUReset)
0x11(ECUReset)服务的主要作用是使用ECUReset服务来请求服务器重置.该服务根据嵌入在ECUReset请求消息中的resetType参数值的内容,请求服务器有效地执行服务器重置. 在服 ...
- 【车载开发系列】UDS诊断---链接控制服务($0x87)
[车载开发系列]UDS诊断-链接控制服务($0x87) 诊断---链接控制服务($0x87) [车载开发系列]UDS诊断---链接控制服务($0x87) 一.概念定义 二.应用场景 三.报文格式 1) ...
- 【UDS】ISO14229之0x19服务
文章目录 前言 一.理论描述 1.服务分类 2.状态掩码 二.操作步骤 1.请求 2.回复 总结 ->返回总目录<- 前言 简称: "ReadDTCInformation&quo ...
- 【UDS】ISO14229之0x14服务
文章目录 前言 一.理论描述 二.使用步骤 1.请求 2.响应 总结 ->返回总目录<- 前言 简称: "ClearDiagnosticInformation",清除D ...
- 【UDS】ISO14229之0x3E服务
文章目录 前言 一.理论描述 二.使用步骤 1.请求 2.响应 总结 ->返回总目录<- 前言 简称: "TesterPresent",测试工具保持连接服务 功能: 此 ...
- 【UDS】ISO14229之0x2F服务
文章目录 前言 一.理论描述 二.使用步骤 1.请求 2.响应 总结 ->返回总目录<- 前言 简称: "InputOutputControlByIdentifier" ...
- 【UDS】ISO14229之0x28服务
文章目录 前言 一.理论描述 二.使用步骤 1.请求 2.响应 总结 ->返回总目录<- 前言 简称: "CommunicationControl",通信控制 功能: ...
- 车载网络测试 - UDS诊断篇 - 诊断服务$10
上一篇我们在(车载网络测试 - UDS诊断篇 - 诊断数据简析)中 有介绍各个服务的数据的格式,接下来的篇幅就是对各个服务做进一步的介绍,以便大家学习和了解:今天我们说的就是会话控制,有地方也叫会话切 ...
最新文章
- aix解压tgz_AIX 上压缩与解压缩 各种文件格式原理说明
- java迭代器在哪个包里面,java.util.LinkedList.listIterator()方法实例
- MyBatis Generator Example.Criteria 查询条件复制
- 自学it18大数据笔记-第三阶段Scala-day06——会持续更新……
- Oracle 数据库创建表空间、创建用户指定表空间
- Redis实现关注关系
- The Best Way to Unit Test in Android
- dashboard windows 前端开发环境搭建
- Python之数据拆分——groupby()方法
- 并查集——家谱(洛谷 P2814)
- 环保公益PSD分层海报,小景合成美好世界
- Win10推荐一款Terminal
- 删除小于一定尺寸的模型
- NetApp存储常用检查命令
- 一IT公司hr对软件外包感受(转)
- SQL SEVER登录失败,无法连接服务器或已成功与服务器建立连接,但是在登录过程中发生错误。(Win10版本,SQL 2019)
- 垃圾清理代码_一招清理电脑垃圾
- 【启明云端】启明云端带你揭开WT32-S3-WROVER神秘面纱
- 一套比较完备的在ubuntu 18.04系统上部署nginx+postgresql+php的记录
- Android OpenGL ES (十三) 视频播放器
热门文章
- 几张图片合成gif怎么做?怎么把多张图片做成gif?
- 3D游戏编程大师技巧第一章 vs2013编译书本源码问题解决方案
- android10如何省电,安卓手机如何省电 安卓手机省电方法【详细介绍】
- 智能手机省电方向终归何方?
- 弘辽科技:仅仅6招!教你快速入选淘宝猜你喜欢商品池
- 台式计算机有乱码如何解决,台式机键盘输入乱码应该怎么解决
- 2018年App测试流程及要点梳理
- 内推 | 蚂蚁集团网商银行用户研究专家招聘
- android设置静态i,关于Android4.0系统下如何设置wlan静态ip的设置(转)
- (六)PetShop之表示层设计