一种安全验证方法和系统与流程

文档序号:13141836阅读:426来源:国知局
一种安全验证方法和系统与流程

本公开是关于电子技术领域,尤其是关于一种安全验证方法和系统。



背景技术:

随着科技的发展,交通工具也变得越来越智能了。作为交通工具的ecu(electroniccontrolunit,电子控制单元),其内的数据的安全性与可靠性就显得至关重要。在现有技术中,如果要对ecu内部的数据进行修改,就首先一定要通过安全验证。

在汽车制造业中,ecu是由专门的供货商生产的,汽车生产厂家从供货商处购入ecu后再在工厂内进行组装、再制造。因此,供货商与汽车生产厂家都需要对ecu进行各自所需的配置,其中包括对ecu内部的数据进行修改。为了保证数据的安全性与可靠性,一般的做法是,汽车生产厂家研发安全验证算法,并把该安全算法下发至各供货商。供货商在拿到安全验证算法后,可以基于该安全验证算法进行ecu的研发。首先供货商的安全验证设备与ecu建立通信连接,接着,安全验证设备获取ecu发送的种子。如果安全验证设备能基于获取的种子、安全验证算法生成正确的密匙并将其返回ecu,则为验证成功。

上述安全验证方法存在一定的风险。同一汽车生产厂家所研发的安全验证算法是一样的,当一样的安全验证算法被下发至不同的供货商时,只要安全验证算法是正确的,不管基于什么样的种子都能生成正确的密匙。安全验证算法是汽车生产厂家统一预设好的,与安全验证算法相应的种子的大小如2字节是固定的。基于同一安全验证算法、同等大小的不同种子生成的密匙都是正确的,这就不能使安全验证算法起到安全防护的作用。



技术实现要素:

为了克服相关技术中存在的问题,本公开提供了以下技术方案:

根据本公开实施例的第一方面,提供一种安全验证方法,所述方法包括:

安全验证设备向ecu发送种子获取请求,所述种子获取请求中包括与所述安全验证设备相应的设备标识;

所述ecu接收所述种子获取请求,并基于所述种子获取请求中的设备标识确定种子,所述种子的大小与所述设备标识相应;

所述ecu通过预设的算法和所述种子,生成第二密匙;

所述ecu将所述种子返回至所述安全验证设备;

所述安全验证设备接收所述种子,通过所述预设的算法和所述种子,生成第一密匙;

所述安全验证设备将所述第一密匙发送至所述ecu;

所述ecu接收所述第一密匙,并将所述第一密匙与本地的第二密匙进行比较,若所述第一密匙与所述第二密匙一致,则所述安全验证设备通过所述euc的安全验证。

可选地,所述ecu基于所述种子获取请求中的设备标识确定种子,包括:

所述ecu提取所述种子获取请求中的设备标识;

所述ecu判断所述设备标识是否是预设设备标识;

若所述设备标识是预设设备标识,所述ecu确定种子。

可选地,所述设备标识包括设备id。

可选地,所述预设的算法为神经网络算法。

可选地,在所述安全验证设备向所述ecu发送种子获取请求之前,所述方法还包括:

建立所述安全验证设备与所述ecu之间的通信连接。

根据本公开实施例的第二方面,提供一种安全验证系统,所述系统包括安全验证设备和ecu:

所述安全验证设备包括第一通信模块,用于向所述ecu发送种子获取请求,所述种子获取请求中包括与所述安全验证设备相应的设备标识;

所述ecu包括第二通信模块和确定模块,所述第二通信模块用于接收所述种子获取请求,所述确定模块用于基于所述种子获取请求中的设备标识确定种子,所述种子的大小与所述设备标识相应;

所述ecu包括第一生成模块,用于通过预设的算法和所述种子,生成第二密匙;

所述ecu的第二通信模块用于将所述种子返回至所述安全验证设备;

所述安全验证设备包括第二生成模块,所述第一通信模块用于接收所述种子,所述第二生成模块用于通过所述预设的算法和所述种子,生成第一密匙;

所述安全验证设备的第一通信模块用于将所述第一密匙发送至所述ecu;

所述ecu包括比较模块,所述第二通信模块用于接收所述第一密匙,所述比较模块用于将所述第一密匙与本地的第二密匙进行比较,若所述第一密匙与所述第二密匙一致,则所述安全验证设备通过所述euc的安全验证。

可选地,所述确定模块用于提取所述种子获取请求中的设备标识;判断所述设备标识是否是预设设备标识;若所述设备标识是预设设备标识,确定种子。

可选地,所述设备标识包括设备id。

可选地,所述预设的算法为神经网络算法。

可选地,所述第一通信模块和第二通信模块用于建立所述安全验证设备与所述ecu之间的通信连接。

根据本公开实施例的第三方面,提供一种设备,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现上述安全验证方法。

根据本公开实施例的第四方面,提供一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现上述安全验证方法。

