CN115696321A - 一种数字钥匙的秘钥灌装方法及系统 - Google Patents

一种数字钥匙的秘钥灌装方法及系统 Download PDF

Info

Publication number
CN115696321A
CN115696321A CN202211305338.9A CN202211305338A CN115696321A CN 115696321 A CN115696321 A CN 115696321A CN 202211305338 A CN202211305338 A CN 202211305338A CN 115696321 A CN115696321 A CN 115696321A
Authority
CN
China
Prior art keywords
key
vehicle
vehicle end
filling
cloud
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211305338.9A
Other languages
English (en)
Inventor
田杰
刘洋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chongqing Changan Automobile Co Ltd
Original Assignee
Chongqing Changan Automobile Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Chongqing Changan Automobile Co Ltd filed Critical Chongqing Changan Automobile Co Ltd
Priority to CN202211305338.9A priority Critical patent/CN115696321A/zh
Publication of CN115696321A publication Critical patent/CN115696321A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Lock And Its Accessories (AREA)

Abstract

本发明公开了一种数字钥匙的秘钥灌装方法及系统,该方法包括:移动终端向车端数字钥匙模块发起创建主秘钥灌装请求;车端响应创建主秘钥灌装请求以生成车端私钥和车端公钥;车端利用云端公钥对车端信息及车端公钥加密,以获得第一消息;云端接收并解析所述第一消息;通过移动终端,云端利用挑战码和第一随机数与车端进行主秘钥协商,在不传输主秘钥的前提下,云端和车端各自计算用于灌装的主秘钥;云端通过移动终端向车端发送主秘钥灌装命令;车端接收主秘钥灌装命令,并执行主秘钥灌装操作。本方法将汽车的秘钥灌装流程从车企边缘到用户上,减少了车企的研发成本,而且可以实现汽车在未连接互联网的情况下仍可进行初始化灌装操作。

Description

