[UDS] --- SecurityAccess 0x27 service

简介: [UDS] --- SecurityAccess 0x27 service

1 0x27安全访问原理

为什么需要安全访问?因为在下载/上传的诊断服务例行程序或数据进入服务器并从服务器读取特定的内存位置的情况是可能需要安全访问。 不正确的例程或数据下载到服务器中可能损坏电子设备或其他车辆部件,或冒着车辆遵守排放,安全或安全标准。所以,安全访问还是很重要的。

安全访问原理如下图:

Tester: request seed : 27 + xx

ECU: response seed : 67 + xx + seed

Tester: send key : 27 + yy + key , 其中yy = xx + 1

ECU: response key : 67 + yy

实例如下:

Tester: 02 27 05 00 00 00 00 00 安全访问,05子功能

ECU: 06 67 05 08 27 11 F0 00 肯定响应,回复了对应安全级别的种子

Tester: 06 27 06 FF FF FF FF 00 发送密钥,4个FF。注意06是与05成对使用的。

ECU: 03 7F 27 78 00 00 00 00 若为否定响应,7F+27+NRC

ECU: 02 67 06 00 00 00 00 00 若为肯定响应,通过安全校验

2 相关规定

  • 种子要避免出现0x00,0xFF,取随机值
  • 同一时刻,仅可允许解锁一个安全等级,当从某一安全等级A进入到另一安全等级B时,解锁B并上索A
  • 当已解锁的情况下,继续请求种子,ECU回复全0种子表示已经解锁
  • 安全等级的数字为任意分配,无优先级之分
  • “请求种子” - “返回种子” - “发送密钥” - “响应结果”,这一套流程为强制的,步骤出错返回NRC=24

3 相关NRC

  • NRC = 35, key无效
  • NRC = 36,超出密钥访问次数限制
  • NRC = 37, 延时未到
  • NRC = 24,请求序列错误
目录
打赏
0
0
0
0
20
分享
相关文章
|
9月前
[UDS] --- DiagnosticSessionControl 0x10 service
[UDS] --- DiagnosticSessionControl 0x10 service
439 0
从Service到WorkManager
关于Service,想必大家都太熟悉了,今天我们就再回顾下它的使用、概念、区别、变更历史等等。
532 0
从Service到WorkManager
理解Service
Service的start和bind有什么区别? Service分为两种工作状态,一种是启动状态,主要用于执行后台计算;另一种是绑定状态,主要用于其它组件和Service的交互。
1023 0

热门文章

最新文章