本公开的实施例提供的技术方案可以包括以下有益效果:

通过本实施例提供的方法,通过预设的算法,可以使得种子的大小不为固定的,无论多大的种子都能根据预设的算法算出其相应的密匙。此外,不同的安全验证设备对应着不同的种子的大小,这样不同的安全验证设备获取到的种子的大小就是不同的,进而依据不同大小的种子生成的密匙就不同。通过本实施例提供的方法可以安全验证设备与ecu之间的验证更加可靠。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。在附图中:

图1是根据一示例性实施例示出的一种安全验证方法的流程图;

图2是根据一示例性实施例示出的一种安全验证系统的示意图;

图3是根据一示例性实施例示出的一种设备的结构示意图。

通过上述附图,已示出本公开明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本公开构思的范围,而是通过参考特定实施例为本领域技术人员说明本公开的概念。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。

本发明实施例提供了一种安全验证方法,该方法可以由两设备配合实现。其中,设备可以是安全验证设备等。设备可以包括ecu、收发器、处理器、存储器等部件。收发器,可以用于与服务器进行数据传输,收发器可以包括蓝牙部件、wifi(wireless-fidelity,无线高保真技术)部件、天线、匹配电路、调制解调器等。处理器,可以为cpu(centralprocessingunit,中央处理单元)等,可以用于通过预设的算法和种子,生成第一密匙、第二密匙,等处理。存储器,可以为ram(randomaccessmemory,随机存取存储器),flash(闪存)等,可以用于存储接收到的数据、处理过程所需的数据、处理过程中生成的数据等。

设备还可以包括输入部件、显示部件、音频输出部件等。输入部件可以是触摸屏、键盘、鼠标等。音频输出部件可以是音箱、耳机等。

一般地,当设备为安全验证设备以及包括ecu的设备时,每家供货商都可以获得各自的安全验证设备。当供货商从汽车生产厂家或者其他供货商处拿到ecu时,可以通过本实施例提供的方法进行安全验证。

本公开一示例性实施例提供了一种安全验证方法,如图1所示,该方法的处理流程可以包括如下的步骤:

步骤s110,安全验证设备向电子控制单元ecu发送种子获取请求,种子获取请求中包括与安全验证设备相应的设备标识。

如图2所示,安全验证设备可以包括第一通信模块、第二生成模块。ecu可以包括第二通信模块、确定模块、第一生成模块、比较模块。安全验证设备可以通过第一通信模块向ecu发送种子获取请求。

可选地,设备标识包括设备id。设备id是每台安全验证设备在出厂时就预设好的,每台安全验证设备有其唯一的设备id。

步骤s120,ecu接收种子获取请求,并基于种子获取请求中的设备标识确定种子,种子的大小与设备标识相应。

在实施中,ecu可以通过第二通信模块接收种子获取请求,通过确定模块基于种子获取请求中的设备标识确定种子。

可选地,步骤s120可以包括:ecu提取种子获取请求中的设备标识;ecu判断设备标识是否是预设设备标识;若设备标识是预设设备标识,ecu确定种子。

在实施中,每台ecu对应着不同供货商,预先存储不同的预设设备标识。当ecu判断设备标识是预设设备标识时,证明该ecu可以与该安全验证设备配对成功,因此才会根据预订的规则随机生成种子。具体地,例如,a供货商拿到的安全验证设备a的设备id为1a,b供货商拿到的安全验证设备b的设备id为2b。a供货商拿到的ecua预先存储的预设设备标识为1a,b供货商拿到的ecub预先存储的预设设备标识为2b。则当安全验证设备a将自己的id“1a”发送到ecua时,ecua将“1a”与预先存储的预设设备标识进行比较,确定安全验证设备a的设备id与本地的预设设备标识相同,则配对成功。而当安全验证设备a将自己的id“1a”发送到ecub时,ecub将“1a”与预先存储的预设设备标识进行比较,确定安全验证设备a的设备id与本地的预设设备标识不相同,则配对不成功。当配对不成功时,是无法根据预订的规则随机生成种子的。

种子的大小与设备标识相应。例如,接上例,确定安全验证设备a的设备id与本地的预设设备标识相同,并配对成功时,可以获取种子的大小。接着,可以根据种子的大小,随机生成一个预订大小的种子。

步骤s130,ecu通过预设的算法和种子,生成第二密匙。

在实施中,ecu可以通过第一生成模块通过预设的算法和种子,生成第二密匙。

