CN110414216B - 一种车载T-Box程序代码的安全加载方法及系统 - Google Patents

一种车载T-Box程序代码的安全加载方法及系统 Download PDF

Info

Publication number
CN110414216B
CN110414216B CN201910690963.1A CN201910690963A CN110414216B CN 110414216 B CN110414216 B CN 110414216B CN 201910690963 A CN201910690963 A CN 201910690963A CN 110414216 B CN110414216 B CN 110414216B
Authority
CN
China
Prior art keywords
box
vehicle
program code
code
subprogram
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.)
Active
Application number
CN201910690963.1A
Other languages
English (en)
Other versions
CN110414216A (zh
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.)
Wuhan Kotei Informatics Co Ltd
Original Assignee
Wuhan Kotei Informatics 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 Wuhan Kotei Informatics Co Ltd filed Critical Wuhan Kotei Informatics Co Ltd
Priority to CN201910690963.1A priority Critical patent/CN110414216B/zh
Publication of CN110414216A publication Critical patent/CN110414216A/zh
Application granted granted Critical
Publication of CN110414216B publication Critical patent/CN110414216B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44568Immediately runnable code
    • G06F9/44578Preparing or optimising for loading

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)
  • Stored Programmes (AREA)

Abstract

本发明涉及一种车载T‑Box程序代码的安全加载方法及系统,其中,该方法包括:车载T‑box上电后,与云端进行双向身份认证,若双向身份认证成功,则云端将预先存储的第一子程序代码发送至车载T‑box;通过程序代码秘钥分别解密第一子程序代码和车载T‑box本地存储的第二子程序代码后进行合并,获得目标程序代码;加载目标程序代码至RAM区运行。本发明在车载T‑Box车载T‑Box只存储目标程序代码的部分分量,另一部分分量存储在云端,使得车载T‑Box端即使被非法窃取芯片存储的数据,窃取者也无法获取完整的程序代码,提高了车载T‑Box程序代码存储以及启动过程的安全性。

Description

