[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,请求序列错误
相关文章
|
Kubernetes 负载均衡 算法
【K8S系列】深入解析Service
【K8S系列】深入解析Service
173 0
【K8S系列】深入解析Service
|
9月前
[UDS] --- DiagnosticSessionControl 0x10 service
[UDS] --- DiagnosticSessionControl 0x10 service
404 0
|
Kubernetes 监控 Cloud Native
k8s 自身原理之 Service
k8s 自身原理之 Service
|
Kubernetes 网络协议 Cloud Native
Service 基础
Service 基础
|
API 开发工具 Android开发
Service基础
Service基础
101 0
Service基础
|
Android开发 开发者
Service通信详解
Service通信详解
164 0
|
Kubernetes 负载均衡 网络协议
k8s service
Kubernetes Service 定义了这样一种抽象:一个 Pod 的逻辑分组,一种可以访问它们的策略——通常称为微服务。这一组 Pod 能够被 Service 访问到,通常是通过 Label Selector 实现的。
7087 0
理解Service
Service的start和bind有什么区别? Service分为两种工作状态,一种是启动状态,主要用于执行后台计算;另一种是绑定状态,主要用于其它组件和Service的交互。
1013 0
|
监控 关系型数据库 Unix