可选地,预设的算法为神经网络算法。首先,可以根据神经网络算法训练神经网络模型,接着,可以将重心信息输入到神经网络模型中,并得到第二密匙。需要说明的是,神经网络模型可以接受的输入信息的大小是可变的,使得满足不同大小的种子都能输入到该模型中,以生成第二密匙。其中,神经网络模型是由大量的简单基本元件即神经元相互联接而成的自适应非线性动态系统。每个神经元的结构和功能比较简单,但大量神经元组合产生的系统行为却非常复杂。神经网络模型在构成原理和功能特点等方面更加接近人脑,它不是按给定的程序一步一步地执行运算,而是能够自身适应环境、总结规律、完成某种运算、识别或控制过程。神经网络模型首先要以一定的学习准则进行学习,然后才能工作。神经网络模型按训练方法进行若干次训练后,输出结果的正确率将大大提高。一般地,神经网络模型中所含的神经元个数越多,则它能记忆、识别的模式也就越多。

步骤s140,ecu将种子返回至安全验证设备。

在实施中,ecu可以通过第二通信模块将种子返回至安全验证设备。

步骤s150,安全验证设备接收种子,通过预设的算法和种子,生成第一密匙。

在实施中,安全验证设备可以通过第一通信模块接收种子,通过第二生成模块通过预设的算法和种子,生成第一密匙。

步骤s160,安全验证设备将第一密匙发送至ecu。

在实施中,安全验证设备可以通过第一通信模块将第一密匙发送至ecu。

步骤s170,ecu接收第一密匙,并将第一密匙与本地的第二密匙进行比较,若第一密匙与第二密匙一致,则安全验证设备通过euc的安全验证。

在实施中,ecu可以通过第二通信模块接收第一密匙,通过比较模块将第一密匙与本地的第二密匙进行比较,若第一密匙与第二密匙一致,则安全验证设备通过euc的安全验证。

可选地,在安全验证设备向ecu发送种子获取请求之前,所述方法还包括:建立所述安全验证设备与所述ecu之间的通信连接。

通过本实施例提供的方法,通过预设的算法,可以使得种子的大小不为固定的,无论多大的种子都能根据预设的算法算出其相应的密匙。此外,不同的安全验证设备对应着不同的种子的大小,这样不同的安全验证设备获取到的种子的大小就是不同的,进而依据不同大小的种子生成的密匙就不同。通过本实施例提供的方法可以安全验证设备与ecu之间的验证更加可靠。

本公开又一示例性实施例提供了一种安全验证系统,如图2所示,该系统包括安全验证设备22和ecu24:

所述安全验证设备22包括第一通信模块221,用于向所述ecu24发送种子获取请求,所述种子获取请求中包括与所述安全验证设备22相应的设备标识;

所述ecu24包括第二通信模块241和确定模块242,所述第二通信模块241用于接收所述种子获取请求,所述确定模块242用于基于所述种子获取请求中的设备标识确定种子,所述种子的大小与所述设备标识相应;

所述ecu24包括第一生成模块243,用于通过预设的算法和所述种子,生成第二密匙;

所述ecu24的第二通信模块241用于将所述种子返回至所述安全验证设备22;

所述安全验证设备22包括第二生成模块222,所述第一通信模块221用于接收所述种子,所述第二生成模块222用于通过所述预设的算法和所述种子,生成第一密匙;

所述安全验证设备22的第一通信模块221用于将所述第一密匙发送至所述ecu24;

所述ecu24包括比较模块244,所述第二通信模块241用于接收所述第一密匙,所述比较模块244用于将所述第一密匙与本地的第二密匙进行比较,若所述第一密匙与所述第二密匙一致,则所述安全验证设备22通过所述euc的安全验证。

可选地,所述确定模块242用于提取所述种子获取请求中的设备标识;判断所述设备标识是否是预设设备标识;若所述设备标识是预设设备标识,确定种子。

可选地,所述设备标识包括设备id。

可选地,所述预设的算法为神经网络算法。

可选地,所述第一通信模块221和第二通信模块241用于建立所述安全验证设备与所述ecu之间的通信连接。

关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

通过本实施例提供的系统,通过预设的算法,可以使得种子的大小不为固定的,无论多大的种子都能根据预设的算法算出其相应的密匙。此外,不同的安全验证设备对应着不同的种子的大小,这样不同的安全验证设备获取到的种子的大小就是不同的,进而依据不同大小的种子生成的密匙就不同。通过本实施例提供的方法可以安全验证设备与ecu之间的验证更加可靠。

需要说明的是:上述实施例提供的安全验证系统在进行安全验证时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的安全验证系统与安全验证方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

图3是根据一示例性实施例示出的设备1900的框图。设备可以是上面实施例所述的安全验证设备以及包括ecu的设备。参照图3,装置1900包括处理组件1922,其进一步包括一个或多个处理器,以及由存储器1932所代表的存储器资源,用于存储可由处理部件1922的执行的指令。存储器1932中存储的程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1922被配置为执行指令,以执行上述安全验证方法。

装置1900还可以包括一个电源组件1926被配置为执行装置1900的电源管理,一个有线或无线网络接口1950被配置为将装置1900连接到其他设备,和一个输入输出(i/o)接口1958。

本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。

应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

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