车载端对接入设备的可信验证方法及其系统、车载端与流程

文档序号:17158012发布日期:2019-03-20 00:15阅读:234来源:国知局
车载端对接入设备的可信验证方法及其系统、车载端与流程

本发明涉及车载领域,具体说的是车载端对接入设备的可信验证方法及其系统、车载端。



背景技术:

车载端出于安全考虑需要对请求连接到车载端的设备(比如obd等)进行可信验证,通常需要通过额外设计加密芯片的方式来辅助完成可信验证。

具体的,传统的验证方式大多是额外设计加密芯片的方式来存储密钥,同时解密,校验都是放在加密芯片中执行,通过执行完成之后在还回一个确认结果给额外设计的加密芯片,如果加密芯片被通过硬件信号旁路攻击,还回的结果都是校验通过的,这样任何非授权的设备都可以接入进来,从而导致防御失效。进一步的,还将导致验证系统的硬件设计的复杂度和成本较高。

如申请号为200310118451.7的专利文件,公开了一种通过扩展mgcp对ip语音接入设备的认证方法,采用在授信端mgcp增加独立的加密芯片的方式来存储密钥和进行授信,而且其使用非对称密钥对摘要结果进行加密,完全没有达到任何安全效果反而增加了设计的复杂度,因为摘要结果本身就有唯一性不怕泄漏。

因此,有必要提供一种车载端对接入设备的可信验证方法及其系统、车载端,以解决上述问题。



技术实现要素:

本发明所要解决的技术问题是:提供一种车载端对接入设备的可信验证方法及其系统、车载端,能够降低硬件设计复杂度和硬件成本,同时能杜绝旁路攻击的风险,显著提高验证安全性和效率。

为了解决上述技术问题,本发明采用的第一个技术方案为:

一种基于trustzone车载端对接入设备的可信验证方法,包括:

预存储授权设备服务列表至车载端的普通区域,所述授权设备服务列表包括与各授权接入设备的标识对应的数据块;

车载端接收一接入设备的连接请求,所述连接请求包括所述一接入设备的标识;

车载端的普通区域依据所述一接入设备的标识判断其是否在所述授权设备服务列表中;若是,则发送所述标识对应的数据块至trustzone区域;

车载端的trustzone区域对所述数据块进行验证;若验证通过,则获取所述数据块对应的特征值,同时请求获取所述一接入设备存储的特征值;

比较所述数据块对应的特征值和所述一接入设备存储的特征值。

本发明提供的第二个技术方案为:

一种支持trustzone的车载端,包括:

预存储模块,用于预存储授权设备服务列表至车载端的普通区域,所述授权设备服务列表包括与各授权接入设备的标识对应的数据块;

第一接收模块,用于车载端接收一接入设备的连接请求,所述连接请求包括所述一接入设备的标识;

判断模块,用于车载端的普通区域依据所述一接入设备的标识判断其是否在所述授权设备服务列表中;若是,则发送所述标识对应的数据块至trustzone区域;

验证模块,用于车载端的trustzone区域对所述数据块进行验证;若验证通过,则获取所述数据块对应的特征值,同时请求获取所述一接入设备存储的特征值;

比较模块,用于比较所述数据块对应的特征值和所述一接入设备存储的特征值。

本方案提供的第三个技术方案为:

一种基于trustzone车载端对接入设备的可信验证系统,包括上述的车载端,以及安全加密设备和接入设备;

所述安全加密设备包括:

生成模块,用于生成与各授权接入设备的标识一一对应的特征值;

加密模块,用于使用加密密钥分别对各特征值进行加密,得到对应的加密特征值;

签名模块,用于使用签名公钥分别对各加密特征值进行签名,生成对应数据块;

所述车载端的预存储模块,还用于预存储所述加密密钥和签名公钥至车载端的trustzone区域。

本发明的有益效果在于:无需额外设计加密芯片辅助完成对接入设备的可信验证,而是直接利用支持armtrustzone技术的硬件隔离机制来替代加密芯片进行授信验证。同时,由于不再需要额外设计加密芯片,又能同时解决加密芯片被硬件信号探测及旁路等相关的硬件攻击,导致授信验证失效的风险。因此,本发明不仅降低了硬件设计的复杂度和硬件成本,而且能杜绝硬件被旁路攻击的风险,显著提高可信验证的安全性和效率。

