一种反克隆的车载系统及其工作方法

文档序号:9751174阅读:363来源:国知局
一种反克隆的车载系统及其工作方法
【技术领域】
[0001]本发明涉及计算机安全技术领域,具体涉及一种反克隆的车载系统及其工作方法。
【背景技术】
[0002]—些车载系统在设计过程中,其电路结构及其flash存储的程序均具有被拷贝和克隆的风险,一旦被拷贝或克隆,则可以通过复制进行批量生产,从而这给原来产品开发商造成了较大的经济损失。为此,目前一些开发商采取了一些反克隆的方法来抑制这种大规模无偿克隆的局面,通常采用的反克隆方法包括:
1.通过设计一个M⑶进行加密,并通过车载系统与MCU发生握手通讯进行读取验证,这种方式由于MCU价格较为低廉的程度而被广泛使用,但是广泛使用的结果导致了其MCU的加密密码能够被轻易破解,反克隆强度不够,
2.通过EEPROM内部烧写信息来识别和控制系统软件的路径,但是该方式中使得EEPROM内部的信息能够被轻易拷贝,甚至无法获得加密效果,
3.通过在电路结构上增加CPLD集成芯片,并且通过专用接口对CPLD中的软件进行改写,并对加密位置进行锁定,外部无法直接访问并读加密位信息,然而采用这种运用于逻辑运算的CPLD集成芯片来实现加密效果,有大材小用之嫌,使得整个电路结构设计成本陡然上升,
4.通过加密认证芯片对电路结构及其软件进行保密,加密认证芯片体积小、功耗低及安全性高,虽然加密认证芯片的价格较为高昂,但是在大规模运用的推广下其价格也越来越趋于合理化,因此使得这种方式被越来越多开发商所青睐。但是通过这种方式实现过程中,如何提高加密认证芯片及其密钥之间的唯一认证安全性能,是业界不断追寻的目标。

【发明内容】

