CCC、ICCE和ICCOA数字钥匙协议

一、CCC

CCC(Car Connectivity Consortium)车联网联盟是一个致力于制定智能手机到汽车连接解决方案标准的全球跨行业组织。2021年7月CCC将UWB定义为第三代数字钥匙的核心技术,并发布CCC R3(第三代数字钥匙)规范。

CCC R3是基于NFC/BLE/UWB作为基础的无线电技术的使用,该系统采用非对称密码技术对车辆和设备进行相互签名认证,且只对已知车辆显示身份,只有使用和车辆存储的公钥相对应的私钥签名计算,车辆才能进行解闭锁、启动发动机等功能。R3可以兼容R2(第二代数字钥匙),R1(第一代数字钥匙)是独立于R2、R3进行部署。

二、ICCE

ICCE(Intelligent Car Connectivity Industry Ecosystem Alliance)智慧车联产业生态联盟
ICCE是中国智能终端和汽车领域主流厂商(由华为主导)联合打造的开放平台,经过将近3年多的发展,已经成为国内车联产业领域最大的产业联盟。联盟已经构建了车钥匙、手机-车互联两大技术标准体系,并发布了8篇技术标准。到目前为止,已经有12家整车企业、共20多款车型商用或即将商用ICCE数字车钥匙,基于ICCE开放手机-车机互联标准的车型已经达到350款以上。

ICCE使用对称密钥体系

三、ICCOA

ICCOA(Intelligent CarConnectivity Open Alliance)智慧车联开放联盟
ICCOA标准是一种开放性的接口,由国际商会和开放联盟(由小米,Oppo和Vivo主导)联合制定,旨在促进全球贸易和投资的发展,以及推动不同系统之间的数据交互和信息共享1。

ICCOA标准提供了一种数字车钥匙的解决方案,包括车钥匙功能、车辆遥控功能等,可以适用于不同品牌和型号的汽车。该标准于2023年9月1日正式发布实施,相较于第一版标准(ICCOA DK1.2),新标准(ICCOA DK2.0)在多个方面进行了重大升级和创新,例如新增了对NFC的支持、支持可穿戴设备等2。

ICCOA使用非对称的证书认证体系

四、比较

  1. 安全性:ICCOA比ICCE的安全性更高,因为ICCOA更加靠近CCC协议,而CCC协议的安全性较好。
  2. 便捷性:ICCE比ICCOA和CCC更方便、更简单,用户使用起来也更加友好。ICCOA和CCC的落地难度较大,开发和使用起来比较麻烦。
  3. 成熟度:目前,ICCE的落地项目较多,而ICCOA的正式规范版本都还没有发布,因此ICCE在成熟度上已经领先ICCOA很多。
  4. 知识产权:ICCOA抄袭CCC,有盗取商业机密风险,即版权;

综上所述,ICCE在便捷性上具有优势,而ICCOA在安全性上表现更好。具体选择哪种协议,需要根据实际应用场景和需求进行权衡。

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
你好!以下是按照自定义排序并生成Java字符串的Python代码: ```python data = { "id": "1000689", "clientVersion": 1, "eseSynced": False, "storageSynced": False, "keyType": "1", "name": "owner-name-01", "phone": "13800000001", "timeStart": 1689609600, "timeStop": 1721145600, "vin": "LASHTEST123934642", "approveStatus": "APPROVED", "authType": "13", "keyStatus": "ACTIVE", "storageId": "36f86f80-9942-49a3-aaa7-c4df7b196794", "storageType": "CYWALL", "appSynced": False, "carId": "111", "carLicense": "京A123456", "userId": "100001", "limitType": "1", "limitCounts": 0, "signerId": "100001", "cert": "404142434445464748494A4B4C4D4E4F0Bf87915658d6d4f322e0b3663e3dfa5504393b50bb7acbd30b292bba1f8e3010a6e4025a66c6b08aae8d05865f8b915ac1ae000f91142a2c3", "kcom": "5cc99726c67ace488752da754e486468", "krindex": "11", "svcuuid": "0000181A-0000-1000-8000-00805F9B34FB", "writeuuid": "00002A6E-0000-1000-8000-00805F9B34FB", "indicateuuid": "00002A6F-0000-1000-8000-00805F9B34FB", "mac": "null", "pin": "null", "validType": "SMS", "protocol": "ICCE", "u2fPassed": "false", "cardid": "61B3FCFC236BEE77db932d7152202bc7", "keyUid": "61B3FCFC236BEE77" } custom_order = [ "id", "clientVersion", "eseSynced", "storageSynced", "keyType", "name", "phone", "timeStart", "timeStop", "vin", "approveStatus", "authType", "keyStatus", "storageId", "storageType", "appSynced", "carId", "carLicense", "userId", "limitType", "limitCounts", "signerId", "cert", "kcom", "krindex", "svcuuid", "writeuuid", "indicateuuid", "mac", "pin", "validType", "protocol", "u2fPassed", "cardid", "keyUid" ] sorted_data = sorted(data.items(), key=lambda x: custom_order.index(x[0])) java_string = ''.join([f'"{k}":"{v}"' for k, v in sorted_data]) print(f"Java字符串: {java_string}") ``` 这段代码将按照自定义排序将字典的键值对进行排序,并将排序后的键值对生成Java字符串。请注意,Java字符串的生成是以双引号包裹键和值的。可以根据需要进行适当的修改。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值