附图说明

图1为本发明一种基于trustzone车载端对接入设备的可信验证方法的流程示意图;

图2为本发明实施例一的可信验证方法中车载端与接入设备的数据交互示意图;

图3为本发明实施例一的可信验证方法中接入设备的数据处理示意图;

图4为本发明实施例二的安全加密设备的数据处理示意图;

图5为本发明一种支持trustzone的车载端的功能结构组成示意图;

图6为本发明实施例三的车载端的功能结构组成示意图;

图7为本发明实施例四的基于trustzone车载端对接入设备的可信验证系统的功能结构组成示意图。

标号说明:

01、车载端;02、安全加密设备;03、接入设备;

1、预存储模块;2、第一接收模块;3、判断模块;4、验证模块;

5、比较模块;6、随机数生成模块;7、第二接收模块;8、计算模块;

9、生成模块;10、加密模块;11、签名模块;41、验签单元;

42、解密单元。

具体实施方式

为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。

本发明最关键的构思在于:利用支持armtrustzone技术的硬件隔离机制来替代加密芯片进行授信验证,降低硬件设计复杂度和硬件成本,同时提高安全性和验证效率。

本发明涉及的技术术语解释:

请参照图1,本发明提供一种基于trustzone车载端对接入设备的可信验证方法,包括:

预存储授权设备服务列表至车载端的普通区域,所述授权设备服务列表包括与各授权接入设备的标识对应的数据块;

车载端接收一接入设备的连接请求,所述连接请求包括所述一接入设备的标识;

车载端的普通区域依据所述一接入设备的标识判断其是否在所述授权设备服务列表中;若是,则发送所述标识对应的数据块至trustzone区域;

车载端的trustzone区域对所述数据块进行验证;若验证通过,则获取所述数据块对应的特征值,同时请求获取所述一接入设备存储的特征值;

比较所述数据块对应的特征值和所述一接入设备存储的特征值。

从上述描述可知,本发明的有益效果在于:基于trustzone技术在车载端对接入的设备设计授信的流程,替换传统的通过额外设计加密芯片的方法进行授信流程。具体的,通过在普通区域初步、快速的确认接入设备的身份,初步验证通过后,再由trustzone区域进一步的进行复杂、准确的验证。这样不仅降低了硬件设计的复杂度和硬件成本,同时可以防止使用额外设计加密芯片而被进行硬件信号探测及旁路等相关的硬件攻击使整个验证流程更加安全。

进一步的,所述同时请求获取所述一接入设备存储的特征值,具体为:

验证通过的同时,生成一随机数透传至所述一接入设备;

所述一接入设备依据其内存储的特征值和所述一随机数计算生成第一摘要信息,并返回至车载端的trustzone区域;

所述比较所述数据块对应的特征值和所述一接入设备存储的特征值,具体为:

车载端的trustzone区域依据所述数据块对应的特征值和所述一随机数计算生成第二摘要信息;

比较所述第一摘要信息和第二摘要信息,若一致,则同意所述一接入设备的连接。

由上述描述可知,trustzone区域在获得设备的特征值后,请求获取接入设备自身存储的特征值时,还将一同发送一随机数至接入设备。通过引入随机数技术,确保接入设备依据随机数和自身存储的特征值计算得到的结果每次都不一样,从而有效防止重放攻击,进一步提高可信验证的安全性。

进一步的,还包括:

安全加密设备生成与各授权接入设备的标识一一对应的特征值;

安全加密设备使用加密密钥分别对各特征值进行加密,得到对应的加密特征值;

安全加密设备使用签名私钥分别对各加密特征值进行签名,生成对应数据块;

预存储所述加密密钥和签名公钥至车载端的trustzone区域。

由上述描述可知,通过安全方式生成各授权设备的数据块,从而保证授权设备服务列表的安全可信度。

进一步的,所述车载端的trustzone区域对所述数据块进行验证,具体为:

车载端的trustzone区域使用预存储的签名公钥对所述数据块进行验签;若验签通过,则得到加密特征值;

使用预存储的加密密钥对所述加密特征值进行解密,得到对应的特征值。

由上述描述可知,通过安全存储在trustzone区域中的密钥验证数据块,确保验证过程的安全可靠。

进一步的,所述使用预存储的加密密钥对所述加密特征值进行解密,得到对应的特征值,具体包括:

使用预存储的加密密钥对所述加密特征值进行解密,得到对应的特征值和所述特征值的有效期限;

判断所述特征值是否在有效期内,若是,则验证通过。

由上述描述可知,同时验证特征值的有效性,进一步确保接入设备的安全可靠。

如图5所示,本发明提供的第二个技术方案为:

一种支持trustzone的车载端,包括:

预存储模块,用于预存储授权设备服务列表至车载端的普通区域,所述授权设备服务列表包括与各授权接入设备的标识对应的数据块;

第一接收模块,用于车载端接收一接入设备的连接请求,所述连接请求包括所述一接入设备的标识;

判断模块,用于车载端的普通区域依据所述一接入设备的标识判断其是否在所述授权设备服务列表中;若是,则发送所述标识对应的数据块至trustzone区域;

验证模块,用于车载端的trustzone区域对所述数据块进行验证;若验证通过,则获取所述数据块对应的特征值,同时请求获取所述一接入设备存储的特征值;

比较模块,用于比较所述数据块对应的特征值和所述一接入设备存储的特征值。

从上述描述可知,本方案的有益效果在于:基于支持trustzone技术的车载端,提供一种无须额外设计安全芯片,便可实现安全、可靠的对接入设备进行可信验证的车载端。不仅省去了相关的加密芯片辅助设计电路这一块的硬件设计,降低了硬件的复杂度,省去这一块的硬件成本;而且其验证可信度及验证效率也将得到提升。

进一步的,所述车载端还包括:

随机数生成模块,用于验证通过的同时,生成一随机数透传至所述一接入设备;

第二接收模块,用于trustzone区域接收所述一接入设备依据其内存储的特征值和所述一随机数计算生成第一摘要信息;

计算模块,用于trustzone区域依据所述数据块对应的特征值和所述一随机数计算生成第二摘要信息;

所述比较模块,具体用于比较所述第一摘要信息和第二摘要信息,若一致,则同意所述一接入设备的连接。

由上述描述可知,该车载端还能有效防止重放攻击,进一步确保接入设备的可靠性。

请参阅图7,本发明提供的第三个技术方案为:

一种基于trustzone车载端对接入设备的可信验证系统,包括上述的车载端,以及安全加密设备和接入设备;

所述安全加密设备包括:

生成模块,用于生成与各授权接入设备的标识一一对应的特征值;

加密模块,用于使用加密密钥分别对各特征值进行加密,得到对应的加密特征值;

签名模块,用于使用签名公钥分别对各加密特征值进行签名,生成对应数据块;

所述车载端的预存储模块,还用于预存储所述加密密钥和签名公钥至车载端的trustzone区域。

进一步的,所述车载端的验证模块包括:

验签单元,用于车载端的trustzone区域使用预存储的签名公钥对所述数据块进行验签;若验签通过,则得到加密特征值;

解密单元,用于使用预存储的加密密钥对所述加密特征值进行解密,得到对应的特征值。

进一步的,所述解密单元还将解密得到所述特征值的有效期限;

所述车载端的验证模块,还用于判断所述特征值是否在有效期内,若是,才判定验证通过。

实施例一

请参照图2和图3,本实施例基于支持trustzone技术的车载端,提供一种其对接入设备的可信验证方法。适用于对请求连接到车载端的设备进行可信验证。

本实施例的车载端,其内部分为普通区域和trustzone区域。trustzone区域是权限更高的硬件安全区域,起到类似一个加密芯片的区域的效果;普通区域无法获取和窥探trustzone区域的操作流程和中间产生的数据。本实施例中,通过在普通区域进行快速的初步确认,通过后再通过安全、权限等级更高的trustzone区域中进行复杂的精确验证。从而显著提高对接入设备进行可信验证的效率,同时又能保证验证的安全可靠性。

具体的,本实施例的方法可以包括以下步骤:

一、预存储过程

s01:通过安全机密设备,如pc上的openssl引擎生成一个加密用加密密钥和一对签名用公/私钥对;同时对应每一个授权的接入设备生成一个工作密钥作为该设备的特征值,然后发放给对应设备厂家。优选的,特征值与每个设备的唯一标识,如设备id相对应。本实施例中将以设备标识为设备id进行说明。

s02:生成授权设备服务列表。