一种车载T-Box程序代码的安全加载方法及系统
技术领域
本发明涉及车联网和信息安全技术领域,尤其涉及一种车载T-Box程序代码的安全加载方法及装置。
背景技术
目前,车载端T-Box的程序启动控制多采用支持SecureBoot机制的芯片来实现,普遍的做法是将执行程序代码以及对应的校验值(如完整性校验码或签名码)存储在芯片内部,T-Box上电后,通过比对计算的程序代码校验值和存储的校验值来完成程序的安全加载。
然而,出于成本控制、芯片自身漏洞等诸多因素影响的前提下,车载端系统中T-Box的主控CPU芯片在很多情况下难以保证存储的程序执行代码的安全性,存在被非法读取和逆向分析破解的风险,对整个系统的安全性造成极大的影响。
发明内容
本发明针对现有技术中存在的技术问题,提供一种车载T-Box程序代码的安全加载方法及系统,解决车载T-Box主控CPU芯片的程序代码安全性较低的问题,有效分散车载T-Box的安全风险。
本发明解决上述技术问题的技术方案如下:
第一方面,本发明提供一种车载T-Box程序代码的安全加载方法,包括:
车载T-box上电后,与云端进行双向身份认证,若所述双向身份认证成功,则云端将预先存储的第一子程序代码发送至车载T-box;
通过程序代码秘钥分别解密所述第一子程序代码和车载T-box本地存储的第二子程序代码;其中,所述程序代码秘钥是由云端预先发送至车载T-box的;
将解密后的所述第一子程序代码和第二子程序代码进行合并,获得目标程序代码;
加载所述目标程序代码至RAM区运行。
本发明的有益效果是:本发明通过将车载T-Box目标程序代码的第一子程序代码存储在云端,车载T-Box只存储目标程序代码的部分分量(即第二子程序代码),使得车载T-Box端即使被非法窃取芯片存储的数据,也无法获取完整的程序代码,从而提高车载T-Box程序代码存储以及启动过程的安全性,有效分散车载T-Box端的安全风险。同时,在车载T-Box上电并且身份认证通过后,合并的目标程序代码在RAM区域运行,实现车载T-Box程序代码的安全加载。
进一步,在车载T-box上电之前,所述方法还包括:
云端将所述第二子程序代码和程序代码秘钥发送至车载T-box。
进一步,所述云端将所述第二子程序代码和程序代码秘钥发送至车载T-box具体包括:
在车载T-box出厂前,云端接收车载T-box上传的目标程序代码,基于所述目标程序代码生成程序代码秘钥;其中,所述目标程序代码是在车载T-box通过程序编译生成;
将目标程序代码拆分为第一子程序代码和第二子程序代码;
通过程序代码秘钥分别对所述第一子程序代码和第二子程序代码进行加密;
将加密后的第二子程序代码和所述程序代码秘钥发送至车载T-box。
进一步,所述将目标程序代码拆分为第一子程序代码和第二子程序代码具体包括:
云端通过异或操作将所述目标程序代码拆分为第一子程序代码和第二子程序代码。
进一步,在云端将所述第二子程序代码和程序代码秘钥发送至车载T-box之后,所述方法还包括:
云端将根证书和T-Box证书烧录到车载T-Box;其中,所述根证书和T-Box证书用于车载T-box和云端的双向身份认证。
进一步,所述车载T-box和云端的双向身份认证过程具体包括:
车载T-Box上电,载入BootLoader程序;
车载T-Box获取云端证书,并通过根证书验证所述云端证书的有效性;
若所述云端证书验证成功,则车载T-Box产生第一随机数,并将所述第一随机数上传至云端;
云端对所述第一随机数进行签名,获得第一随机数签名,将所述第一随机数签名回传至车载T-Box,以供车载T-Box验证所述第一随机数签名;
若所述第一随机数签名验证成功,车载T-Box将T-Box证书上传至云端,以供云端验证所述T-Box证书的有效性;
若所述T-Box证书验证成功,则云端产生第二随机数,并将所述第二随机数传送至车载T-Box;
车载T-Box对所述第二随机数进行签名,获得第二随机数签名,将所述第二随机数签名发送至云端,以供云端验证所述第二随机数签名。
进一步,所述车载T-Box和云端通过wifi或4G网络通信连接。
第二方面,本发明提供一种车载T-Box程序代码的安全加载系统,该系统包括车载T-Box和与所述车载T-Box通信连接的云端;所述车载T-Box包括:
双向认证模块,用于车载T-box上电后,与云端进行双向身份认证,若所述双向身份认证成功,则接收云端发送的第一子程序代码;
解密模块,用于通过程序代码秘钥分别解密所述第一子程序代码和车载T-box本地存储的第二子程序代码;其中,所述程序代码秘钥是由云端预先发送至车载T-box的;
程序代码合并模块;用于将解密后的所述第一子程序代码和第二子程序代码进行合并,获得目标程序代码;
程序代码加载模块;用于加载所述目标程序代码至RAM区运行;
所述云端包括程序代码发送模块,用于在与车载T-box双向身份认证成功之后,将预先存储的第一子程序代码发送至车载T-box。
进一步,所述云端还包括:
程序秘钥发送模块,用于在车载T-box出厂前,将所述第二子程序代码和程序代码秘钥发送至车载T-box。
进一步,所述程序秘钥发送模块包括:
秘钥生成单元,用于在车载T-box出厂前,接收车载T-box上传的目标程序代码,基于所述目标程序代码生成程序代码秘钥;其中,所述目标程序代码是在车载T-box通过程序编译生成;
程序代码拆分单元,用于将所述目标程序代码拆分为第一子程序代码和第二子程序代码;
程序代码加密单元,用于通过程序代码秘钥分别对所述第一子程序代码和第二子程序代码进行加密;
发送单元,用于将加密后的第二子程序代码和所述程序代码秘钥发送至车载T-box。
附图说明
图1为本发明实施例提供的车载T-Box程序代码的安全加载方法流程示意图;
图2为本发明实施例提供的车载T-Box程序代码的安全加载系统的结构示意图。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
图1为本发明实施例提供的车载T-Box程序代码的安全加载方法流程示意图,如图2所示,该方法包括;
第一方面,本发明提供一种车载T-Box程序代码的安全加载方法,包括:
步骤S1,车载T-box上电后,与云端进行双向身份认证,若所述双向身份认证成功,则云端将预先存储的第一子程序代码发送至车载T-box;
其中,车载T-box与云端通过网络连接,主要负责将车辆的ECU存储信息上传到云端,车载T-box能够对车辆基本状况进行显示,为车内乘客提供资讯娱乐服务,并且为用户对车辆的远程操控提供支持。
可以理解的是,车载T-box与云端互通互联时,有可能被外界攻击,发送错误指令,导致云端数据被盗取。因此,在车载T-box上电后,需要与云端进行双向身份认证,保证通信的双方都是真实的,提高车载T-box与云端通信的安全性。
在执行步骤S1之前,本实施例预先将车载T-Box目标程序代码拆分为第一子程序代码和第二子程序代码,将第一子程序代码存储在云端,第二子程序代码存储在车载T-Box端。使得车载T-Box端即使被非法窃取芯片存储的数据,也无法获取完整的程序代码。
车载T-box与云端双向身份认证成功,则云端将预先存储的第一子程序代码发送至车载T-box。在本发明实施例的描述中,车载T-box也描述为车载T-box端。
步骤S2,通过程序代码秘钥分别解密所述第一子程序代码和车载T-box本地存储的第二子程序代码;其中,所述程序代码秘钥是由云端预先发送至车载T-box的。
可以理解的是,车载T-Box与云端通过网络进行信息传递,为避免信息泄露,第一子程序代码和和第二子程序代码都是经过预先加密的。车载T-Box通过程序代码秘钥分别解密第一子程序代码和本地存储的第二子程序代码。
步骤S3,将解密后的所述第一子程序代码和第二子程序代码进行合并,获得目标程序代码。其中,目标程序代码是指完整的可执行代码。
具体的,车载T-Box在将解密后的第一子程序代码和解密后的第二子程序代码合并获得目标程序代码之后,还需要验证目标程序代码的完整性,本实施例通过CRC16校验算法验证目标程序代码的完整性。
步骤S4,加载所述目标程序代码至RAM区运行。
具体的,在上述完整性校验通过后,车载T-Box将合并的目标程序代码加载至RAM区域运行,实现车载T-Box程序代码的安全加载。掉电后,车载T-Box只存储目标程序代码的部分分量(即第二子程序代码),提高了车载T-Box程序代码存储以及启动过程的安全性。
本发明实施例提供的车载T-Box程序代码的安全加载方法,通过将车载T-Box的第一子程序代码存储在云端,第二子程序代码存储在车载T-Box端,使得车载T-Box端即使被非法窃取芯片存储的数据,窃取者也无法获取完整的程序代码。提高了车载T-Box程序代码存储以及启动过程的安全性,有效分散车载T-Box端的安全风险。同时,在车载T-Box上电并且身份认证通过后,合并的目标程序代码加载至RAM区域运行,实现车载T-Box程序代码的安全加载。
基于上述实施例的内容,作为一种可选实施例,在车载T-box上电之前,所述方法还包括:
云端将所述第二子程序代码和程序代码秘钥发送至车载T-box。
具体地,在执行上述步骤S1之前,云端预先将车载T-Box目标程序代码拆分为第一子程序代码和第二子程序代码,将第一子程序代码存储在云端,将第二子程序代码和程序代码秘钥发送至车载T-box端。使得车载T-Box端即使被非法窃取芯片存储的数据,也无法获取完整的程序代码。
基于上述实施例的内容,作为一种可选实施例,所述云端将所述第二子程序代码和程序代码秘钥发送至车载T-box具体包括:
在车载T-box出厂前,云端接收车载T-box上传的目标程序代码,基于所述目标程序代码生成程序代码秘钥;其中,所述目标程序代码是在车载T-box通过程序编译生成。
具体的,在车载T-box出厂前,开发人员在车载T-box端通过程序编译生成目标程序代码,目标程序代码是指完整的可执行代码。车载T-box端将目标程序代码发送至云端,云端基于所述目标程序代码生成程序代码秘钥。
将目标程序代码拆分为第一子程序代码和第二子程序代码;
通过程序代码秘钥分别对所述第一子程序代码和第二子程序代码进行加密。
可以理解的是,车载T-Box与云端通过网络进行信息传递,为避免信息泄露,本实施例通过程序代码秘钥分别对所述第一子程序代码和第二子程序代码进行加密,提高信息传递的安全性。
将加密后的第二子程序代码和所述程序代码秘钥发送至车载T-box。车载T-box端将加密后的第二子程序代码和程序代码秘钥并存储在本地。
基于上述实施例的内容,作为一种可选实施例,所述将目标程序代码拆分为第一子程序代码和第二子程序代码具体包括:
云端通过异或操作将所述目标程序代码拆分为第一子程序代码和第二子程序代码。
具体的,云端首先生成和目标程序代码同样字节长度的第一子程序代码,然后令第二子程序代码=目标程序代码⊕第一子程序代码。
基于上述实施例的内容,作为一种可选实施例,在云端将所述第二子程序代码和程序代码秘钥发送至车载T-box之后,所述方法还包括:
云端将根证书和T-Box证书烧录到车载T-Box;其中,所述根证书和T-Box证书用于车载T-box和云端的双向身份认证。
基于上述实施例的内容,作为一种可选实施例,所述车载T-box和云端的双向身份认证过程具体包括:
车载T-Box上电,载入BootLoader程序;
车载T-Box获取云端证书,并通过根证书验证所述云端证书的有效性;
若所述云端证书验证成功,则车载T-Box产生第一随机数,并将所述第一随机数上传至云端;
云端对所述第一随机数进行签名,获得第一随机数签名,将所述第一随机数签名回传至车载T-Box,以供车载T-Box验证所述第一随机数签名;
若所述第一随机数签名验证成功,车载T-Box将T-Box证书上传至云端,以供云端验证所述T-Box证书的有效性;
若所述T-Box证书验证成功,则云端产生第二随机数,并将所述第二随机数传送至车载T-Box;
车载T-Box对所述第二随机数进行签名,获得第二随机数签名,将所述第二随机数签名发送至云端,以供云端验证所述第二随机数签名。
基于上述实施例的内容,作为一种可选实施例,所述车载T-Box和云端通过wifi或4G网络通信连接。
基于上述实施例的内容,作为一种可选实施例,图2为根据本发明实施例提供的车载T-Box程序代码的安全加载系统的结构示意图,如图2所示,该系统包括车载T-Box和与所述车载T-Box通信连接的云端,所述车载T-Box包括双向认证模块201、解密模块202、程序代码合并模块203和程序代码加载模块204,其中:
双向认证模块201,用于在车载T-box上电后,与云端进行双向身份认证,若所述双向身份认证成功,则接收云端发送的第一子程序代码;
可以理解的是,车载T-box与云端互通互联时,有可能被外界攻击,发送错误指令,导致云端数据被盗取。因此,在车载T-box上电后,需要与云端进行双向身份认证,保证通信的双方都是真实的,提高车载T-box与云端通信的安全性。
本实施例预先将车载T-Box目标程序代码拆分为第一子程序代码和第二子程序代码,将第一子程序代码存储在云端,第二子程序代码存储在车载T-Box端。使得车载T-Box端即使被非法窃取芯片存储的数据,也无法获取完整的程序代码。车载T-box与云端双向身份认证成功后,云端将预先存储的第一子程序代码发送至车载T-box。
解密模块202,用于通过程序代码秘钥分别解密所述第一子程序代码和车载T-box本地存储的第二子程序代码;其中,所述程序代码秘钥是由云端预先发送至车载T-box的。可以理解的是,车载T-Box与云端通过网络进行信息传递,为避免信息泄露,第一子程序代码和和第二子程序代码都是经过预先加密的。
程序代码合并模块203;用于将解密后的所述第一子程序代码和第二子程序代码进行合并,获得目标程序代码。
具体的,程序代码合并模块203将解密后的第一子程序代码和第二子程序代码合并获得目标程序代码之后,还需要验证目标程序代码的完整性,本实施例通过CRC16校验算法验证目标程序代码的完整性。
程序代码加载模块204;用于加载所述目标程序代码至RAM区运行;
具体的,在目标程序代码的完整性验证通过后,程序代码加载模块204将合并的目标程序代码加载至RAM区域运行,实现车载T-Box程序代码的安全加载。掉电后,车载T-Box只存储目标程序代码的部分分量(即第二子程序代码),提高了车载T-Box程序代码存储以及启动过程的安全性。
所述云端包括程序代码发送模块301,用于在与车载T-box双向身份认证成功之后,将预先存储的第一子程序代码发送至车载T-box。
本发明实施例提供的车载T-Box程序代码的安全加载系统,通过将车载T-Box的第一子程序代码存储在云端,第二子程序代码存储在车载T-Box端,使得车载T-Box端即使被非法窃取芯片存储的数据,窃取者也无法获取完整的程序代码。提高了车载T-Box程序代码存储以及启动过程的安全性,有效分散车载T-Box端的安全风险。同时,在车载T-Box上电并且身份认证通过后,合并的目标程序代码加载至RAM区域运行,实现车载T-Box程序代码的安全加载。
基于上述实施例的内容,作为一种可选实施例,所述云端301还包括:
程序秘钥发送模块302,用于在车载T-box出厂前,将所述第二子程序代码和程序代码秘钥发送至车载T-box。
具体地,程序秘钥发送模块302预先将车载T-Box目标程序代码拆分为第一子程序代码和第二子程序代码,将第一子程序代码存储在云端,将第二子程序代码和程序代码秘钥发送至车载T-box端。使得车载T-Box端即使被非法窃取芯片存储的数据,也无法获取完整的程序代码。
基于上述实施例的内容,作为一种可选实施例,所述程序秘钥发送模块302包括:
秘钥生成单元,用于在车载T-box出厂前,接收车载T-box上传的目标程序代码,基于所述目标程序代码生成程序代码秘钥;其中,所述目标程序代码是在车载T-box通过程序编译生成;
程序代码拆分单元,用于将所述目标程序代码拆分为第一子程序代码和第二子程序代码;
程序代码加密单元,用于通过程序代码秘钥分别对所述第一子程序代码和第二子程序代码进行加密;
发送单元,用于将加密后的第二子程序代码和所述程序代码秘钥发送至车载T-box。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (6)