[0003]解决上述技术问题,本发明提供了一种反克隆的车载系统及其工作方法。提高了加密认证芯片及其密钥之间的唯一认证安全性能。
[0004]为了达到上述目的,本发明所采用的技术方案是,一种反克隆的车载系统,包括:本地加密认证通信模块、远程加密认证通信模块,被保护模块,根密钥还原模块,远程认证服务器和加密认证芯片,本地加密认证通信模块分别与远程加密认证通信模块和加密认证芯片进行数据交互,远程认证服务器与远程加密认证通信模块进行数据交互,被保护模块分别将数据输出至本地加密认证通信模块和远程加密认证通信模块,根密钥还原模块将数据输出至被保护模块,
本地加密认证通信模块从加密认证芯片获取芯片序列号,并将芯片序列号与根密钥Kl利用安全散列算法SHA-256生成多样化密钥,再将多样化密钥与随机数利用安全散列算法SHA-256生成最终第二响应。加密认证模块将多样化密钥与随机数利用安全散列算法SHA-256 生成第一响应,判断两个响应是否匹配,若匹配则认证通过,否则 ,认证不通过, 远程加密认证通信模块把根密钥K2发送给本地加密认证通信模块,并请求产生一个第一数字标签,本地加密认证通信模块把根密钥Κ2和从加密认证芯片读到的唯一的芯片序列号利用安全散列算法SHA-256生成一个唯一的第一数字标签,远程加密认证通信模块从本地加密认证通信模块获取到芯片序列号,并将该芯片序列号发送至远程认证服务器并等待第二数字标签,收到远程认证服务器还回的第二数字标签后,将与第一数字标签匹配,若两者一致,则认证通过,
远程认证服务器:当车载装置请求远程认证时,该远程认证服务器判断芯片序列号是否已经注册在授权的数据库里,若是,则将该芯片序列号和根密钥Κ2采用SHA-256计算并产生一个第二数字标签,再将该第二数字标签发送给车载装置,否则还回一个错误应答。
[0005]根密钥还原模块:该模块是把存储在车载装置flash之中经过变换和隐藏的根密钥还原出来,
被保护模块:利用根密钥还原模块,从flash中还原出根密钥Kl和K2,向本地加密认证通信模块提供根密钥Kl和随机数用来进一步认证判断,本地加密认证通信模块认证成功,则进入远程认证,向远程认证模块提供根密钥K2,远程认证成功则应用程序进入正常启动流程。
[0006]本发明所采用的另一技术方案是,一种反克隆的车载系统的工作方法,包括以下步骤:
步骤1:本地认证,本地加密认证通信模块从加密认证芯片获取芯片序列号并和根密钥Kl一起生成一个唯一的多样化密钥,并配置到加密认证芯片的配置区,当加密认证芯片收到请求认证的时候,把多样化密钥和认证请求的随机数产生一个响应,
步骤2:远程认证,每个加密认证芯片的唯一芯片序列号在出厂之前就注册到远程认证服务器,当本地请求认证的芯片序列号被证实之后,远程认证服务器把芯片序列号和根密钥K2产生一个唯一的数字标签,并还回给本地进行认证。
[0007]本发明通过采用上述技术方案,与现有技术相比,具有如下优点:本系统结合专用加密认证芯片的特点和安全散列算法SHA-256,通过本地加密认证和远程加密认证来实现一个反克隆的车载系统,利用唯一的芯片序列号和根密钥通过安全散列算法SHA-256计算来产生唯一的多样化密钥和数字标签,使每个系统的工作密钥和数字标签都不一样,这样就算某个系统被破解,也不会危及同类型的其他系统,最大程度的保护车载系统上有价值的应用模块被无偿的使用。
【附图说明】
[0008]图1是本发明的实施例的结构示意图。
[0009]图2是本发明的实施例的本地加密认证通信模块和加密认证芯片的整个交互过程图。
[0010]图3是本发明的实施例的远程加密认证的整个交互过程图。
[0011]图4是本发明的实施例的被保护模块启动流程图。
【具体实施方式】
[0012]现结合附图和【具体实施方式】对本发明进一步说明。
[0013]作为一个具体的实施例,如图1至图4所示,本发明的一种反克隆的车载系统,包括:本地加密认证通信模块、远程加密认证通信模块,被保护模块,根密钥还原模块,远程认证服务器和加密认证芯片,本地加密认证通信模块分别与远程加密认证通信模块和加密认证芯片进行数据交互,远程认证服务器与远程加密认证通信模块进行数据交互,被保护模块分别将数据输出至本地加密认证通信模块和远程加密认证通信模块,根密钥还原模块将数据输出至被保护模块,
本实施例中的密认证芯片,包含有芯片序列号(每个芯片的序列号都是全球唯一的)和SHA-256算法引擎,以及数据区等,根据这个特点我们把芯片序列号读取出来和根密钥结合起来作为安全散列算法SHA-256(该算法的思想是接收一段明文,然后以一种不可逆的方式将它转换成一段密文)的输入参数来生成多样化密钥,并把这个多样化密钥存储在芯片的数据区,因为芯片序列号是唯一的,所以这个多样化密钥在每片加密认证芯片上都是唯一的,这样就算单片加密认证芯片的多样化密钥被破解也不会危及到同型号的其他系统。我们把多样化的密钥在出厂时就配置到加密认证芯片的数据区,数据区被写入后被配置成不可读不可写,这样防止多样化密钥的泄露。当加密认证芯片收到认证请求时用SHA-256算法引擎对多样化密钥和收到的随机数进行计算并应答一个响应I。
[0014]本地加密认证通信模块:这个模块有下面这些功能:
(I)负责和加密认证芯片进行通信以及使用安全散列算法SHA-256进行加密。
[0015](2)把根密钥Kl和从加密认证芯片读到的唯一的芯片序列号传入安全散列算法SHA-256生成多样化密钥(不同的芯片序列号唯一,会生成不同的密钥)。
[0016](3)把多样化密钥和随机数传入安全散列算法SHA-256生成最终响应2。
[0017](4)匹配本模块产生的响应2和加密认证芯片还回的响应I如果两者一致则认证通过。
[0018]本地加密认证通信模块从加密认证芯片获取芯片序列号,并将芯片序列号与根密钥Kl,该密钥Kl由被保护模块利用根密钥还原模块,从flash中还原出根密钥Kl,提供给本地加密认
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1