具体的,在pc上定制的服务列表生成工具或其他安全设备,通过获取授权接入设备的列表(包含各个授权设备的id和相关信息)传给生成工具,生成工具通过内部的openssl引擎进行加密签名。

加密签名过程包括:

首先,使用加密密钥分别对各个特征值和相关信息进行加密,得到一一对应的第一数据块;在此,优选所述加密密钥为对称密钥,即加密和解密使用同一个密钥。然后,再使用签名私钥分别对各个第一数据块进行签名,生成一一对应的第二数据块;具体的,先对第一数据块进行安全散列计算生成摘要,再用签名私钥对摘要进行加密生成签名,生成第二数据块,即最终服务列表中设备id对应的数据块。

s03:安全的将上述生成的加密密钥和签名公钥预存储至车载端的trustzone区域;将授权设备服务列表存储至车载端的普通区域中。同时,安全的将各个特征值预存储至对应的接入设备中。

具体的,在出厂前将加密密钥和签名公钥烧录到车载端设备的熔丝位区域;将授权设备服务列表(优选为二进制文件)存储在文件系统这样的存储介质中。接入设备厂家在接收到发放的特征值后,在出厂前将特征值烧录到接入设备的加密芯片存储区。

二、车载端的可信验证过程

s1:当有接入设备请求连接至车载端,包括接入设备连接成功一端时间后中间断开,再重新发起连接请求。即当车载端接收到包括该接入设备的唯一标识,如设备id的连接请求。

s2:车载端的普通区域的设备监控服务检测上述连接请求,并获取其中的设备id,然后初步确认该设备id是否存储在授权设备服务列表中,若是,则将设备id所对应的数据块(即本实施例中的第二数据块)发送至trustzone区域做进一步的授权确认;若初步确认失败,则设备监控服务直接拒绝该设备的接入请求,同时进程结束。

s3:trustzone区域的设备认证服务接收到进一步授权确认请求和设备对应数据块后,对数据块进行签名解密验证,若验证通过,则获取该数据块对应的特征值;若验证不通过,则拒绝该设备的接入请求,同时进程结束。

s4:trustzone区域的设备认证服务在获取该接入设备的特征值后,还将通过随机数生成器生成一个随机数,然后将其置于获取接入设备自身存储的特征值的请求中,还回给普通区域;普通区域的设备监控服务再将该请求还回接入设备。随机数的引入能在每次验证所获取的特征值与接入设备自身存储的特征值是否一致时,保证据此计算得到的摘要信息每次都不一样,从而有效防止重放攻击。优选的,所述随机数还具备时效性,过期便无效,因此,设备如果断开连接,则需要重新验证,防止攻击者通过授权可信设备在授权认证后,再接上不可信设备进行攻击。

s5:接入设备接收到包含随机数的请求后,从其加密芯片存储区中获取自身存储的特征值,然后通随机数一起运用随机散列算法计算生成一个摘要信息,标记为第一摘要信息,然后还回给车载端;具体请请参阅图3。

s6:车载端的普通区域的设备监控服务将接收到的第一摘要信息头传给trustzone区域的设备认证服务;

s7:trustzone区域的设备认证服务依据自身解密解签后获取的特征值和生成的随机数(发送给接入设备的随机数)通过安全散列算法计算生成第二摘要信息;

s8:trustzone区域的设备认证服务比较所述第一摘要信息和第二摘要信息,若一致,则对应该接入设备的连接请求通过;若不一致,则拒绝该接入设备的接入请求,流程结束。

本实施例通过在普通区域进行快速的初步确认,再通过安全、权限等级更高的trustzone区域中进行复杂的精确验证;同时引入随机数。不仅能省去额外设计加密芯片的设置及其相关配合电路的配置,大大降低硬件设计复杂程度和硬件成本;而且还能有效度杜绝硬件被旁路攻击的风险;进一步的还能有效防止重放攻击从而提高对接入设备验证的安全性和效率。

实施例二

请参照图4所示,本实施例对应实施例一进一步拓展,在其基础上增加对特征值的有效期验证过程。

具体的,实施例一的预存储过程的s02中,获取的列表中包含的各个设备的相关信息包含对应特征值的有效期(具体时间日期)等信息。加密签名过程中,还将同时对有效期进行加密和签名。最终获得的授权设备服务列表如图4所示的第二数据块对应的列表。

