统一诊断服务UDS - 什么是安全访问
什么是安全访问
安全访问是为车辆安全而设计的,允许诊断设备访问ECU内部的重要数据或请求ECU执行影响车辆安全的诊断服务的授权方式。安全访问是通过种子-秘钥(Seed-Key)的方式来实现的。未经过安全访问解锁时,ECU处于锁定状态,不允许访问重要数据(DID)/存储区域和执行某些影响车辆安全的诊断服务。需要通过安全访问的方式解锁ECU,来允许上述操作的执行。
解锁ECU需要执行如下操作:
- 诊断设备通过UDS的安全访问服务(Security Access Service, SID 0x27)向ECU请求种子(Seed)。
- ECU通过诊断响应,提供随机生成的种子(Seed)。
- 诊断设备收到种子(Seed)后,按照事先约定的安全算法,根据种子(Seed)计算秘钥(Key)。 并将秘钥(Key)通过安全访问服务(Security Access Service, SID 0x27)发送给ECU。
- ECU收到诊断设备发来的秘钥(Key)后,与自身根据约定的安全算法计算的秘钥(Key)进行比对。如果二者一致,则认为通过了安全访问,ECU被解锁。否则视为秘钥(Key)校验失败,ECU仍处于锁定状态。
什么时候需要安全访问
请求诊断服务
常用的诊断服务中,请求如下的诊断服务是需要通过安全访问的。其它诊断服务是否需要安全访问