1.一种车载T-Box程序代码的安全加载方法,其特征在于,包括:
在车载T-box出厂前,云端接收车载T-box上传的目标程序代码,基于所述目标程序代码生成程序代码秘钥;其中,所述目标程序代码是在车载T-box通过程序编译生成;
将目标程序代码拆分为第一子程序代码和第二子程序代码;
通过程序代码秘钥分别对所述第一子程序代码和第二子程序代码进行加密;
将加密后的第二子程序代码和所述程序代码秘钥发送至车载T-box;
车载T-box上电后,与云端进行双向身份认证,若所述双向身份认证成功,则云端将预先存储的第一子程序代码发送至车载T-box;
通过程序代码秘钥分别解密所述第一子程序代码和车载T-box本地存储的第二子程序代码;
将解密后的所述第一子程序代码和第二子程序代码进行合并,获得目标程序代码;
加载所述目标程序代码至RAM区运行。
2.根据权利要求1所述的方法,其特征在于,所述将目标程序代码拆分为第一子程序代码和第二子程序代码具体包括:
云端通过异或操作将所述目标程序代码拆分为第一子程序代码和第二子程序代码。
3.根据权利要求1所述的方法,其特征在于,在云端将所述第二子程序代码和程序代码秘钥发送至车载T-box之后,所述方法还包括:
云端将根证书和T-Box证书烧录到车载T-Box;其中,所述根证书和T-Box证书用于车载T-box和云端的双向身份认证。
4.根据权利要求3所述的方法,其特征在于,所述车载T-box和云端的双向身份认证过程具体包括:
车载T-Box上电,载入BootLoader程序;
车载T-Box获取云端证书,并通过根证书验证所述云端证书的有效性;
若所述云端证书验证成功,则车载T-Box产生第一随机数,并将所述第一随机数上传至云端;
云端对所述第一随机数进行签名,获得第一随机数签名,将所述第一随机数签名回传至车载T-Box,以供车载T-Box验证所述第一随机数签名;
若所述第一随机数签名验证成功,车载T-Box将T-Box证书上传至云端,以供云端验证所述T-Box证书的有效性;
若所述T-Box证书验证成功,则云端产生第二随机数,并将所述第二随机数传送至车载T-Box;
车载T-Box对所述第二随机数进行签名,获得第二随机数签名,将所述第二随机数签名发送至云端,以供云端验证所述第二随机数签名。
5.根据权利要求1所述的方法,其特征在于,所述车载T-Box和云端通过wifi或4G网络通信连接。
6.一种车载T-Box程序代码的安全加载系统,其特征在于,包括车载T-Box和与所述车载T-Box通信连接的云端;所述车载T-Box包括:
程序秘钥发送模块,包括秘钥生成单元、程序代码拆分单元、程序代码加密单元和发送单元;其中:秘钥生成单元,用于在车载T-box出厂前,接收车载T-box上传的目标程序代码,基于所述目标程序代码生成程序代码秘钥,所述目标程序代码是在车载T-box通过程序编译生成;程序代码拆分单元,用于将所述目标程序代码拆分为第一子程序代码和第二子程序代码;程序代码加密单元,用于通过程序代码秘钥分别对所述第一子程序代码和第二子程序代码进行加密;发送单元,用于将加密后的第二子程序代码和所述程序代码秘钥发送至车载T-box;
双向认证模块,用于车载T-box上电后,与云端进行双向身份认证,若所述双向身份认证成功,则接收云端发送的第一子程序代码;
解密模块,用于通过程序代码秘钥分别解密所述第一子程序代码和车载T-box本地存储的第二子程序代码;
程序代码合并模块;用于将解密后的所述第一子程序代码和第二子程序代码进行合并,获得目标程序代码;
程序代码加载模块;用于加载所述目标程序代码至RAM区运行;
所述云端包括程序代码发送模块,用于在与车载T-box双向身份认证成功之后,将预先存储的第一子程序代码发送至车载T-box。
CN201910690963.1A 2019-07-29 2019-07-29 一种车载T-Box程序代码的安全加载方法及系统 Active CN110414216B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910690963.1A CN110414216B (zh) 2019-07-29 2019-07-29 一种车载T-Box程序代码的安全加载方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910690963.1A CN110414216B (zh) 2019-07-29 2019-07-29 一种车载T-Box程序代码的安全加载方法及系统

