CCC数字钥匙3.0标准解读(18)

本章详细介绍数字钥匙小程序中28个命令和事件。
摘要由CSDN通过智能技术生成


15.3.2 命令

15.3.2.1 SELECT命令

数字钥匙小程序的AID应为A0000000809434343444B417631h。
此命令选择要用于交互的数字钥匙小程序实例。实例AID参数是在小程序安装期间定义的(请参阅[20]中INSTALL for INSTALL命令)。
如果数字钥匙小程序暂时不可用,SE应以状态字6985h进行响应。
命令:CLA1 A4 04 00 Lc [instance AID] 00
响应:[Table 15-12] 90 00
CLA1的定义见表15-3。
Table 15-12:SELECT Response Fields
在这里插入图片描述
Listing 15-12: SELECT Processing
在这里插入图片描述

15.3.2.2 CREATE CA 命令

此命令创建一个名为实例CA的板载签名认证中心,用于端点发布。此认证中心的生成和设置超出了本规范的范围。包含实例CA公钥的证书应符合清单15-16的规定。CREATE CA命令的INS值应为38h。
理解说明:实例CA用于在本地既可以进行认证,无需联网,即称为板载签名认证中心。

15.3.2.3 DELETE CA命令

此命令删除实例CA。删除此实例CA的方法超出了此规范的范围。DELETE CA命令的INS值应为3Ah。

15.3.2.4 CREATE ENDPOINT命令

该命令创建一个通信端点并提供相应的端点证书。通信端点仅通过安全通道将签名和邮箱内容分发给经过身份验证的各方。
表15-13中描述的端点配置字段可以在命令有效数据中提供,也可以使用第15.3.2.14节中描述的WRITE BUFFER命令在内部缓冲器中提供。清单15-5中描述的端点创建证书总是在内部缓冲区中提供,并且可以使用第15.3.2.13节中描述的READ BUFFER命令进行访问。
命令:CLA2 70 00 00 Lc ([Table 15-13] [Table 15-16] 00)
响应:[response_length] 9000
CLA2的定义见表15-3。
Table 15-13:Endpoint Configuration
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
*此字段已被弃用,不再使用。
vehicle_identifier: 端点创建者提供的字段;该字段由小程序用于数据交互其间快速查找端点。
endpoint_identifier: 端点创建者提供的任意字段,用于描述证书。endpoint_identifier字段通常标识与证书中存在的公钥相关联的实体。
instance_CA_identifier: 此字段允许选择SE用于签署端点创建证书的实例CA。该值存在于相应实例证书的字段“subject CommonName”中。
option_group_1 and option_group_2: 对于车主配对(车主配对阶段2),车辆应根据表15-14设置这两个字段。
Table 15-14:Setting of Tag 46h and Tag 47h by vehicle for various wireless capability combinations
在这里插入图片描述
如果使用EXCHANGE命令交换诸如防盗令牌之类的敏感数据,则Tag 46h的bit7不应设置为1。
对于好友共享(密钥共享流程第1步和第2步),车主设备应根据表15-15设置这两个字段,该字段位于Key Creation Request内。
Table 15-15:Setting of Tag 46h and Tag 47h by the owner device for the key sharing
在这里插入图片描述
Protocol_version: 该字段应设置为0100h。此字段为信息性字段,小程序不得使用此字段强制使用特定协议版本。
vehicle_PK: 车辆的公钥。
Not_before: 颁发的证书的有效期开始日期。小程序不需要验证有效日期。
Not_after: 颁发的证书有效期结束。小程序不需要验证有效日期。
Authorized_PK[]:设备用于验证其他SE的端点创建证书的公钥。
Confidential_mailbox_size: 如果字段不存在,或者存在时confidential_mailbox_size等于0000h,则机密邮箱不可用。
Private_mailbox_size: 如果字段不存在,或者private_mailbox_size等于0000h,则专用邮箱不可用。
Key_slot: 如果通过车主设备从车辆中检索到槽标识符,则在钥匙共享的步骤1(参见第11.8.1节)期间,在好友端点配置中填充的端点配置中的字段。该字段的值被设置为SlotIdentLst字段中的一个槽标识符。当在车辆侧需要在大量公钥中进行快速搜索时,可以手动设置key_slot。在端点创建过程中,可以通过基于钥匙槽编号而不是依赖于基于哈希的自动命名来促进快速搜索。如果没有提供key_slot字段,则会生成一个自动槽标识符,如清单15-6所示,因为key_slot在AUTH1响应中是强制性的。在在线提供时槽标识符的情况下,车主设备在钥匙共享期间分配自动生成的随机槽标识符。槽标识符用于导出Kble_oob,请参见第9.5.1节和第19.5.8节。
注意:设备生成的key_slot在钥匙共享过程中无法抵御证明重播攻击。
在实例上创建的端点中,此字段不需要是唯一的。
此字段可以在使用SETUP_ENDPOINT命令创建钥匙后进行更新。端点证书中的值“initial_key_slot”将始终保持在创建端点期间最初分配的值。
Counter_limit: 此字段已弃用,不应使用。如果INSTALL for INSTALL命令中包含applet_implementation_model字段(即以SE为中心的小程序模型),则以下附加Tag应出现在Tag7F27h之后。
Table 15-16: Endpoint verification information
在这里插入图片描述

Vehicle OEM CA Certificate (由设备制造商签署):
该字段由框架提供,并由SE验证。SE还使用该数据来验证车辆公钥证书。
假设设备制造商 CA根证书存储在此操作的SE中。
Vehicle Public Key Certificate: 此字段由车辆在车主配对过程中提供。数字钥匙共享期间不存在此字段。如果存在该字段,SE应验证该证书。
Listing 15-3:Endpoint Certificate Extension Schema
在这里插入图片描述
Listing 15-4:Endpoint Certificate Extension Data
在这里插入图片描述
Listing 15-5:Endpoint Certificate Data
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
Listing 15-6:CREATE ENDPOINT Processing
在这里插入图片描述
在这里插入图片描述

15.3.2.5 TERMINATE ENDPOINT命令

此命令将端点设置为已终止状态,并返回终止证明。如果端点已经处于终止状态,则返回先前计算的证明。终结点的终止状态无法恢复;唯一可能的操作是删除端点。
允许使用以下命令格式:
 如果在数字钥匙框架和数字钥匙小程序之间没有建立安全通道,则小程序可以使用命令格式1或命令格式2。
 如果要在数字钥匙框架和数字钥匙小程序(选项a)之间建立安全通道,则应使用命令格式2,并由小程序执行。
命令格式1:
命令:CLA2 72 00 00 Lc [Table 15-17] 00
响应:[Table 15-19] 9000
CLA2的定义见表15-3。
命令格式2:
命令:CLA2 72 00 00 Lc [Table 15-17] 00
响应:[response_length] 9000
CLA2的定义见表15-3。
Table 15-17:Endpoint Termination Request
在这里插入图片描述

Table 15-18:Endpoint Termination Attestation Data Fields

  • 22
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Jason.rr

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值