CCC3.0
  1. 公有协议
CCC3.0
  • 🦊一分钟,了解 CCC3.0!
  • CCC3.0协议要求
  • CCC3.0接口协议
    • 私有协议
      • 私有-钥匙列表
      • 私有-登记删除朋友钥匙
      • 私有-在线删除朋友钥匙
      • 私有-车上通知KTS删除朋友钥匙成功
    • 公有协议
      • 心跳检测
        GET
      • 钥匙跟踪-创建车主钥匙使用
        POST
      • 管理钥匙-删除钥匙
        POST
      • 管理钥匙-暂停钥匙
        POST
      • 管理钥匙-恢复钥匙
        POST
      • 生成分享会话
        POST
      • 赎回共享会话
        POST
      • 取消分享会话
        POST
      • 钥匙分享交换-创建分享钥匙
        POST
      • 钥匙分享交换-签名分享钥匙
        POST
      • 钥匙分享交换-导入分享钥匙
        POST
      • 事件通知-钥匙被终止
        POST
      • 事件通知-钥匙已暂停
        POST
      • 事件通知-钥匙已恢复
        POST
      • 事件通知-分享钥匙正在终止
        POST
      • 事件通知-分享钥匙终止
        POST
      • 事件通知-分享钥匙被暂停
        POST
      • 事件通知-分享钥匙恢复
        POST
      • 事件通知-正在恢复数字钥匙
        POST
      • 事件通知-分享钥匙已激活
        POST
      • 事件通知-钥匙订阅已更改
        POST
      • 事件通知-分享钥匙需要密码
        POST
      • 事件通知-跨平台分享钥匙启动
        POST
      • 事件通知-跨平台分享钥匙取消
        POST
      • 事件通知-跨平台分享钥匙会话超时
        POST
      • 事件通知-权利已更新
        POST
      • 事件通知-更新了 UI 元素
        POST
      • 事件通知-车辆认证通知
        POST
      • 事件通知-创建钥匙通知
        POST
      • 事件通知-签名钥匙通知
        POST
      • 事件通知-导入钥匙通知
        POST
      • 钥匙跟踪-分享钥匙使用
        POST
  • CCC3.0资料
    • CCC3.0模块角色认识
    • 认证流程
    • 蓝牙钥匙笔记
    • DK Framework API
    • 钥匙分享
      • 建立钥匙分享渠道
      • 钥匙分享流程
      • 简版钥匙分享流程
    • 钥匙删除-朋友钥匙
      • 远程-在车机上删除朋友钥匙
      • 远程-在车机上请求在线删除
      • 远程-从车主的整车账户中删除好友钥匙
      • 远程-车主在车辆 OEM APP删除钥匙
      • 远程-根据钥匙的到期日期删除好友钥匙
      • 远程-设备 OEM 删除好友/车主钥匙
      • 远程-手机丢失,好友/车主远程擦除设备而导致好友/车主钥匙删除
      • 本地-朋友/车主在自己手机上通过车辆 OEM APP删除钥匙
      • 本地-朋友/车主手机由于刷机而导致好友/车主钥匙删除
    • 钥匙删除-车主钥匙
      • 车主更换手机去删除旧手机钥匙,并转移到新手机
      • 车主在车上通过线上主动删除钥匙
    • 钥匙暂停/恢复
      • 设备 OEM 服务器暂停朋友钥匙钥匙(当朋友手机丢失,朋友去设备厂商官网挂失锁定手机)
      • 朋友手机找回后恢复朋友钥匙
    • 车主手机取消配对
      • 车主出售车辆,在车上解除钥匙配对
      • 车主出售车辆,在车上在线请求车辆OEM解除钥匙配对
      • 车主在车辆APP中取消配对
  1. 公有协议

管理钥匙-恢复钥匙

POST
/keyApi/v1/manageKey
车厂OEM调用------>朋友手机设备厂商。
这是设备 OEM 服务器和车辆 OEM 服务器提供的通用 API,用于管理数字密钥的生命周期。该 API 分别用于第 11 节和第 13 节所述的密钥共享和密钥终止。
RESUME-恢复钥匙

请求参数