Publications (2)

Publication Number Publication Date
CN110414216A CN110414216A (zh) 2019-11-05
CN110414216B true CN110414216B (zh) 2021-06-25

Family

ID=68363997

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910690963.1A Active CN110414216B (zh) 2019-07-29 2019-07-29 一种车载T-Box程序代码的安全加载方法及系统

Country Status (1)

Country Link
CN (1) CN110414216B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111814139B (zh) * 2020-07-02 2023-05-09 深圳市法拉第电驱动有限公司 汽车电机控制器程序安全加载系统及方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104794393A (zh) * 2015-04-24 2015-07-22 杭州字节信息技术有限公司 一种嵌入式分区映像安全认证及内核可信引导方法及其设备
CN106385405A (zh) * 2016-09-05 2017-02-08 上海科世达-华阳汽车电器有限公司 一种汽车激活方法
CN108081916A (zh) * 2017-12-20 2018-05-29 江西爱驰亿维实业有限公司 车载空气净化器的启动方法及装置
CN109041263A (zh) * 2018-08-29 2018-12-18 武汉光庭信息技术股份有限公司 一种TBox蓝牙连接方法和装置
CN109101844A (zh) * 2018-08-22 2018-12-28 京东方科技集团股份有限公司 车载设备及其安全校验方法
CN109240731A (zh) * 2018-08-29 2019-01-18 武汉光庭信息技术股份有限公司 一种TBox的安全升级方法和系统
CN109398353A (zh) * 2018-09-30 2019-03-01 北京新能源汽车股份有限公司 一种车辆安全控制方法及装置
CN109471652A (zh) * 2018-10-24 2019-03-15 北汽福田汽车股份有限公司 车辆的程序更新方法及其系统、车载终端和电子设备

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104794393A (zh) * 2015-04-24 2015-07-22 杭州字节信息技术有限公司 一种嵌入式分区映像安全认证及内核可信引导方法及其设备
CN106385405A (zh) * 2016-09-05 2017-02-08 上海科世达-华阳汽车电器有限公司 一种汽车激活方法
CN108081916A (zh) * 2017-12-20 2018-05-29 江西爱驰亿维实业有限公司 车载空气净化器的启动方法及装置
CN109101844A (zh) * 2018-08-22 2018-12-28 京东方科技集团股份有限公司 车载设备及其安全校验方法
CN109041263A (zh) * 2018-08-29 2018-12-18 武汉光庭信息技术股份有限公司 一种TBox蓝牙连接方法和装置
CN109240731A (zh) * 2018-08-29 2019-01-18 武汉光庭信息技术股份有限公司 一种TBox的安全升级方法和系统
CN109398353A (zh) * 2018-09-30 2019-03-01 北京新能源汽车股份有限公司 一种车辆安全控制方法及装置
CN109471652A (zh) * 2018-10-24 2019-03-15 北汽福田汽车股份有限公司 车辆的程序更新方法及其系统、车载终端和电子设备

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
《A Driving Fingerprint Map Method of Driving Characteristic Representation for Driver Identification》;DUNYAO ZHU等;《IEEE Access》;20181218;第71012-71019页 *
《车载信息系统平台发展》;朱敦尧等;《电子产品世界》;20090227;第11-15页 *

