0x27 本质是一个Seed-Key 挑战-响应状态机先要种子再发密钥ECU 比对通过后才开放受保护服务。标准流程Tester → ECU: 27 01 // 请求种子奇数子功能 ECU → Tester: 67 01 Seed // 返回随机种子 Tester → ECU: 27 02 Key // 发送密钥偶数子功能 奇数 1 ECU → Tester: 67 02 // 密钥正确解锁成功关键规则奇数子功能请求种子0x01、0x03、0x05…偶数子功能发送密钥0x02、0x04、0x06…且必须等于对应奇数 1。Seed 是随机数每次请求通常不同如果已解锁ECU 会返回全 0 种子。算法是 OEM 私有AES、XOR、移位、查表等诊断仪和 ECU 必须一致。同一时刻只能有一个安全等级解锁切换会话或复位后自动重新上锁。常见 NRCNRC含义触发场景0x24请求顺序错误没请求种子直接发27 020x35无效密钥Key 算错验证失败0x36超出尝试次数连续错误达阈值触发延时锁定0x37延时未到锁定期间再次请求种子0x33安全访问被拒绝未解锁就执行受保护服务0x22条件不满足未在正确会话下请求 0x27哪些服务必须先解锁服务为什么需要解锁0x2E WriteDataByIdentifier写 DID、写标定参数、写 VIN 等0x31 RoutineControl擦除 Flash、执行自检例程0x34/0x36/0x37下载/传输数据/退出传输刷写核心链路0x2F InputOutputControl控制 IO 引脚、激活执行器0x28 CommunicationControl关闭/恢复非诊断通信部分 0x22/0x23 读操作读取敏感 DID 或受保护内存区域一句话记0x27 是诊断权限的钥匙奇数要种子、偶数发密钥没钥匙写、刷、控、例程都动不了。
阅读完成 · 觉得有帮助?