Header 参数
x-requestId
string 
可选
设备 OEM 服务器和车辆 OEM 服务器的所有请求都应具有 HTTP 标头“x-requestId”。该值应为包含连字符的长度为 36 的 UUID。
x-device-oemId
string 
可选
设备 OEM 服务器的所有请求都应具有 HTTP 标头“x-device-oemId”。值是设备 OEM 的名称。
Body 参数application/json
keyID
string 
唯一标识
必需
钥匙ID
action
string 
钥匙管理事件类型
必需
TERMINATE-终止
SUSPEND-暂停
RESUME-恢复
deviceRemoteTerminationRequest
object 
可选
由所有者设备提供:当共享密钥从所有者设备上被终止时,用于终止远程密钥的远程终止请求。 DigitalKeyx签署。SK在第14节中定义
version
string 
指定的算法的标识符。示例“ECIES_v1”
可选
ephemeralPublicKey
string 
临时公钥
可选
十六进制编码的发件人的临时公钥。为单个消息生成的临时密钥对。
发送方公钥的编码格式:concat(0x04, x, y)(对于基于命名曲线 secp256r1 1.2.840.10045.3.1.7 生成的密钥,总共 65 个字节)
publicKeyHash
string 
公钥指纹
可选
十六进制编码的收件人的钥匙协议公钥指纹。
指纹生成算法:sha256Hash(toUncompressedRawECPublicKeyFormat(recipientKAPublicKey)
ECIES_v1 钥匙协议中使用的接收系统的未压缩钥匙协议公钥 (concat(0x04, x, y)) 的 SHA-256 哈希
data
string 
加密数据
可选
加密数据的Base64编码。
data=base64Encode(encrypt(unencryptedData, symmetricEncryptionParams))
serverRemoteTerminationRequest
string 
可选
由KTS提供:当车辆OEM服务器上的所有者密钥或共享密钥被终止时,用于终止远程密钥的远程终止请求。
由第14节定义的vehicle - oem . sig . sk签署。
vehicleOEMProprietaryData
string 
必需
设备端提供:当设备上的所有者或共享密钥被终止(本地或远程终止)时,包含车辆OEM专有数据的数字密钥私有邮箱的分段。
示例
{
    "keyID": "4938205039594",
    "action": "RESUME",
    "deviceRemoteTerminationRequest": {
        "version": "ECIES_v1",
        "ephemeralPublicKey": "16eb03825f2d97827d91806d630bc4adff44686587ffd58d32f4522ada80cc01126f1a6186b2a00893679e1abf8172fd41f0c0c1bdda3b0046131123616dc0729e",
        "publicKeyHash": "677a1aa052d7caef29d6e3bbc95bf11d43e3609579966168d7d533fd76a02e19",
        "data": "kE8/Rs9sNo4olc6s3Qej7mXhAtDPcp...1Bm/r7bKNX6m365vnIDEDc"
    }
}

示例代码

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
请求示例请求示例
Shell
JavaScript
Java
Swift
curl --location --request POST '/keyApi/v1/manageKey' \
--header 'x-requestId;' \
--header 'x-device-oemId;' \
--header 'Content-Type: application/json' \
--data-raw '{
    "keyID": "4938205039594",
    "action": "RESUME",
    "deviceRemoteTerminationRequest": {
        "version": "ECIES_v1",
        "ephemeralPublicKey": "16eb03825f2d97827d91806d630bc4adff44686587ffd58d32f4522ada80cc01126f1a6186b2a00893679e1abf8172fd41f0c0c1bdda3b0046131123616dc0729e",
        "publicKeyHash": "677a1aa052d7caef29d6e3bbc95bf11d43e3609579966168d7d533fd76a02e19",
        "data": "kE8/Rs9sNo4olc6s3Qej7mXhAtDPcp...1Bm/r7bKNX6m365vnIDEDc"
    }
}'

返回响应

🟢201成功
application/json
Body
responseHeader
object 
公共响应标头
必需
statusCode
string 
状态码
必需
encryptedData
object 
加密数据
必需
version
string 
版本
必需
ephemeralPublicKey
string 
十六进制编码的发件人的临时公钥。
必需
publicKeyHash
string 
十六进制编码的收件人的钥匙协议公钥指纹。
必需
data
string 
加密数据的Base64编码。
必需
示例
{
    "responseHeader": {
        "statusCode": "200"
    },
    "encryptedData": {
        "version": "ECIES_v1",
        "ephemeralPublicKey": "098234098234750893476372832742373468923482357508932832742373468923482347637283274237346892348235",
        "publicKeyHash": "50982347502373468923482385098234750237346892394346892348234763728327",
        "data": "ydST1ZG5Q3cflzfM1qjjwpmOmWQHta...SBBiIAGK3PUbdE2IF/MmPefY9b"
    }
}
上一页
管理钥匙-暂停钥匙
下一页
生成分享会话
Built with