Also Published As

Publication number Publication date
CN110414216A (zh) 2019-11-05

Similar Documents

Publication Publication Date Title
EP2659373B1 (en) System and method for secure software update
CN107743067B (zh) 数字证书的颁发方法、系统、终端以及存储介质
CN107395581B (zh) 二维码生成及读取方法、装置、系统、设备和存储介质
CN102510378B (zh) 一种通过移动设备登陆网络游戏的方法
CN106936588B (zh) 一种硬件控制锁的托管方法、装置及系统
CN111666564B (zh) 应用程序安全启动方法、装置、计算机设备和存储介质
JP2004265026A (ja) アプリケーション認証システムと装置
CN103269271A (zh) 一种备份电子签名令牌中私钥的方法和系统
CN108062461A (zh) 一种软件授权方法、装置及系统
CN110096849A (zh) 一种License授权认证方法、装置、设备及可读存储介质
CN112165382A (zh) 软件授权方法、装置、授权服务端及终端设备
CN110688660A (zh) 一种终端安全启动的方法及装置、存储介质
CN104426659A (zh) 动态口令生成方法、认证方法及系统、相应设备
CN115374405A (zh) 软件授权方法、许可授权方法、装置、设备和存储介质
CN103592927A (zh) 一种通过license绑定产品服务器及业务功能的方法
CN114430346A (zh) 登录方法、装置及电子设备
CN110414216B (zh) 一种车载T-Box程序代码的安全加载方法及系统
CN110838919A (zh) 通信方法、存储方法、运算方法及装置
CN108650214B (zh) 动态页面加密防越权方法及装置
KR20130012136A (ko) 정보생성 시스템 및 그 방법
CN111600701B (zh) 一种基于区块链的私钥存储方法、装置及存储介质
CN106557682B (zh) 加密狗的授权验证方法及装置
CN112446782A (zh) 初始密钥下载的方法、计算机设备及存储介质
CN116909603A (zh) 车辆安全升级方法及系统
CN103281188A (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
GR01 Patent grant
GR01 Patent grant