一种数字钥匙的秘钥灌装方法及系统
技术领域
本发明涉及汽车电子通讯技术领域,特别是涉及一种数字钥匙的秘钥灌装方法及系统。
背景技术
居民个人汽车保有量持续增加,并且在数字化高度发达今天,移动智能终端越来越普及,手机及智能穿戴设备的使用频率和场景越来越高。对生活中各类物品的智能化要求越来越高。其中车辆数字钥匙的技术,对比传统钥匙其提供了更多的功能,可以有更高的用户体验,基本解除了对实体钥匙的依赖。所以数字钥匙接受度和使用率也越来越高。
但是在数字钥匙越来越追求体便利的同时,其安全性问题也不可忽视,行业内普遍定制了严格的信息安全规则,即要求每个车辆钥匙唯一。传统技术里,车端钥匙模块的实例化都是在车辆产线环节,因为要做到每个钥匙唯一所以会涉及一个独立的秘钥灌装系统,这个系统的研发维护投入成本,以及在车辆下线环境中的时间占用成本并不低。此外,现有技术中在秘钥生成过程中,往往要求汽车必须连接互联网,但是在车辆下线销售过程中,用户使用车辆的前期,一些车辆的车联网系统TBOX经常出现弱网或无网的情况,进而导致秘钥灌装失败。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种数字钥匙的秘钥灌装方法及系统,以解决上述技术问题。
为实现上述目的及其它相关目的,本发明提供一种数字钥匙的秘钥灌装方法,包括:
移动终端向车端数字钥匙模块发起创建主秘钥灌装请求;
所述车端响应所述创建主秘钥灌装请求以生成车端私钥和车端公钥;
所述车端利用云端公钥对车端信息及车端公钥加密,以获得第一消息,所述车端信息至少包括挑战码和第一随机数;
所述云端接收并解析所述第一消息,以获取所述挑战码、所述第一随机数及所述车端公钥;
通过所述移动终端,所述云端利用所述挑战码和所述第一随机数与所述车端进行主秘钥协商,在不传输主秘钥的前提下,所述云端和所述车端各自计算用于灌装的主秘钥;
所述云端通过所述移动终端向所述车端发送主秘钥灌装命令;
所述车端接收所述主秘钥灌装命令,并执行所述主秘钥灌装操作。
在本发明的一可选实施例中,移动终端向车端数字钥匙模块发起创建主秘钥灌装请求,具体包括:
所述移动终端与所述车端完成安全通道建立;
所述移动终端生成所述挑战码;
所述移动终端通过蓝牙安全通道向所述车端数字钥匙模块发起秘钥灌装申请,并将所述挑战码发给车端。
在本发明的一可选实施例中,所述车端响应所述创建主秘钥灌装请求以生成车端私钥和车端公钥,具体包括:
所述车端响应所述创建主秘钥灌装请求,以生成所述第一随机数;
根据所述第一随机数、所述挑战码及所述车端数字钥匙模块的标识信息,获取所述车端私钥和所述车端公钥。
在本发明的一可选实施例中,通过所述移动终端,所述云端利用所述挑战码和所述第一随机数与所述车端进行主秘钥协商,在不传输主秘钥的前提下,所述云端和所述车端各自计算用于灌装的主秘钥,具体包括:
所述云端生成第二随机数和协商秘钥,并利用所述第一随机数、所述第二随机数和所述挑战码计算第一中间协商量;
所述云端使用所述协商秘钥对所述第一中间协商量和所述数字钥匙模块的标识信息进行加密,以形成第一密文;
所述云端利用所述车端公钥对所述第一密文和所述协商秘钥进行加密,形成第二消息;
所述云端生成秘钥灌装授权信息并使用移动终端公钥加密,并将生成的所述第二消息和所述秘钥灌装授权信息发送给所述移动终端;
所述移动终端使用移动终端私钥解密所述秘钥灌装授权信息,并将所述第二消息转发至所述车端;
所述车端利用所述第一随机数和所述挑战码获取主秘钥参数,利用所述协商秘钥对所述主秘钥参数加密形成第三消息,并将所述第三消息发送给所述移动终端;
所述车端利用所述车端私钥对所述第二消息进行解密,以获取所述第一密文;
所述车端利用所述协商秘钥对所述第一密文进行解密,以获取所述第一中间协商量和所述数字钥匙模块的标识信息;
所述车端利用第三随机数、所述挑战码、所述第二消息及所述第一中间协商量获取第一主秘钥,其中,所述第三随机数由所述车端生成;
所述移动终端向所述云端发送所述第三消息,并携带所述秘钥灌装授权信息,向所述云端正式申请主秘钥灌装;
所述云端使用所述协商秘钥解密所述第三消息,以获取得所述主秘钥参数;
所述云端响应所述移动终端的主秘钥灌装申请,利用所述第二随机数、所述挑战码、所述第二消息及所述主秘钥参数生成第二主秘钥。
在本发明的一可选实施例中,所述云端生成第二随机数和协商秘钥,并利用所述第一随机数、所述第二随机数和所述挑战码计算第一中间协商量,具体包括:
所述云端利用所述第一随机数与混淆偏移量生成口令,并对所述挑战码和所述口令进行哈希计算,以获取随机因子;
所述云端利用下式计算所述第一中间协商量X:
X=x*G+h*P1,
其中,x为所述第二随机数,G为SM2国密算法的椭圆曲线上的基点,h为所述随机因子, P1为椭圆上预先选好作为混淆的任意一点。
在本发明的一可选实施例中,所述车端利用第三随机数、所述挑战码、所述第二消息及所述第一中间协商量获取第一主秘钥,具体包括:
所述车端利用所述第三随机数、所述第一中间协商量计算获取第一中间值;
所述车端利用所述挑战码、所述第二消息及所述第一中间值获取所述第一主秘钥。
在本发明的一可选实施例中,所述车端利用所述第一随机数和所述挑战码获取主秘钥参数,具体包括:
所述车端利用所述第一随机数与混淆偏移量生成口令,并对所述挑战码和所述口令进行哈希计算,以获取随机因子;
所述车端生成第三随机数,并利用下式计算第二中间协商量Y:
Y=y*G+h*P2,其中,y为所述第三随机数,G为SM2国密算法的椭圆曲线上的基点,h为所述随机因子,P2为椭圆上预先选好作为混淆的任意一点;
将所述第二中间协商量作为一所述主秘钥参数。
在本发明的一可选实施例中,所述云端响应所述移动终端的主秘钥灌装申请,利用所述挑战码、所述第二消息及所述主秘钥参数生成所述第二主秘钥,具体包括:
所述云端利用所述第二中间协商量、所述第二随机数及所述随机因子获取第二中间值;
所述云端利用所述挑战码、所述第二消息及所述第二中间值生成所述第二主秘钥。
在本发明的一可选实施例中,所述数字钥匙的秘钥灌装方法,还包括:所述云端对生成的所述第二主秘钥进行备案。
为实现上述目的及其它相关目的,本发明提供一种数字钥匙的秘钥灌装系统,所述数字钥匙的秘钥灌装系统包括:
移动终端,车端以及云端;
所述移动终端,所述车端以及所述云端通过如下方式来进行数字钥匙的秘钥灌装:
所述移动终端向车端数字钥匙模块发起创建主秘钥灌装请求;
所述车端响应所述创建主秘钥灌装请求以生成车端私钥和车端公钥;
所述车端利用云端公钥对车端信息及车端公钥加密,以获得第一消息,所述车端信息至少包括挑战码和第一随机数;
所述云端接收并解析所述第一消息,以获取所述挑战码、所述第一随机数及所述车端公钥;
通过所述移动终端,所述云端利用所述挑战码和所述第一随机数与所述车端进行主秘钥协商,在不传输主秘钥的前提下,所述云端和所述车端各自计算用于灌装的主秘钥;
所述云端通过所述移动终端向所述车端发送主秘钥灌装命令;
所述车端接收所述主秘钥灌装命令,并执行所述主秘钥灌装操作。
本发明的有益效果:
本公开实施例提供的基于数字钥匙的秘钥灌装方法,通过移动终端向车端数字钥匙模块发起创建主秘钥灌装请求;所述车端响应所述创建主秘钥灌装请求以生成车端私钥和车端公钥;所述车端利用云端公钥对车端信息及车端公钥加密,以获得第一消息,所述车端信息至少包括挑战码和第一随机数;所述云端接收并解析所述第一消息,以获取所述挑战码、所述第一随机数及所述车端公钥;通过所述移动终端,所述云端利用所述挑战码和所述第一随机数与所述车端进行主秘钥协商,在不传输主秘钥的前提下,所述云端和所述车端各自计算用于灌装的主秘钥;所述云端通过所述移动终端向所述车端发送主秘钥灌装命令;所述车端接收所述主秘钥灌装命令,并执行所述主秘钥灌装操作。实现了秘钥灌装流程从车企本身边缘化到车辆用户上,做到了去中心化车厂,既做到了节省人力成本、简化生产环节,又提高了车辆数字钥匙使用过程中的安全性,此外本实施例所提供的基于数字钥匙的秘钥灌装方法还能够实现在汽车为连接互联网的前提下,仍能进行数字钥匙的初始化秘钥操作。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术者来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1为本申请的一示例性实施例示出的一种车辆数字钥匙系统的框图。
图2为本申请的一示例性实施例示出的数字钥匙的秘钥方法的流程示意图。
图3为本申请的一示实施例中的步骤S210在一示例性的实施例中的流程。
图4为本申请的一示实施例中的步骤S220在一示例性的实施例中的流程图。
图5为本申请的一示实施例中示出的数字钥匙的秘钥灌装系统的框图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图示中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
在下文描述中,探讨了大量细节,以提供对本发明实施例的更透彻的解释,然而,对本领域技术人员来说,可以在没有这些具体细节的情况下实施本发明的实施例是显而易见的,在其他实施例中,以方框图的形式而不是以细节的形式来示出公知的结构和设备,以避免使本发明的实施例难以理解。
本公开实施例的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开实施例的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。
除非另有说明,术语“多个”表示两个或两个以上。
本公开实施例中,字符“/”表示前后对象是一种“或”的关系。例如,A/B表示:A或B。
术语“和/或”是一种描述对象的关联关系,表示可以存在三种关系。例如,A和/或B,表示:A或B,或,A和B这三种关系。
图1是本申请的一示例性实施例示出的车辆数字钥匙系统的示意图,所述数字钥匙系统包括平台端101、车辆端102以及手机端103。所述平台端101的功能主要包括生成及管理数字钥匙、下发数字钥匙、业务逻辑处理、云端安全传输通道建立、数字钥匙组件远程升级、数字钥匙日志与监控等;所述车辆端102的功能主要包括蓝牙通信组件控制、数字钥匙定位、认证/加密及安全存储、云端通信控制、车控执行等;所述手机端103的功能主要包括处理业务逻辑、控制通信组件、控制安全组件、控制云端通信等。利用所述车辆数字系统100,能很好满足了现代人群对智智能化的需求并且给用户带来了更高的用户体验,基本解除了对实体钥匙的控制。
数字钥匙在越来越追求体验便利的同时,其安全性问题也不可忽视。有鉴于此行业内普遍制定了严格的信息安全规则,要求每个车辆钥匙唯一。但是目前的汽车行业,在将车辆段钥匙模块的实例化都是在车辆产线环节完成的,由于要做到每个钥匙唯一,因而需要一个独立的秘钥灌装系统,这个系统的研发维护投入成本以及在车辆下线环境中的时间占用成本低都非常高。
因此,如果能将秘钥灌装流程从车企本身边缘化到车辆用户身上,不仅能精简汽车生产过程中的数字钥匙模块的出厂前秘钥灌装系统流程,而且可以节省人力投入成本,简化生产流程,加快汽车上线时间。
基于上述情况,本公开实施例公开一种数字钥匙的秘钥灌装方案,其中,图2示出了本申请的一示例性实施例的一种基于数字钥匙的秘钥灌装方法的流程图。
请参阅图2所示,本公开实施例的数字钥匙的秘钥灌装方法,包括:
步骤S210,移动终端向车端数字钥匙模块发起创建主秘钥灌装请求;
步骤S220,所述车端响应所述创建主秘钥灌装请求以生成车端私钥和车端公钥;
步骤S230,所述车端利用云端公钥对车端信息及车端公钥加密,以获得第一消息,所述车端信息至少包括挑战码和第一随机数;
步骤S240,所述云端接收并解析所述第一消息,以获取所述挑战码、所述第一随机数及所述车端公钥;
步骤S250,通过所述移动终端,所述云端利用所述挑战码和所述第一随机数与所述车端进行主秘钥协商,在不传输主秘钥的前提下,所述云端和所述车端各自计算用于灌装的主秘钥;
步骤S260,所述云端通过所述移动终端向所述车端发送主秘钥灌装命令;
步骤S270,所述车端接收所述主秘钥灌装命令,并执行所述主秘钥灌装操作。
需要说明的是,本实施例所提供的基于数字钥匙的秘钥灌装方法,需要移动终端与车企管理服务TSP通过互联网访问,完成基础的TLS双向认证连接,并且移动终端与车端的数字钥匙模块建立蓝牙安全通道。
本公开实施例所提供的数字钥匙的秘钥灌装方法,涉及到云端、车端以及移动终端进行交互。其中云端作为数字钥匙派生的业务控制端和秘钥协商者,车端的数字钥匙模块作为秘钥协商者,移动终端作为流程的发起者。
本公开实施例提供的数字钥匙的秘钥灌装方法,实现了秘钥灌装流程从车企本身边缘化到车辆用户上,做到了去中心化车厂,既做到了节省人力成本、简化生产环节,又提高了车辆数字钥匙使用过程中的安全性。此外本实施例所提供的基于数字钥匙的秘钥灌装方法还能够实现在汽车为连接互联网的前提下,仍能进行数字钥匙的初始化秘钥操作。
下面结合附图2和图3和图4来详细描述各步骤的实现过程:
首先,执行步骤S210,移动终端向车端数字钥匙模块发起创建主秘钥灌装请求。
需要说明的是,本步骤是基于车主在移动终端完成了车厂APP的登录后,发现APP绑定的车辆上没有安装数字钥匙。
当移动终端向车端数字钥匙模块发起创建主秘钥灌装请求时,具体包括:
首先执行步骤S310,移动终端与车端的蓝牙模块连接并建立安全通道,当移动终端与蓝牙模块建立起安全通道后,紧接着执行步骤S320,移动终端生成一个挑战码A,最后执行步骤S330,移动终端通过蓝牙安全通道向车端数字钥匙模块发起创建主秘钥灌装请求,并将生成的挑战码A发送给车端。
当移动终端向车端数字钥匙模块发起创建主秘钥灌装请求后,接着执行步骤S220,所述车端响应所述创建主秘钥灌装请求以生成车端私钥和车端公钥。
需要说明的是,为了数据安全起见,当车端数字收到移动终端通过蓝牙安全通道向车端数字钥匙模块发起创建主秘钥灌装请求后,会进行是否允许灌装主秘钥的判断,当允许灌装后,才会执行后续操作,否则主秘钥灌装流程结束。
当车端数字钥匙模块允许灌装主秘钥后,所述车端响应所述创建主秘钥灌装请求以生成车端私钥和车端公钥,具体包括:
首先执行步骤S410,车端响应移动终端发起创建主秘钥灌装请求以生成第一随机数b;紧着执行步骤S420,车端根据所述第一随机数b、挑战码A以及车端数字钥匙模块的标识信息TUID,获取所述车端私钥SK1和车端公钥PK1。
需要说明的是,在本实施例中,利用第一随机数b、挑战码A以及车端数字钥匙模块的标识信息TUID为参数车端私钥SK1时,可以采用scrypt、argon2、vdf等高安全性的hash算法,所述车端公钥PK1由所述车端私钥SK1求模得到。
当车端响应所述创建主秘钥灌装请求以生成车端私钥和车端公钥后,接着执行步骤 S230,所述车端利用云端公钥对车端信息及车端公钥加密,以获得第一消息,所述车端信息至少包括挑战码和第一随机数。
需要说明的是,车端信息还可以包括数字钥匙模块TUID的哈希值,以及时间戳。
接着,执行步骤S240,所述云端接收并解析所述第一消息,以获取所述挑战码A、所述第一随机数b及所述车端公钥PK1。
需要说明的是,当第一消息中包含数字钥匙模块的TUID的哈希值时,云端会结合备案的人车关系得到车端数字钥匙模块的TUID,然后对存储在车端数字钥匙模块的TUID进行哈希运算,并与解析车端所发送的第一消息中的哈希值进行比较,来确定用户的操作是否合法。
接着,执行步骤S250,通过所述移动终端,所述云端利用所述挑战码和所述第一随机数与所述车端进行主秘钥协商,在不传输主秘钥的前提下,所述云端和所述车端各自计算用于灌装的主秘钥。
当云端利用所述挑战码和所述第一随机数与所述车端进行主秘钥协商,在不传输主秘钥的前提下,所述云端和所述车端各自计算灌装主秘钥时,具体包括:
首先,云端生成第二随机数x和协商秘钥k,并利用第一随机数b、所述第二随机数x和挑战码A计算第一中间协商量X;
在本实施例中,第一中间协商量X的求解过程如下:
首先云端利用第一随机数b加混淆偏量M以生成口令c;接着对挑战码A和口令c进行哈希计算以得到随机因子h,再接着云端一个生成第二随机数x和一个协商秘钥k,其中的k 作为与车端的会话钥匙;最后云端利用x*G+h*P1求出第一中间协商量X,即X=x*G+h*P1,其中的G为SM2国密算法的椭圆曲线上的基点,P1为椭圆上预先选好作为混淆的任意1点。
需要说明的是,在本实施例中对于混淆偏移量可以使用OTP类的离线令牌技术来生成。
接着,云端使用协商秘钥k对所述第一中间协商量X和所述数字钥匙模块的标识信息 TUID进行加密,以形成第一密文,同时云端利用车端公钥PK0对所述第一密文和所述协商秘钥k进行加密,形成第二消息;此外,云端还会生成秘钥灌装授权信息Token并使用移动终端公钥Pk2加密,并将生成的所述第二消息和所述秘钥灌装授权信息Token发送给所述移动终端。
紧着,移动终端使用移动终端私钥解密所述秘钥灌装授权信息Token,并将所述第二消息转发至所述车端。
接着,车端利用所述第一随机数b和所述挑战码A获取主秘钥参数,利用所述协商秘钥对所述主秘钥参数加密形成第三消息,并将所述第三消息发送给所述移动终端。
需要说明的是,在执行该步骤时,车端还需要利用云端公钥PK0对接收到的第三消息进行验签,以确认传输的数据是否被修改,如果数据被修改的话,本次主秘钥灌装流程结束。
在本实施例中,车端利用所述第一随机数b和所述挑战码A获取主秘钥参数的具体过程如下:
首先车端利用混淆偏移量M和第一随机数b生成口令c,接着车端对口令和挑战码A进行哈希计算,得到随机因子h;再接着车端生成一个第三随机数y,并利用Y=y*G+h*P2计算第二中间协商量Y,其中y为所述第三随机数,G为SM2国密算法的椭圆曲线上的基点,h为所述随机因子,P2为椭圆上预先选好作为混淆的任意一点;最后,将求得的中间协商量Y作为一主秘钥参数。
接着,车端利用所述车端私钥SK1对所述第二消息进行解密,以获取所述第一密文,并利用所述协商秘钥k对所述第一密文进行解密,以获取所述第一中间协商量X和所述数字钥匙模块的标识信息TUID。
接着,所述车端利用第三随机数、所述挑战码、所述第二消息及所述第一中间协商量获取第一主秘钥CMDK1,其中,所述第三随机数由所述车端生成。
需要说明的是,在本步骤中第一主秘钥CMDK1的具体计算过程如下:
首先利用公式y*(X-h*P1)计算出第一中间值S1,其中y为第三随机数,X为第一中间写商量,h为随机因子,P1为椭圆上预先选好的作为混淆的任意一点;接着对挑战码A和第一中间值S1和第二消息的哈希值进行哈希,将导出的结果作为第一主秘钥CMDK1。
接着,所述移动终端向所述云端发送所述第三消息,并携带所述秘钥灌装授权信息 Token,向所述云端正式申请主秘钥灌装;
接着,所述云端使用所述协商秘钥k解密所述第三消息,以获取得所述主秘钥参数;
最后,所述云端响应所述移动终端的主秘钥灌装申请,利用所述第二随机数、所述挑战码、所述第二消息及所述主秘钥参数生成第二主秘钥CMDK2。
需要说明的是,在该步骤中,第二主秘钥CMDK2的具体计算过程如下:
首先云端利用第二中间协商量Y、第二随机数以及随机因子h获取第二中间值S2,其中第二中间值S2的计算公式为S2=x*(Y-h*P2);当第二中间值S2求出后,云端对挑战码A、第二中间值S2、以及第二消息的哈希值作哈希运算,将导出的结果作为第二主秘钥CMDK2。
此处,需说明的是对于中间值S1,如前文所描述的S1=y*(X-h*P1),如果将X=x*G+h*P1 代入S1=y*(X-h*P1),可得S1=x*(x*G+h*P1-h*P1),因为P1为椭圆曲线上的点,其满足阿贝尔群,可以进行结合律运算,进而将S1化简可得到最后的结果为,S1=x*y*G,同理,对 S2也进行类似操作,得到S2=x*y*G,故而第一中间值S1和第二中间值S2是相等的,从而保证了生成的第一主秘钥匙CMDK1和第二主秘钥CMDK2也是相等的。
还需说明的是第一主秘钥CMDK1和第二主秘钥CMDK2,实质上是一个值,本文仅是为了描述方便在名称上做了区分。
还需说明的是,所述云端会对生成的第二主秘钥进行备案,用于方便后续用户的使用。
当云端和车端都生成主秘钥后,执行步骤S260,所述云端通过所述移动终端向所述车端发送主秘钥灌装命令;
当所述车端收到云端发来的主秘钥灌装命令后,执行步骤S270,所述车端接收所述主秘钥灌装命令,并执行所述主秘钥灌装操作。
再次,需说明的是,当主秘钥灌装流程结束后,移动终端提示用户初始化秘钥灌装完成引导用户进行后续的钥匙下载流程。
最后,需要说明的是,当主秘钥CMDK灌装完成后,云端和车端均有记录,后续进行钥匙下载时,只需提供凭据和车端和移动终端的标识信息TUID,便可以在云端通过主秘钥CMDK 派生出秘钥DK。
图5是出了本申请的一示例性实施例示出的数字钥匙的秘钥灌装系统的框图。所述数字钥匙的秘钥灌装系统包括移动终端501,车端502以及云端503,所述移动终端501,所述车端502以及所述云端503通过如下方式来进行数字钥匙的秘钥灌装:
所述移动终端501向车端502的数字钥匙模块发起创建主秘钥灌装请求;所述车端502 响应所述创建主秘钥灌装请求以生成车端502私钥和车端公钥;所述车端502利用云端公钥对车端信息及车端公钥加密,以获得第一消息,所述车端信息至少包括挑战码和第一随机数所述云端503接收并解析所述第一消息,以获取所述挑战码、所述第一随机数及所述车端公钥;通过所述移动终端,所述云端503利用所述挑战码和所述第一随机数与所述车端502进行主秘钥协商,在不传输主秘钥的前提下,所述云端和所述车端各自计算用于灌装的主秘钥所述云端503通过所述移动终端向所述车端502发送主秘钥灌装命令;所述车端502接收所述主秘钥灌装命令,并执行所述主秘钥灌装操作。
需要说明的是,上述实施例所提供的数字钥匙的秘钥灌装系统与上述实施例所提供的数字钥匙的秘钥灌装方法属于同一构思,其中各个模块和单元执行操作的具体方式已经在方法实施例中进行了详细描述,此处不再赘述。上述实施例所提供的数字钥匙的秘钥灌装系统在实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将系统的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能,本处也不对此进行限制。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。

