云计算百科
云计算领域专业知识百科平台

深入解读UDS诊断安全访问_27服务

27服务提供了一种访问那些权限受限或与排放及安全因素有关的数据及服务的方法。

1.上传/下载程序或数据至 ECU、从 ECU 中读取特殊位置内存数据等诊断服务一般需要执行安全访问。因为下载不恰当的程序或数据至 ECU 可能破坏电子设备或其它汽车部件,或对汽车的排放、安全性及安全标准造成风险。

2.安 全 访 问 的 概 念 使 用 “ 种 子 ” 和 “ 密 钥 ” 来 实 现 。

第 一 步 , 诊 断 工 具 发 送 “SecurityAccess-RequestSeed”服务报文。ECU 发送一个种子进行响应,此种子是诊断工具及ECU 计算密钥的输入参数。

第二步,诊断工具通过发送包含密钥的“SecurityAccess-SendKey”服务报文给 ECU 来请求比较密 钥。ECU 须将此密钥与内部存储或计算的密钥进行比较,如果两数相符,ECU 使能(解锁)诊断工具对 特定服务和数据的访问权限,并通过“SecurityAccess-SendKey”肯定响应报文指出。如果两数不相符, 此访问被认为是一次错误的访问尝试。如果访问因其它原因被拒回,此访问并不被认为是一次错误的访问尝试。无效的密钥要求诊断工具从头开始重新发送“SecurityAccess-RequestSeed”请求报文。

3.种子及密钥,安全访问算法一般由客户定义。

4.子功能参数安全访问类型表明当前正进行的步骤。如果 ECU 支持多个安全级别,每个级别应使用不同的请求种子参数值区分。每个安全级别的请求种子参数值与发送密钥参数值具有固定的一一对应关系。如下图“requestSeed = 0x01”与“sendKey = 0x02”之间存在固定关系 ,“requestSeed = 0x03”标识“requestSeed = 0x03”与“sendKey = 0x04”之间存在固定关系

5.同一时刻仅能激活一个安全级别。例如,若请求种子0x03对应的安全级别处于激活状态,而测试人员请求成功解锁了请求种子0x01对应的安全级别,此时仅能解锁请求种子0x01对应安全级别支持的受保护功能。此前由请求种子0x03对应安全级别解锁的其他受保护功能将不再生效。

6.若ECU支持安全功能,但在接收到SecurityAccess的‘requestSeed’请求时,所请求的安全等级已被解锁,则该ECU应返回SecurityAccess的‘requestSeed’确认响应消息,其中种子值设为零(0)。对于当前处于锁定状态的安全等级,ECU绝不会发送全零种子值。客户端可通过检测非零种子值来判断ECU是否锁定特定安全等级。

7.请求种子报文格式

8.请求种子肯定响应报文格式

9.发送密钥请求报文格式

10.发送密钥肯定响应报文格式

赞(0)
未经允许不得转载:网硕互联帮助中心 » 深入解读UDS诊断安全访问_27服务
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!