当前位置: 首页 > news >正文

CCC数字钥匙设计【NFC】 --车主配对流程介绍

1、车主配对流程介绍

车主配对流程可以通过车内NFC进行,若支持UWB测距,也可以通过蓝牙/UWB进行,本文主要介绍通过NFC进行车主配对的流程

整个配对流程相对较为复杂,本文主要梳理整体的步骤流程,其中的每个细节流程未展开详细描述。

车主配对流程通过手机端的Digital Key framework来控制的。Digital Key framework采用APDU命令来管理数字的配置,并通过SE进行保护。

车端可以通过NFC的对应AID选中数字钥匙applet,通过对应的AID选择Digital Key framework(Phase2)或Digital Key applet(Phase3),具体如下图。

配对总共有5个Phase。本文档主要对这5个Phase进行简单介绍。

1) Phase0:准备阶段;

2) Phase1:启动流程;

3) Phase2:与NFC的第一个session(通过Digital Key framework);这里包含2次交易。

Transaction1:协商协议版本、执行SPAKE2、发送所有密钥数据给手机。

Transaction2:provides the creation attestation and certificate chain to the vehicle。

4) Phase3:与NFC的第二个session(通过Digital Key applet);

5) Phase4收尾阶段,与KTS的交互。

2、Phase0:准备阶段

手机、车辆、车辆OEM服务器分别需进行如下准备:

2.1 手机准备事项

  • 手机已经安装了数字钥匙的applet;

  • 手机已经为每个车辆OEM创建了对应的Instance CA;

  • 手机已根据车辆OEM partners列表更新Digital Key framework。

  • 手机已通过Digital Key framework获得Instance CA证书。该证书相关描述如下:

applet_version和platform_information是颁发Instance CA证书时分配的不可变值。它可能不反映当前的applet_version或platform_information(例如,在applet或Secure Element平台升级的情况下)

2.2 车辆准备事项

产生车辆的公私钥vehicle.PKvehicle.SK

准备好创建数字钥匙applet时所需要的信息

2.3 车辆OEM服务器准备事项

产生用于手机的paring password;

产生用于车辆的password verifier和salt;

并通过车辆OEM 专有的安全通道将password verifier和salt发送给车辆;

3、Phase1:启动阶段

手机通过如下方式收到密码,以启动车主配对

1、 用户输入;

2、 一个URL(详见6.3.7);

3、 通过车企的APP;

4、Phase2:First Session(Digital Key Framework)

该阶段包含两次Transaction,均在车辆和手机Digital Key Framework之间执行。

第一次Transaction主要包含如下内容:

1) 协商协议版本、

2) 手机与车端的认证、

3) 车辆与手机通过SPAKE2+建立安全通道、

4) 车辆将创建数字钥匙所需的所有数据发给手机,如车辆公钥证书。

第二次Transaction主要包含如下内容:

1) 车辆从手机端读取创建数字钥匙所需的所有数据,并进行验证,

2) 若验证通过,则车辆存储手机的公钥。

5、Phase3:Second Session(Digital Key applet)

第二个NFC会话在车辆和Digital Key applet之间执行。第一次标准交易采用type=7,建立认证安全通道,之后由手机端 发起Tracking Key Request。

6、Phase4:收尾阶段,与KTS交互

该步骤进行第二次标准交互,type=8(见表9-1)。之后读取并验证KTS Receipt,提供用于钥匙分享的朋友防盗器令牌。

7、总结

将整个NFC配对流程汇总在一起,整理如下图:

http://www.lryc.cn/news/179739.html

相关文章:

  • 一站式开源持续测试平台 MerterSphere 之测试跟踪操作详解
  • 自然语言处理状况简介
  • python爬虫基于管道持久化存储操作
  • 【MySQL】数据类型(二)
  • 基于Matlab实现连续模型求解方法
  • Tomcat 与 JDK 对应版本关系
  • iOS自动化测试方案(二):Xcode开发者工具构建WDA应用到iphone
  • IDEA的Maven换源
  • 步进电机只响不转
  • 使用select实现服务器并发
  • 【Python】基于OpenCV人脸追踪、手势识别控制的求实之路FPS游戏操作
  • 力扣 -- 718. 最长重复子数组
  • MP、MybatisPlus、联表查询、自定义sql、Constants.WRAPPER、ew (二)
  • Ubuntu服务器安全性提升:修改SSH默认端口号
  • 十七,IBL-打印各个Mipmap级别的hdr环境贴图
  • 7、Docker网络
  • MySQL学习笔记23
  • Java基础---第十篇
  • NLP 03(LSTM)
  • Python集成开发环境(IDE):WingPro for Mac
  • [Machine learning][Part3] numpy 矢量矩阵操作的基础知识
  • 【中秋国庆不断更】HarmonyOS对通知类消息的管理与发布通知(上)
  • 喜讯 | 怿星科技获评SAE“优秀核心零部件企业”,测试软件平台工具广受赞誉
  • 基于Java的医院预约挂号系统设计与实现(源码+lw+部署文档+讲解等)
  • 福利!这两款我自制的免费配色工具你领到了吗?
  • Docker 网桥、docker0 网桥和 --net host:平台差异、使用方式和场景介绍简介:
  • 【深度学习】系统架构工具链的学习笔记
  • Linux 网络编程
  • SpringBoot读取配置的方式
  • c# winform程序,DispatcherTimer被调用延迟,响应间隔长