Claims (10)

1.一种基于数字钥匙的秘钥灌装方法,其特征在于,包括:
移动终端向车端数字钥匙模块发起创建主秘钥灌装请求;
所述车端响应所述创建主秘钥灌装请求以生成车端私钥和车端公钥;
所述车端利用云端公钥对车端信息及车端公钥加密,以获得第一消息,所述车端信息至少包括挑战码和第一随机数;
所述云端接收并解析所述第一消息,以获取所述挑战码、所述第一随机数及所述车端公钥;
通过所述移动终端,所述云端利用所述挑战码和所述第一随机数与所述车端进行主秘钥协商,在不传输主秘钥的前提下,所述云端和所述车端各自计算用于灌装的主秘钥;
所述云端通过所述移动终端向所述车端发送主秘钥灌装命令;
所述车端接收所述主秘钥灌装命令,并执行所述主秘钥灌装操作。
2.根据权利要求1所述的数字钥匙的秘钥灌装方法,其特征在于,移动终端向车端数字钥匙模块发起创建主秘钥灌装请求,具体包括:
所述移动终端与所述车端完成安全通道建立;
所述移动终端生成所述挑战码;
所述移动终端通过蓝牙安全通道向所述车端数字钥匙模块发起秘钥灌装申请,并将所述挑战码发给车端。
3.根据权利要求1所述的数字钥匙的秘钥灌装方法,其特征在于,所述车端响应所述创建主秘钥灌装请求以生成车端私钥和车端公钥,具体包括:
所述车端响应所述创建主秘钥灌装请求,以生成所述第一随机数;
根据所述第一随机数、所述挑战码及所述车端数字钥匙模块的标识信息,获取所述车端私钥和所述车端公钥。
4.根据权利要求1所述的数字钥匙的秘钥灌装方法,其特征在于,通过所述移动终端,所述云端利用所述挑战码和所述第一随机数与所述车端进行主秘钥协商,在不传输主秘钥的前提下,所述云端和所述车端各自计算用于灌装的主秘钥,具体包括:
所述云端生成第二随机数和协商秘钥,并利用所述第一随机数、所述第二随机数和所述挑战码计算第一中间协商量;
所述云端使用所述协商秘钥对所述第一中间协商量和所述数字钥匙模块的标识信息进行加密,以形成第一密文;
所述云端利用所述车端公钥对所述第一密文和所述协商秘钥进行加密,形成第二消息;
所述云端生成秘钥灌装授权信息并使用移动终端公钥加密,并将生成的所述第二消息和所述秘钥灌装授权信息发送给所述移动终端;
所述移动终端使用移动终端私钥解密所述秘钥灌装授权信息,并将所述第二消息转发至所述车端;
所述车端利用所述第一随机数和所述挑战码获取主秘钥参数,利用所述协商秘钥对所述主秘钥参数加密形成第三消息,并将所述第三消息发送给所述移动终端;
所述车端利用所述车端私钥对所述第二消息进行解密,以获取所述第一密文;
所述车端利用所述协商秘钥对所述第一密文进行解密,以获取所述第一中间协商量和所述数字钥匙模块的标识信息;
所述车端利用第三随机数、所述挑战码、所述第二消息及所述第一中间协商量获取第一主秘钥,其中,所述第三随机数由所述车端生成;
所述移动终端向所述云端发送所述第三消息,并携带所述秘钥灌装授权信息,向所述云端正式申请主秘钥灌装;
所述云端使用所述协商秘钥解密所述第三消息,以获取得所述主秘钥参数;
所述云端响应所述移动终端的主秘钥灌装申请,利用所述第二随机数、所述挑战码、所述第二消息及所述主秘钥参数生成第二主秘钥。
5.根据权利要求4所述的数字钥匙的秘钥灌装方法,其特征在于,所述云端生成第二随机数和协商秘钥,并利用所述第一随机数、所述第二随机数和所述挑战码计算第一中间协商量,具体包括:
所述云端利用所述第一随机数与混淆偏移量生成口令,并对所述挑战码和所述口令进行哈希计算,以获取随机因子;
所述云端利用下式计算所述第一中间协商量X:
X=x*G+h*P1,
其中,x为所述第二随机数,G为SM2国密算法的椭圆曲线上的基点,h为所述随机因子,P1为椭圆上预先选好作为混淆的任意一点。
6.根据权利要求4所述的数字钥匙的秘钥灌装方法,其特征在于,所述车端利用第三随机数、所述挑战码、所述第二消息及所述第一中间协商量获取第一主秘钥,具体包括:
所述车端利用所述第三随机数、所述第一中间协商量计算获取第一中间值;
所述车端利用所述挑战码、所述第二消息及所述第一中间值获取所述第一主秘钥。
7.根据权利要求4所述的数字钥匙的秘钥灌装方法,其特征在于,所述车端利用所述第一随机数和所述挑战码获取主秘钥参数,具体包括:
所述车端利用所述第一随机数与混淆偏移量生成口令,并对所述挑战码和所述口令进行哈希计算,以获取随机因子;
所述车端生成第三随机数,并利用下式计算第二中间协商量Y:
Y=y*G+h*P2,其中,y为所述第三随机数,G为SM2国密算法的椭圆曲线上的基点,h为所述随机因子,P2为椭圆上预先选好作为混淆的任意一点;
将所述第二中间协商量作为一所述主秘钥参数。
8.根据权利要求7所述的数字钥匙的秘钥灌装方法,其特征在于,所述云端响应所述移动终端的主秘钥灌装申请,利用所述挑战码、所述第二消息及所述主秘钥参数生成所述第二主秘钥,具体包括:
所述云端利用所述第二中间协商量、所述第二随机数及所述随机因子获取第二中间值;
所述云端利用所述挑战码、所述第二消息及所述第二中间值生成所述第二主秘钥。
9.根据权利要求4所述的数字钥匙的秘钥灌装方法,其特征在于,所述基于数字钥匙的秘钥灌装方法,还包括:所述云端对生成的所述第二主秘钥进行备案。
10.一种数字钥匙的秘钥灌装系统,其特征在于,所述数字钥匙的秘钥灌装系统包括:
移动终端,车端以及云端;
所述移动终端,所述车端以及所述云端通过如下方式来进行数字钥匙的秘钥灌装:
所述移动终端向车端数字钥匙模块发起创建主秘钥灌装请求;
所述车端响应所述创建主秘钥灌装请求以生成车端私钥和车端公钥;
所述车端利用云端公钥对车端信息及车端公钥加密,以获得第一消息,所述车端信息至少包括挑战码和第一随机数;
所述云端接收并解析所述第一消息,以获取所述挑战码、所述第一随机数及所述车端公钥;
通过所述移动终端,所述云端利用所述挑战码和所述第一随机数与所述车端进行主秘钥协商,在不传输主秘钥的前提下,所述云端和所述车端各自计算用于灌装的主秘钥;
所述云端通过所述移动终端向所述车端发送主秘钥灌装命令;
所述车端接收所述主秘钥灌装命令,并执行所述主秘钥灌装操作。
CN202211305338.9A 2022-10-24 2022-10-24 一种数字钥匙的秘钥灌装方法及系统 Pending CN115696321A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211305338.9A CN115696321A (zh) 2022-10-24 2022-10-24 一种数字钥匙的秘钥灌装方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211305338.9A CN115696321A (zh) 2022-10-24 2022-10-24 一种数字钥匙的秘钥灌装方法及系统