在车载端的可信验证过程的s3中,解密解签后,将同时获取特征值对应的有效期;然后判断所获取的特征值是否在有效期限内,若是,判定该特征值有效,才继续执行s4;若否,则验证不通过,则拒绝该设备的接入请求,同时进程结束。

本实施例将进一步验证最终获取的特征值的有效性,确保对应接入设备在授权期限范围内,保证授权接入设备符合时效性,进一步提升验证安全性。

实施例三

本实施例对应实施例一,提供一种支持trustzone的车载端,利用片上armtrustzone技术的硬件隔离机制来替换加密芯片的设计方式进行授信,能在不需要额外设计加密芯片辅助进行可信验证的情况下,实现对接入设备的可信验证,且杜绝了硬件被旁路攻击的风险,同时设计中没有多余和无效的步骤,提高了安全性和效率。

如图6所示,本实施例的车载端01,包括

预存储模块1,用于预存储授权设备服务列表至车载端的普通区域,所述授权设备服务列表包括与各授权接入设备的标识对应的数据块;

第一接收模块2,用于车载端接收一接入设备的连接请求,所述连接请求包括所述一接入设备的标识;

判断模块3,用于车载端的普通区域依据所述一接入设备的标识判断其是否在所述授权设备服务列表中;若是,则发送所述标识对应的数据块至trustzone区域;

验证模块4,用于车载端的trustzone区域对所述数据块进行验证;若验证通过,则获取所述数据块对应的特征值,同时请求获取所述一接入设备存储的特征值;

比较模块5,用于比较所述数据块对应的特征值和所述一接入设备存储的特征值。

随机数生成模块6,用于验证通过的同时,生成一随机数透传至所述一接入设备;

第二接收模块7,用于trustzone区域接收所述一接入设备依据其内存储的特征值和所述一随机数计算生成第一摘要信息;

计算模块8,用于trustzone区域依据所述数据块对应的特征值和所述一随机数计算生成第二摘要信息;

所述比较模块5,具体用于比较所述第一摘要信息和第二摘要信息,若一致,则同意所述一接入设备的连接。

实施例四

如图7所示,本实施例在实施例三的基础上,提供一种基于trustzone车载端对接入设备的可信验证系统,包括实施例三的车载端01,以及一安全加密设备02和要求与车载端建立连接的接入设备03。所述安全加密设备可以是具备openssl引擎的pc端。

具体的,所述安全加密设备02包括:

生成模块9,用于生成与各授权接入设备的标识一一对应的特征值;

加密模块10,用于使用加密密钥分别对各特征值进行加密,得到对应的加密特征值;

签名模块11,用于使用签名公钥分别对各加密特征值进行签名,生成对应数据块。

所述车载端的预存储模块1,还用于预存储所述加密密钥和签名公钥至车载端的trustzone区域;

如图3所示,所述接入设备03包括:ecu(电子控制单元)和分离的或片上的加密芯片;

具体的,ecu需要有一个接入请求程序来和车载端进行接入认证过程,以及和加密芯片进行交互去获取第一摘要信息。加密芯片用来存储特征值及计算摘要信息进行认证,这样通过加密芯片来确保特征值存储的安全,及整个摘要计算过程的安全。同时加密芯片中的特征值,通过车载端设备供应商提供相关的设备在出厂时进行烧录进去,从而确保特征值的安全。

车载端的验证模块4包括:验签单元41,用于车载端的trustzone区域使用预存储的签名公钥对所述数据块进行验签;若验签通过,则得到加密特征值;

解密单元42,用于使用预存储的加密密钥对所述加密特征值进行解密,得到对应的特征值。

优选的,所述解密单元还将解密得到所述特征值的有效期限;

所述车载端的验证模块,还用于判断所述特征值是否在有效期内,若是,才判定验证通过。

综上所述,本发明提供的一种基于trustzone车载端对接入设备的可信验证方法及其系统,以及一种支持trustzone的车载端,不需要额外设置加密芯片,不仅能大大降低硬件设计复杂度和硬件成本;而且还能有效防止旁路攻击;同时,通过分区域依次进行快速验证和授权认证,能显著提高验证效率和安全性;进一步的,还能有效防止重放攻击;最后,还兼具授权期限的验证,进而提升对接入设备可信验证的安全性和可靠性。

以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1