CN116015626A - 一种基于安全芯片的车载通信方法以及车载通信系统 - Google Patents
一种基于安全芯片的车载通信方法以及车载通信系统 Download PDFInfo
- Publication number
- CN116015626A CN116015626A CN202211543031.2A CN202211543031A CN116015626A CN 116015626 A CN116015626 A CN 116015626A CN 202211543031 A CN202211543031 A CN 202211543031A CN 116015626 A CN116015626 A CN 116015626A
- Authority
- CN
- China
- Prior art keywords
- vehicle
- mcu module
- data
- security chip
- obd interface
- 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
Links
Images
Landscapes
- Small-Scale Networks (AREA)
Abstract
本申请实施例公开了一种基于安全芯片的车载通信方法以及车载通信系统,通过第二MCU模块通过将预置的数字证书发送至第一MCU模块,在认证结果标识为认证成功标识的情况下,第一MCU模块通过第一安全芯片生成会话密钥并从多种对称加密算法类型中选择第一对称加密算法类型,将会话密钥以及第一对称加密算法类型通过主体公钥加密得到第一密文数据,将第一密文数据发送至第二MCU模块以使第二MCU模块得到会话密钥以及第一对称加密算法类型。采用上述技术手段,能够有效阻止非法OBD设备的恶意接入与篡改,降低OBD设备通过车载OBD接口与车辆总线进行通信的过程中遭遇数据窃取、数据篡改以及逆向工程分析的风险,保障用户隐私安全,也提高了车辆的安全性和可靠性。
Description
技术领域
本申请实施例涉及车载通信技术领域,尤其涉及一种基于安全芯片的车载通信方法以及车载通信系统。
背景技术
OBD(On-Board Diagnostics,车载自动诊断系统)是一种用于监控车辆状况以及控制车辆排放的诊断系统。OBD设备通过车载OBD接口与车载网关连接的各ECU(ElectronicControl Unit,电子控制单元)进行通信,实时监测车辆内不同总线上各ECU的工作状况并进行故障诊断,并获取车辆的各种工况数据和故障信息。从汽车生产到售后维护阶段,在诊断维护和ECU固件更新过程中,通常会需要OBD设备通过车载OBD接口对车辆总线进行访问并获取车辆总线数据。
然而相关技术中,OBD设备可以无需进行身份认证过程,并通过车载OBD接口直接对车辆总线进行访问,这很容易导致非法OBD设备通过车载OBD接口恶意篡改ECU配置以及扰乱ECU内部数据,此外,OBD设备与车载OBD接口之间的数据传输使用明文或简单的软件加密方式进行保护,也容易在OBD设备通过车载OBD接口与车辆总线进行通信的过程中遭遇数据窃取、数据篡改以及逆向工程分析,造成用户隐私泄露的风险,也影响车辆的安全性和可靠性。
发明内容
本申请实施例提供一种基于安全芯片的车载通信方法以及车载通信系统,能够有效阻止非法OBD设备的恶意接入与篡改,降低OBD设备通过车载OBD接口与车辆总线进行通信的过程中遭遇数据窃取、数据篡改以及逆向工程分析的风险,保障用户隐私安全,也提高了车辆的安全性和可靠性。
在第一方面,本申请实施例提供了一种基于安全芯片的车载通信方法,所述安全芯片包括第一安全芯片以及第二安全芯片,车载系统包括车载网关以及车载OBD接口,车载OBD模块包括第一MCU模块以及所述第一安全芯片,所述第一安全芯片与所述第一MCU模块通信连接,所述第一MCU模块与所述车载网关通信连接;OBD设备包括所述第二安全芯片、第二MCU模块以及OBD接口,所述第二安全芯片与所述第二MCU模块通信连接;所述OBD接口与所述车载OBD接口通信连接,所述第二MCU模块通过所述OBD接口以及所述车载OBD接口建立与所述第一MCU模块的通信连接;
所述方法包括:
所述第二MCU模块读取所述第二安全芯片内预置的数字证书,并将所述数字证书通过所述OBD接口发送至所述车载OBD接口以使所述第一MCU模块获取所述数字证书,其中所述数字证书包括主体公钥以及多种对称加密算法类型,所述主体公钥对应的主体私钥预置于所述第二安全芯片;
所述第一MCU模块通过所述车载OBD接口接收所述数字证书,并通过所述第一安全芯片得到所述数字证书的认证结果标识;
在所述认证结果标识为认证成功标识的情况下,所述第一MCU模块通过所述第一安全芯片生成会话密钥并从所述多种对称加密算法类型中选择第一对称加密算法类型,并通过所述第一安全芯片将所述会话密钥以及所述第一对称加密算法类型通过所述主体公钥加密得到第一密文数据,将所述第一密文数据通过所述车载OBD接口发送至所述OBD接口以使所述第二MCU模块获取所述第一密文数据,其中所述会话密钥以及所述第一对称加密算法类型用于对所述第一MCU模块向所述第二MCU模块发送的通信数据进行加密;
所述第二MCU模块通过所述OBD接口接收所述第一密文数据,并通过所述第二安全芯片利用所述主体私钥对所述第一密文数据进行解密得到所述会话密钥以及所述第一对称加密算法类型,其中所述会话密钥以及所述第一对称加密算法类型还用于对所述第二MCU模块向所述第一MCU模块发送的通信数据进行加密。
在第二方面,本申请实施例提供了应用任一实施例所述车载通信方法的车载诊通信系统,包括:车载OBD模块以及OBD设备,所述车载OBD模块包括第一MCU模块以及第一安全芯片,所述OBD设备包括第二MCU模块、第二安全芯片以及OBD接口;
所述第一MCU模块与车载网关以及车载OBD接口通信连接,所述OBD接口与所述车载OBD接口通信连接,所述第二MCU模块通过所述OBD接口以及所述车载OBD接口与所述第一MCU模块通信连接。
本申请实施例中,第二MCU模块通过将第二安全芯片内预置的数字证书发送至第一MCU模块以使第一MCU模块通过第一安全芯片对数字证书进行认证得到认证结果标识,在认证结果标识为认证成功标识的情况下,第一MCU模块通过第一安全芯片生成会话密钥并从多种对称加密算法类型中选择第一对称加密算法类型,将会话密钥以及第一对称加密算法类型通过主体公钥加密得到第一密文数据,将第一密文数据发送至第二MCU模块以使第二MCU模块使用主体私钥对第一密文数据进行解密得到会话密钥以及第一对称加密算法类型。采用上述技术手段,能够有效阻止非法OBD设备的恶意接入与篡改,降低OBD设备通过车载OBD接口与车辆总线进行通信的过程中遭遇数据窃取、数据篡改以及逆向工程分析的风险,保障用户隐私安全,也提高了车辆的安全性和可靠性。
附图说明
图1是本申请实施例提供的一种基于安全芯片的车载通信系统的结构示意图;
图2是一种示例性的安全芯片的结构示意图;
图3是本申请实施例提供的一种基于安全芯片的车载通信方法的流程图;
图4是本申请实施例提供的一种基于安全芯片的车载通信方法的具体实施过程的示意图;
图5是本申请实施例提供的一种基于安全芯片的车载通信方法的数据传输过程的示意图;
图6是本申请实施例提供的另一种基于安全芯片的车载通信方法的数据传输过程的示意图;
图7是本申请实施例提供的一种车辆的结构示意图;
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面结合附图对本申请具体实施例作进一步的详细描述。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请,而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非全部内容。在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
OBD(On-Board Diagnostics,车载自动诊断系统)是一种用于监控车辆状况以及控制车辆排放的诊断系统。OBD设备通过车载OBD接口与车载网关连接的各ECU(ElectronicControl Unit,电子控制单元)进行通信,实时监测车辆内不同总线上各ECU的工作状况并进行故障诊断,并获取车辆的各种工况数据和故障信息。从汽车生产到售后维护阶段,在诊断维护和ECU固件更新过程中,通常会需要OBD设备通过车载OBD接口对车辆总线进行访问并获取车辆总线数据。然而相关技术中,OBD设备可以无需进行身份认证过程,并通过车载OBD接口直接对车辆总线进行访问,这很容易导致非法OBD设备通过车载OBD接口恶意篡改ECU配置以及扰乱ECU内部数据,此外,OBD设备与车载OBD接口之间的数据传输使用明文或简单的软件加密方式进行保护,也容易在OBD设备通过车载OBD接口与车辆总线进行通信的过程中遭遇数据窃取、数据篡改以及逆向工程分析,造成用户隐私泄露的风险,也影响车辆的安全性和可靠性。
基于此,本申请实施例提供一种基于安全芯片的车载通信方法以及车载通信系统,能够有效阻止非法OBD设备的恶意接入与篡改,降低OBD设备通过车载OBD接口与车辆总线进行通信的过程中遭遇数据窃取、数据篡改以及逆向工程分析的风险,保障用户隐私安全,也提高了车辆的安全性和可靠性。
图1给出了本申请实施例提供的一种基于安全芯片的车载通信系统100的结构示意图,该基于安全芯片的车载通信系统100可以通过软件和/或硬件的方式实现,该基于安全芯片的车载通信系统100可以是两个或多个物理实体构成。
参照图1,该基于安全芯片的车载通信系统100包括:车载OBD模块110以及OBD设备120,所述车载OBD模块110包括第一MCU模块111以及第一安全芯片112,其中第一MCU模块111可以是复用车载系统原有MCU模块的功能,也可以是额外设置的MCU模块,本申请实施例在此不做限制。所述OBD设备120包括第二MCU模块121、第二安全芯片122以及OBD接口123;所述第一MCU模块111与车载网关140以及车载OBD接口130通信连接,所述OBD接口123与所述车载OBD接口130通信连接,所述第二MCU模块121通过所述OBD接口123以及所述车载OBD接口130与所述第一MCU模块111通信连接。该基于安全芯片的车载通信系统100可用于执行本申请任一实施例所述的基于安全芯片的车载通信方法,具备相应的功能和有益效果。
图2给出了一种示例性的安全芯片200的结构示意图,参照图2,该安全芯片200包括随机数生成模块210、证书存储模块220、证书认证模块230、数据加解密模块240、签名与验签模块250,该安全芯片通过AEC-Q100的认证,是车规级的安全芯片,其中,数据加解密模块240内置有含国密算法在内的不同加密算法,随机数生成模块210内置有真随机数发生器,能随机生成密钥,还具有存储器加密校验机制、主动屏蔽层保护等保护机制,能提高密钥的存储安全性,不会被导出,也能减低相关数据被逆向分析的风险。所有的加解密过程,签名验签过程均在安全芯片内部进行,能有效预防数据暴露出来,并且,即使通信数据被截取,也难以逆向解密分析,增加了车载通信的安全性。本申请实施例对具体的安全芯片选型不做固定限制,具有前述功能模块的安全芯片均在本申请实施例的保护范围之内,在此不多赘述。
具体的,图3给出了本申请实施例提供的一种基于安全芯片的车载通信方法的流程图,本实施例中提供的基于安全芯片的车载通信方法可以由基于安全芯片的车载通信系统执行,其中,所述安全芯片包括第一安全芯片以及第二安全芯片,车载系统包括车载网关以及车载OBD接口,车载OBD模块包括第一MCU模块以及所述第一安全芯片,所述第一安全芯片与所述第一MCU模块通信连接,所述第一MCU模块与所述车载网关通信连接;OBD设备包括所述第二安全芯片、第二MCU模块以及OBD接口,所述第二安全芯片与所述第二MCU模块通信连接;所述OBD接口与所述车载OBD接口通信连接,所述第二MCU模块通过所述OBD接口以及所述车载OBD接口建立与所述第一MCU模块的通信连接。
下述以基于安全芯片的车载通信系统为执行基于安全芯片的车载通信方法的主体为例,进行描述。参照图3,该基于安全芯片的车载通信方法具体包括:
S310、所述第二MCU模块读取所述第二安全芯片内预置的数字证书,并将所述数字证书通过所述OBD接口发送至所述车载OBD接口以使所述第一MCU模块获取所述数字证书,其中所述数字证书包括主体公钥以及多种对称加密算法类型,所述主体公钥对应的主体私钥预置于所述第二安全芯片。
其中,该数字证书用于在车载OBD模块以及OBD设备之间的通信过程中,标志通信双方身份信息的一个数字认证,OBD设备的第二MCU模块通过将该数字证书发送至车载OBD模块的第一MCU模块以表明自身的合法接入身份。主体公钥和对应的主体私钥为应用于非对称加密的密钥对,该密钥对可以通过第二MCU模块所通信连接的第二安全芯片生成,也可以是由外部安全芯片生成并预置入第二MCU模块中,第二MCU模块通过持有主体私钥,可以只对经过主体公钥加密的数据进行处理,降低不明出处的恶意数据的输入风险,提高车载系统的安全性。多种对称加密算法类型包括DES算法、TripleDES算法、RC2算法、RC4算法、RC5算法和Blowfish算法等等。
进一步地,通常来说,OBD设备作为车辆的外接设备,那么OBD设备在与车载OBD模块建立通信连接前,可以先确认车辆当前运行状态是否适合ECU数据获取,再确定是否进行接入,否则所获取的数据没有参考价值,例如,在硬件的方面,车辆内部部分线路可能存在故障,或主控MCU与车载网关可能通讯故障等等,在软件的方面,ECU可能处于固件升级中等等。
可选的,在前述实施例的基础上,步骤S310中,所述第二MCU模块读取所述第二安全芯片内预置的数字证书的具体实施过程可以包括以下步骤:
S311、所述第二MCU模块发送接入请求至所述OBD接口以使所述第一MCU模块接收所述接入请求;
S312、所述第一MCU模块通过所述车载OBD接口接收所述接入请求,并根据车辆当前运行状态发送回复消息至所述车载OBD接口以使所述第二MCU模块接收所述回复消息;
S313、所述第二MCU模块通过所述OBD接口接收所述回复消息;
S314、在所述回复消息的内容为允许接入的情况下,所述第二MCU模块读取所述第二安全芯片内预置的数字证书。
值得说明的是,根据前述车辆当前运行状态的具体情况而言,当车辆内部部分线路可能存在故障,或主控MCU与车载网关可能通讯故障,或ECU可能处于固件升级中,第二MCU模块针对OBD设备的接入请求都应该回复拒绝接入,以防OBD设备后续所采集的ECU数据可能为空,也可能为乱码,不具备分析诊断价值,只有在确认车辆当前运行状态良好的情况下,才允许OBD设备的接入,避免因不良数据导致OBD设备没有起到相应的作用。
S320、所述第一MCU模块通过所述车载OBD接口接收所述数字证书,并通过所述第一安全芯片得到所述数字证书的认证结果标识。
其中,数字证书是唯一标识OBD设备合法身份的证明,第一MCU模块通过第一安全芯片对数字证书进行认证,相当于对OBD设备合法身份的确认,第一MCU模块可以根据所确认的结果进一步确认是否允许OBD设备接入。
具体的,所述数字证书还包括主体信息、证书用途、证书属性、发证机构信息、数字签名以及多种对称加密算法类型,步骤S320中所述通过所述第一安全芯片得到所述数字证书的认证结果标识的具体实施过程可以包括以下步骤:
S321、所述第一MCU模块将所述数字证书传送至所述第一安全芯片以使所述第一安全芯片利用所述主体信息、所述证书用途、所述发证机构信息、所述证书属性、所述多种对称加密算法类型以及所述主体公钥进行哈希运算得到第一信息摘要。
其中,数字证书中的数字签名是在为OBD设备申请数字证书时,证书认证签发机构将数字证书中的主体信息、证书用途、发证机构信息、证书属性、多种对称加密算法类型以及主体公钥进行哈希运算得到信息摘要,并使用证书认证签发机构的私钥对信息摘要进行加密运算得到的。那么为了验证该数字证书的是否同一证书认证签发机构签发的,第一安全芯片就需要同样利用主体信息、证书用途、发证机构信息、证书属性、多种对称加密算法类型以及主体公钥进行哈希运算得到第一信息摘要,用来与数字签名内含的信息摘要做比对。
S322、所述第一安全芯片利用所述公钥对所述数字签名进行解密得到第二信息摘要。
其中,数字签名是证书认证签发机构用私钥进行加密的,而第一安全芯片保存有该证书认证签发机构下发的公钥,该私钥和公钥属于同一非对称加密的密钥对,该公钥可以对该数字签名进行解密得到第二信息摘要。
S323、若所述第一信息摘要与所述第二信息摘要一致,所述第一安全芯片向所述第一MCU模块发送认证成功标识;若所述第一信息摘要与所述第二信息摘要不一致,所述第一安全芯片向所述第一MCU模块发送认证失败标识。
其中,由于第一信息摘要和第二信息摘要的生成都是基于数字证书中同样的信息,如果该数字证书为证书认证签发机构所签发,且在传输过程中没有被恶意篡改,则第一信息摘要和第二信息摘要应该是一致的,那么根据对比结果,就可以判断请求接入的OBD设备是否合法,并发送对应的认证结果标识,有效阻止非法OBD设备的恶意接入与篡改。
可选的,在所述第一安全芯片向所述第一MCU模块发送认证失败标识之后,第一MCU模块可以向车载系统后台发送非法接入预警信息,工作人员可以根据该非法接入预警信息,对请求接入的OBD设备进行排查确认,规避该OBD设备的使用。
S330、在所述认证结果标识为认证成功标识的情况下,所述第一MCU模块通过所述第一安全芯片生成会话密钥并从所述多种对称加密算法类型中选择第一对称加密算法类型,并通过所述第一安全芯片将所述会话密钥以及所述第一对称加密算法类型通过所述主体公钥加密得到第一密文数据,将所述第一密文数据通过所述车载OBD接口发送至所述OBD接口以使所述第二MCU模块获取所述第一密文数据,其中所述会话密钥以及所述第一对称加密算法类型用于对所述第一MCU模块向所述第二MCU模块发送的通信数据进行加密。
其中,第一MCU模块通过第一安全芯片生成会话密钥,会话密钥可以用来作为车载OBD模块以及OBD设备之间的通信数据的加密,因而第二MCU模块也需要获得同样的会话密钥,而通信数据则使用的是多种对称加密算法类型中的其中一种,第一MCU模块需要将会话密钥以及所选中的第一对称加密算法类型发送至第二MCU模块,由于直接传输的话可能会存在数据泄露或者篡改的风险,第一MCU模块可以利用数字证书中的主体公钥对会话密钥以及所选中的第一对称加密算法类型进行加密得到第一密文数据,由于主体公钥来自于第二MCU模块利用第二安全模块生成的主体密钥对,而只有第二MCU模块持有主体私钥,也就意味着只有第二MCU模块能够对第一密文数据进行解密。
S340、所述第二MCU模块通过所述OBD接口接收所述第一密文数据,并通过所述第二安全芯片利用所述主体私钥对所述第一密文数据进行解密得到所述会话密钥以及所述第一对称加密算法类型,其中所述会话密钥以及所述第一对称加密算法类型还用于对所述第二MCU模块向所述第一MCU模块发送的通信数据进行加密。
其中,第二MCU模块通过第二安全芯片利用主体私钥对第一密文数据进行解密,如果成功得到会话密钥以及第一对称加密算法类型,也就意味着第一密文数据出自第一MCU模块,也确保了该密文数据的合法性。至此,车载OBD模块以及OBD设备之间完成了身份认证以及可信任的通信连接。
具体的,图4给出了一种基于安全芯片的车载通信方法的具体实施过程,包括以下步骤:
S401、所述第二MCU模块发送接入请求至所述OBD接口以使所述第一MCU模块接收所述接入请求;
S402、所述第一MCU模块通过所述车载OBD接口接收所述接入请求;
S403、所述第一MCU模块根据车辆当前运行状态发送回复消息至所述车载OBD接口以使所述第二MCU模块接收所述回复消息;
S404、所述第二MCU模块通过所述OBD接口接收所述回复消息;
S405、在所述回复消息的内容为允许接入的情况下,所述第二MCU模块读取所述第二安全芯片内预置的数字证书;
S406、所述第二MCU模块将所述数字证书通过所述OBD接口发送至所述车载OBD接口以使所述第一MCU模块获取所述数字证书;
S407、所述第一MCU模块通过所述车载OBD接口接收所述数字证书;
S408、所述第一MCU模块通过所述第一安全芯片得到所述数字证书的认证结果标识,在所述认证结果标识为认证成功标识的情况下,所述第一MCU模块通过所述第一安全芯片生成会话密钥并从所述多种对称加密算法类型中选择第一对称加密算法类型,并通过所述第一安全芯片将所述会话密钥以及所述第一对称加密算法类型通过所述主体公钥加密得到第一密文数据;
S409、所述第一MCU模块将所述第一密文数据通过所述车载OBD接口发送至所述OBD接口以使所述第二MCU模块获取所述第一密文数据;
S410、所述第二MCU模块通过所述OBD接口接收所述第一密文数据;
S411、所述第二MCU模块通过所述第二安全芯片利用所述主体私钥对所述第一密文数据进行解密得到所述会话密钥以及所述第一对称加密算法类型。
上述,本申请实施例中第二MCU模块通过将第二安全芯片内预置的数字证书发送至第一MCU模块以使第一MCU模块通过第一安全芯片对数字证书进行认证得到认证结果标识,在认证结果标识为认证成功标识的情况下,第一MCU模块通过第一安全芯片生成会话密钥并从多种对称加密算法类型中选择第一对称加密算法类型,将会话密钥以及第一对称加密算法类型通过主体公钥加密得到第一密文数据,将第一密文数据发送至第二MCU模块以使第二MCU模块使用主体私钥对第一密文数据进行解密得到会话密钥以及第一对称加密算法类型。采用上述技术手段,能够有效阻止非法OBD设备的恶意接入与篡改,降低OBD设备通过车载OBD接口与车辆总线进行通信的过程中遭遇数据窃取、数据篡改以及逆向工程分析的风险,保障用户隐私安全,也提高了车辆的安全性和可靠性。
可选的,在前述实施例的基础上,数字证书可以通过证书注册审批系统以及证书认证签发机构进行申请,因而,在所述第二MCU模块读取所述第二安全芯片内预置的数字证书之前,还包括OBD设备的第二MCU模块获取预置的数字证书以及车载OBD模块的第一MCU模块获取对应公钥的过程,具体如下:
S350、所述第二MCU模块通过所述第二安全芯片生成主体密钥对,并将所述主体密钥对中的主体公钥通过所述OBD接口发送至系统后台,其中所述主体公钥用于向所述证书注册审批系统申请数字证书。
其中,OBD设备在出厂前需要提前预置数字证书,具体为利用第二安全芯片生成主体密钥对,其中主体密钥对的主体私钥保存于第二MCU模块,而主体公钥则发送至系统后台进行导出,并与主体信息,证书用途以及其他信息组合为证书整合数据向证书注册审批系统申请数字证书,证书注册审批系统会对申请进行审核验证,验证通过后向证书认证签发机构申请签发证书,证书认证签发机构验证通过后,会将证书整合数据,连同发证机构信息以及证书属性进行哈希运算得到信息摘要,并使用证书认证签发机构的私钥对信息摘要进行加密运算得到数字签名。最终,将证书整合数据、发证机构信息、证书属性以及数字签名整合得到数字证书,并进行签发。
S360、在所述证书注册审批系统审核通过以及证书认证签发机构验证通过的情况下,所述第二MCU模块通过所述OBD接口接收所述证书认证签发机构签发的数字证书,并将所述数字证书保存于所述第二安全芯片。
其中,将证书认证签发机构所签发的数字证书通过OBD接口导入OBD设备中,OBD设备的第二MCU模块通过OBD接口接收证书认证签发机构签发的数字证书,并将该数字证书保存至第二安全芯片中,OBD设备可以利用该数字证书作为合法接入的证明。
S370、所述第一MCU模块通过所述车载OBD接口接收所述证书认证签发机构对应所述数字证书下发的公钥,并将所述公钥保存于所述第一安全芯片,其中所述公钥用于所述数字证书的认证。
值得说明的是,步骤S350至S370在步骤S310之前,其中,对于OBD设备所持有的数字证书,证书认证签发机构会下发对应于该数字证书的公钥,该公钥可用于验证OBD设备发送的数字证书是否为证书认证签发机构所签发的,如果是的话,则认为该OBD设备合法。通过前述方式可完成OBD设备与车载OBD模块之间的身份认证,规避非法OBD设备的恶意接入与篡改。
进一步地,在车载OBD模块以及OBD设备完成身份认证以及建立可信任的通信连接后,第一MCU模块以及第二MCU模块之间可以进行可靠的通信传输。
可选的,在前述实施例的基础上,OBD设备在进行身份认证后可以基于该可靠的通信连接向车载OBD模块进行数据发送,该车载通信方法具体还包括以下步骤:
S380a、所述第二MCU模块通过所述第二安全芯片利用所述主体私钥对明文数据进行签名得到签名数据,并通过所述第二安全芯片基于第一对称加密算法类型使用所述会话秘钥对所述签名数据与所述明文数据进行加密运算,得到第二密文数据;将所述第二密文数据发送至所述OBD接口以使所述第一MCU模块获取所述第二密文数据。
其中,第二MCU模块向第一MCU模块发送通信数据会提供两层数据加密,首先第一层是主体私钥对明文数据进行签名得到签名数据,含有该签名数据的通信数据可以明确为所认证的OBD设备的第二MCU模块所发送的,也只有拥有该主体私钥所对应的主体公钥才能对签名数据进行解密,保障第一MCU模块所接收到的通信数据的可靠性。第二层是使用会话秘钥对签名数据以及明文数据进行加密运算得到第二密文数据,只有拥有同样会话密钥才能对第二密文数进行解密,保障通信数据在传输过程中的可靠性。此外通过两层数据加密,即使是相关数据遭到泄露,也难以对该数据进行逆向解密分析。
S380b、所述第一MCU模块通过所述车载OBD接口接收所述第二密文数据,通过所述第一安全芯片基于所述第一对称加密算法类型使用所述会话秘钥对第二密文数据进行解密运算,得到所述签名数据与第一明文数据;通过所述第一安全芯片使用所述主体公钥对所述签名数据进行解密得到第二明文数据;在所述第一明文数据与所述第二明文数据一致时,所述第一MCU模块对所述第一明文数据进行处理。
其中,第一MCU模块通过第一安全芯片使用同样的会话密钥对第二密文数据进行解密,确保接收到的数据来自于第二MCU模块。解密得到签名数据以及第一明文数据后,第一MCU模块通过第一安全芯片利用主体公钥对签名数据进行解密得到第二明文数据,通过比对第一明文数据与第二明文数据,只有在一致的情况下才对第一明文数据进行处理,这样可以检验第一明文数据在传输过程中是否又被篡改,保障数据的可靠性和安全性。
具体的,图5给出了一种基于安全芯片的车载通信方法的数据传输过程,具体包括以下步骤:
S501、所述第二MCU模块通过所述第二安全芯片利用所述主体私钥对明文数据进行签名得到签名数据,并通过所述第二安全芯片基于第一对称加密算法类型使用所述会话秘钥对所述签名数据与所述明文数据进行加密运算,得到第二密文数据;
S502、所述第二MCU模块将所述第二密文数据发送至所述OBD接口以使所述第一MCU模块获取所述第二密文数据;
S503、所述第一MCU模块通过所述车载OBD接口接收所述第二密文数据;
S504、所述第一MCU模块通过所述第一安全芯片基于所述第一对称加密算法类型使用所述会话秘钥对第二密文数据进行解密运算,得到所述签名数据与第一明文数据;通过所述第一安全芯片使用所述主体公钥对所述签名数据进行解密得到第二明文数据;在所述第一明文数据与所述第二明文数据一致时,所述第一MCU模块对所述第一明文数据进行处理。
进一步地,在第一明文数据与第二明文数据不一致的情况下,说明OBD设备可能因自身与其它设备的连接或处于不可靠的无线连接中被劫持,第一MCU模块还可以向车载系统后台发送非法数据预警信息,工作人员根据该非法数据预警信息对OBD设备的其他通信连接进行排查,降低遭遇数据窃取、数据篡改以及逆向工程分析的风险。
可选的,在前述实施例的基础上,车载OBD模块在进行身份认证后可以基于该可靠的通信连接向OBD设备进行数据发送,该车载通信方法还包括:
S390a、所述第一MCU模块通过所述车载网关获取ECU数据,并通过所述第一安全芯片基于所述第一对称加密算法类型使用所述会话秘钥对所述ECU数据进行加密运算,得到第三密文数据;将所述第三密文数据发送至所述车载OBD接口以使所述第二MCU模块获取所述第三密文数据;
S390b、所述第二MCU模块通过所述OBD接口接收所述第三密文数据,通过所述第二安全芯片基于所述第一对称加密算法类型使用所述会话秘钥对所述第三密文数据进行解密运算,得到所述ECU数据;对所述ECU数据进行处理。
值得说明的是,由于OBD设备为外接设备,车端OBD模块一般内置于车载系统,那么OBD设备可以在确认车端OBD模块安全后再进行接入,这样OBD设备与车端OBD模块之间的数据传输只需要会话密钥的加密,而不需要车端OBD模块的签名数据,可以减少数据处理开销,提高车端OBD模块传输数据的效率,进而提高OBD设备接收数据并分析相关数据的整体效率。
具体的,图6给出了另一种基于安全芯片的车载通信方法的数据传输过程,具体包括以下步骤:
S601、所述第一MCU模块通过所述车载网关获取ECU数据;
S602、通过所述第一安全芯片基于所述第一对称加密算法类型使用所述会话秘钥对所述ECU数据进行加密运算,得到第三密文数据;
S603、将所述第三密文数据发送至所述车载OBD接口以使所述第二MCU模块获取所述第三密文数据;
S604、所述第二MCU模块通过所述OBD接口接收所述第三密文数据;
S605、通过所述第二安全芯片基于所述第一对称加密算法类型使用所述会话秘钥对所述第三密文数据进行解密运算,得到所述ECU数据;对所述ECU数据进行处理。
图7给出了本申请实施例提供的一种车辆700的结构示意图,所述车辆包括车载网关140、车载OBD接口130以及前述实施例中的车载通信系统100,所述车载通信系统730可用于执行本申请任一实施例所述的基于安全芯片的车载通信方法,具备相应的功能和有益效果。
需要说明的是,本方案中对各步骤的编号仅用于描述本方案的整体设计框架,不表示步骤之间的必然先后关系。在整体实现过程符合本方案整体设计框架的基础上,均属于本方案的保护范围,描述时文字形式上的先后顺序不是对本方案具体实现过程的排他限定。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。
因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (10)
1.一种基于安全芯片的车载通信方法,其特征在于,所述安全芯片包括第一安全芯片以及第二安全芯片,车载系统包括车载网关以及车载OBD接口,车载OBD模块包括第一MCU模块以及所述第一安全芯片,所述第一安全芯片与所述第一MCU模块通信连接,所述第一MCU模块与所述车载网关通信连接;OBD设备包括所述第二安全芯片、第二MCU模块以及OBD接口,所述第二安全芯片与所述第二MCU模块通信连接;所述OBD接口与所述车载OBD接口通信连接,所述第二MCU模块通过所述OBD接口以及所述车载OBD接口建立与所述第一MCU模块的通信连接;
所述方法包括:
所述第二MCU模块读取所述第二安全芯片内预置的数字证书,并将所述数字证书通过所述OBD接口发送至所述车载OBD接口以使所述第一MCU模块获取所述数字证书,其中所述数字证书包括主体公钥以及多种对称加密算法类型,所述主体公钥对应的主体私钥预置于所述第二安全芯片;
所述第一MCU模块通过所述车载OBD接口接收所述数字证书,并通过所述第一安全芯片得到所述数字证书的认证结果标识;
在所述认证结果标识为认证成功标识的情况下,所述第一MCU模块通过所述第一安全芯片生成会话密钥并从所述多种对称加密算法类型中选择第一对称加密算法类型,并通过所述第一安全芯片将所述会话密钥以及所述第一对称加密算法类型通过所述主体公钥加密得到第一密文数据,将所述第一密文数据通过所述车载OBD接口发送至所述OBD接口以使所述第二MCU模块获取所述第一密文数据,其中所述会话密钥以及所述第一对称加密算法类型用于对所述第一MCU模块向所述第二MCU模块发送的通信数据进行加密;
所述第二MCU模块通过所述OBD接口接收所述第一密文数据,并通过所述第二安全芯片利用所述主体私钥对所述第一密文数据进行解密得到所述会话密钥以及所述第一对称加密算法类型,其中所述会话密钥以及所述第一对称加密算法类型还用于对所述第二MCU模块向所述第一MCU模块发送的通信数据进行加密。
2.根据权利要求1所述的车载通信方法,其特征在于,在所述第二MCU模块读取所述第二安全芯片内预置的数字证书之前,还包括:
所述第二MCU模块通过所述第二安全芯片生成主体密钥对,并将所述主体密钥对中的主体公钥通过所述OBD接口发送至系统后台,其中所述主体公钥用于向所述证书注册审批系统申请数字证书;
在所述证书注册审批系统审核通过以及证书认证签发机构验证通过的情况下,所述第二MCU模块通过所述OBD接口接收所述证书认证签发机构签发的数字证书,并将所述数字证书保存于所述第二安全芯片;
所述第一MCU模块通过所述车载OBD接口接收所述证书认证签发机构对应所述数字证书下发的公钥,并将所述公钥保存于所述第一安全芯片,其中所述公钥用于所述数字证书的认证。
3.根据权利要求1所述的车载通信方法,其特征在于,所述第二MCU模块读取所述第二安全芯片内预置的数字证书,包括:
所述第二MCU模块发送接入请求至所述OBD接口以使所述第一MCU模块接收所述接入请求;
所述第一MCU模块通过所述车载OBD接口接收所述接入请求,并根据车辆当前运行状态发送回复消息至所述车载OBD接口以使所述第二MCU模块接收所述回复消息;
所述第二MCU模块通过所述OBD接口接收所述回复消息;
在所述回复消息的内容为允许接入的情况下,所述第二MCU模块读取所述第二安全芯片内预置的数字证书。
4.根据权利要求2所述的车载通信方法,其特征在于,所述数字证书还包括主体信息、证书用途、证书属性、发证机构信息、数字签名以及多种对称加密算法类型,所述通过所述第一安全芯片得到所述数字证书的认证结果标识,包括:
所述第一MCU模块将所述数字证书传送至所述第一安全芯片以使所述第一安全芯片利用所述主体信息、所述证书用途、所述发证机构信息、所述证书属性、所述多种对称加密算法类型以及所述主体公钥进行哈希运算得到第一信息摘要;
所述第一安全芯片利用所述公钥对所述数字签名进行解密得到第二信息摘要;
若所述第一信息摘要与所述第二信息摘要一致,所述第一安全芯片向所述第一MCU模块发送认证成功标识;
若所述第一信息摘要与所述第二信息摘要不一致,所述第一安全芯片向所述第一MCU模块发送认证失败标识。
5.根据权利要求4所述的车载通信方法,其特征在于,所述第一安全芯片向所述第一MCU模块发送认证失败标识之后,还包括:
所述第一MCU模块向车载系统后台发送非法接入预警信息。
6.根据权利要求1所述的车载通信方法,其特征在于,还包括:
所述第二MCU模块通过所述第二安全芯片利用所述主体私钥对明文数据进行签名得到签名数据,并通过所述第二安全芯片基于第一对称加密算法类型使用所述会话秘钥对所述签名数据与所述明文数据进行加密运算,得到第二密文数据;将所述第二密文数据发送至所述OBD接口以使所述第一MCU模块获取所述第二密文数据;
所述第一MCU模块通过所述车载OBD接口接收所述第二密文数据,通过所述第一安全芯片基于所述第一对称加密算法类型使用所述会话秘钥对第二密文数据进行解密运算,得到所述签名数据与第一明文数据;通过所述第一安全芯片使用所述主体公钥对所述签名数据进行解密得到第二明文数据;
在所述第一明文数据与所述第二明文数据一致时,所述第一MCU模块对所述第一明文数据进行处理。
7.根据权利要求6所述的车载通信方法,其特征在于,还包括:
在所述第一明文数据与所述第二明文数据不一致时,所述第一MCU模块向车载系统后台发送非法数据预警信息。
8.根据权利要求3所述的车载通信方法,其特征在于,还包括:
所述第一MCU模块通过所述车载网关获取ECU数据,并通过所述第一安全芯片基于所述第一对称加密算法类型使用所述会话秘钥对所述ECU数据进行加密运算,得到第三密文数据;将所述第三密文数据发送至所述车载OBD接口以使所述第二MCU模块获取所述第三密文数据;
所述第二MCU模块通过所述OBD接口接收所述第三密文数据,通过所述第二安全芯片基于所述第一对称加密算法类型使用所述会话秘钥对所述第三密文数据进行解密运算,得到所述ECU数据;对所述ECU数据进行处理。
9.一种应用权利要求1至8任一项所述车载通信方法的车载通信系统,其特征在于,包括:车载OBD模块以及OBD设备,所述车载OBD模块包括第一MCU模块以及第一安全芯片,所述OBD设备包括第二MCU模块、第二安全芯片以及OBD接口;
所述第一MCU模块与车载网关以及车载OBD接口通信连接,所述OBD接口与所述车载OBD接口通信连接,所述第二MCU模块通过所述OBD接口以及所述车载OBD接口与所述第一MCU模块通信连接。
10.一种车辆,其特征在于,所述车辆包括车载网关、车载OBD接口以及权利要求9所述的车载通信系统。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211543031.2A CN116015626A (zh) | 2022-12-02 | 2022-12-02 | 一种基于安全芯片的车载通信方法以及车载通信系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211543031.2A CN116015626A (zh) | 2022-12-02 | 2022-12-02 | 一种基于安全芯片的车载通信方法以及车载通信系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116015626A true CN116015626A (zh) | 2023-04-25 |
Family
ID=86030774
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211543031.2A Pending CN116015626A (zh) | 2022-12-02 | 2022-12-02 | 一种基于安全芯片的车载通信方法以及车载通信系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116015626A (zh) |
-
2022
- 2022-12-02 CN CN202211543031.2A patent/CN116015626A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200177398A1 (en) | System, certification authority, vehicle-mounted computer, vehicle, public key certificate issuance method, and program | |
CN110365486B (zh) | 一种证书申请方法、装置及设备 | |
CN110109443B (zh) | 车辆诊断的安全通信方法、装置、存储介质及设备 | |
CA3116067A1 (en) | Techniques for improving security of encrypted vehicle software updates | |
CN113439425B (zh) | 报文传输方法及装置 | |
CN110708388A (zh) | 用于提供安全服务的车身安全锚节点设备、方法以及网络系统 | |
CN107508791A (zh) | 一种基于分散密钥加密的终端身份验证方法及系统 | |
US20210174607A1 (en) | Method and system for replacing vehicle parts using in-vehicle network based on vehicle ethernet | |
JP2017120984A (ja) | 車載コンピュータシステム、車両、管理方法、及びコンピュータプログラム | |
CN113438205B (zh) | 区块链数据访问控制方法、节点以及系统 | |
CN111565182A (zh) | 一种车辆诊断方法、装置及存储介质 | |
CN113711571A (zh) | 使用对等网络及系统的车辆事故管理 | |
CN114338091B (zh) | 数据传输方法、装置、电子设备及存储介质 | |
CN114598501A (zh) | 一种基于物联网的数据处理方法和装置 | |
CN113115255A (zh) | 证书下发、密钥认证、车辆解锁方法、设备及存储介质 | |
CN109743283B (zh) | 一种信息传输方法及设备 | |
CN116631093A (zh) | 用于从车辆提取数据的方法和设备 | |
CN116366289A (zh) | 无人机遥感数据的安全监管方法及装置 | |
CN106209910A (zh) | 一种车载信息系统的安全保护方法 | |
CN116456336A (zh) | 一种外部设备接入安全认证方法、系统、汽车、设备及存储介质 | |
CN116011042A (zh) | 数据存储方法、装置、系统、计算机设备和存储介质 | |
CN116015626A (zh) | 一种基于安全芯片的车载通信方法以及车载通信系统 | |
CN110830243B (zh) | 对称密钥分发方法、装置、车辆及存储介质 | |
CN115220416A (zh) | 车辆诊断方法、车载终端、系统及存储介质 | |
CN114647836A (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 |