Publications (1)

Publication Number Publication Date
CN115696321A true CN115696321A (zh) 2023-02-03

Family

ID=85100265

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211305338.9A Pending CN115696321A (zh) 2022-10-24 2022-10-24 一种数字钥匙的秘钥灌装方法及系统

Country Status (1)

Country Link
CN (1) CN115696321A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117793709A (zh) * 2024-02-27 2024-03-29 上海银基信息安全技术股份有限公司 车辆数字钥匙密钥灌装方法、系统及装置、介质
CN118570914A (zh) * 2024-08-02 2024-08-30 上海银基信息安全技术股份有限公司 数字钥匙灌装数据生成方法及装置、云平台及存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117793709A (zh) * 2024-02-27 2024-03-29 上海银基信息安全技术股份有限公司 车辆数字钥匙密钥灌装方法、系统及装置、介质
CN118570914A (zh) * 2024-08-02 2024-08-30 上海银基信息安全技术股份有限公司 数字钥匙灌装数据生成方法及装置、云平台及存储介质

Similar Documents

Publication Publication Date Title
CN112055952B (zh) 一种车载设备升级方法及相关设备
EP3723399A1 (en) Identity verification method and apparatus
CN109448195B (zh) 车辆虚拟钥匙的认证方法及装置
CN115696321A (zh) 一种数字钥匙的秘钥灌装方法及系统
CN112543927B (zh) 一种设备升级方法及相关设备
WO2017101310A1 (zh) 一种车辆远程控制方法、装置及系统
US11057195B2 (en) Method and system for providing security for the first time a mobile device makes contact with a device
CN104158819A (zh) 车载信息娱乐终端的安全认证方法
CN112995967A (zh) 一种身份信息认证方法、客户端、充电桩、服务端和系统
CN109379403B (zh) 物联网设备的控制方法、装置、服务器和终端设备
CN113541970B (zh) 分布式标识符的使用方法和分布式标识符使用系统
JP7497438B2 (ja) 証明書申請方法およびデバイス
CN109005032B (zh) 一种路由方法和装置
CN113556710B (zh) 一种车辆蓝牙钥匙方法、装置及车辆
CN109905357A (zh) 用于滚动码式车辆出入的方法和设备
KR102215212B1 (ko) 적어도 2개의 통신 파트너 사이에서 인증된 접속을 제공하는 방법
CN112751803B (zh) 管理对象的方法、设备、计算机可读存储介质
KR20230041746A (ko) 블루투스 노드 페어링 방법 및 관련 장치
US20230071702A1 (en) Managing communications between a vehicle and a user device
CN115174083A (zh) 车联网信息加密方法、装置及车联网系统
CN103580874A (zh) 身份认证方法、系统以及密码保护装置
CN114980012A (zh) 一种车联网设备认证方法、装置及存储介质
CN112214753A (zh) 一种认证方法及装置、电子设备、存储介质
CN115426640B (zh) 一种蓝牙钥匙的绑定方法、装置、设备及介质
CN106850508B (zh) 安全组通信方法和系统以及相关设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination