一种VCI设备程序升级方法和装置制造方法及图纸

技术编号:9967408 阅读:98 留言:0更新日期:2014-04-25 07:36
本发明专利技术公开了一种VCI设备程序升级方法和装置,属于涉及汽车和软件技术领域,该方法包括:接收到应用程序升级请求后,进入升级模式并建立临时文件;接收到升级文件的头信息后,记录头信息的相关信息;接收升级文件,并根据升级文件的数据更新临时文件;当接收完升级文件后,对临时文件的数据进行加密,并将临时文件保存为可读写目录的新版本应用程序文件。采用本发明专利技术,通过对应用功能代码的独立升级方式,并在升级过程中加入数据包校验,升级后的可执行代码文件加密后存放于文件系统中,需要时再动态加载,并解密后执行,增强了VCI设备升级的稳定性和安全性。

【技术实现步骤摘要】
【专利摘要】本专利技术公开了一种VCI设备程序升级方法和装置,属于涉及汽车和软件
,该方法包括:接收到应用程序升级请求后,进入升级模式并建立临时文件;接收到升级文件的头信息后,记录头信息的相关信息;接收升级文件,并根据升级文件的数据更新临时文件;当接收完升级文件后,对临时文件的数据进行加密,并将临时文件保存为可读写目录的新版本应用程序文件。采用本专利技术,通过对应用功能代码的独立升级方式,并在升级过程中加入数据包校验,升级后的可执行代码文件加密后存放于文件系统中,需要时再动态加载,并解密后执行,增强了VCI设备升级的稳定性和安全性。【专利说明】一种VCI设备程序升级方法和装置
本专利技术涉及汽车和软件
,尤其涉及一种VCI (车辆通信接口)设备程序升级方法和装置。
技术介绍
随着汽车电子技术的高速发展,越来越多的汽车电脑系统需要维护和升级,越来越多的汽车诊断或编程设备制造商也频频出现,这样设备也需要不停的升级和维护,VCI设备也是其中的一种通用型汽车诊断或编程接口设备,大都是基于嵌入式操作系统,其软件也需要得到升级,以适应汽车电子的发展。目前,VCI设备软件升级一般都是采用全系统升级方法,一方面,当仅应用功能需要升级,并不需要升级整个操作系统,升级整个操作系统加大了由于升级失败所造成的风险;另一方面,在基于文件系统的VCI设备中,一旦用户获得到了管理员权限,可执行的应用功能代码完全暴露给破解者,安全性较低。
技术实现思路
有鉴于此,本专利技术要解决的技术问题是提供一种VCI设备程序升级方法和装置,以增强VCI设备升级的稳定性和安全性。本专利技术解决上述技术问题所采用的技术方案如下:根据本专利技术的一个方面,提供的一种VCI设备程序升级方法,该方法包括:接收到应用程序升级请求后,进入升级模式并建立临时文件;接收到升级文件的头信息后,记录头信息的相关信息;接收升级文件,并根据升级文件的数据更新临时文件;当接收完升级文件后,对临时文件的数据进行加密,并将临时文件保存为可读写目录的新版本应用程序文件。优选的,升级文件的头信息包括:文件长度、CRC信息和签名标志。优选的,接收到升级文件的头信息之后,接收升级文件的数据之前还包括:判断头信息中的签名标志是否与VCI设备本地的签名信息相同,如果不相同,则结束升级流程。优选的,接收升级文件,并根据升级文件的数据更新临时文件进一步包括:接收升级文件的数据包,并校验当前数据包是否正确,如果正确,则请求发送下一数据包,否则请求重发当前数据包;根据当前接收到的数据包和长度更新临时文件,并记录接收的数据总长度;判断接收的数据总长度是否等于头信息的文件长度,如果不是,则循环执行上述步骤。优选的,当接收完升级文件后,对临时文件的数据进行加密进一步包括:当接收的数据总长度等于头信息的文件长度后,判断所有数据包的校验CRC与所述头信息的CRC信息是否相符时,如果相符,则对升级数据进行加密。优选的,上述方法之后还包括:重新启动系统的步骤。优选的,上述重新启动系统的步骤之后还包括加载应用程序文件的步骤,该步骤进一步包括:检查文件系统的可读写目录中的新版本应用程序文件是否存在并且有效,如果是,则加载新版本应用程序文件到内存并解密,如果不是,则加载文件系统只读目录中的旧版本应用程序文件到内存并解密。根据本专利技术的另一个方面,提供的一种VCI设备程序升级装置,该装置包括:监听模块,用于接收到应用程序升级请求后,进入升级模式并建立临时文件;记录模块,用于接收到升级文件的头信息后,记录头信息的相关信息;更新模块,用于接收升级文件,并根据升级文件的数据更新临时文件;保存模块,用于当接收完升级文件后,对临时文件的数据进行加密,并将临时文件保存为可读写目录的新版本应用程序文件。优选的,更新模块进一步包括:接收单元,用于接收升级文件的数据包,并校验当前数据包是否正确,如果正确,则请求发送下一数据包,否则请求重发当前数据包;更新单元,用于根据当前接收到的数据包和长度更新临时文件,并记录接收的数据总长度;判断单元,用于判断接收的数据总长度是否等于头信息的文件长度,如果不等,则通知接收单元继续接收数据包。优选的,该装置还包括加载模块,用于检查文件系统的可读写目录中的新版本应用程序文件是否存在并且有效,如果是,则加载新版本应用程序文件到内存并解密,如果不是,则加载文件系统只读目录中的旧版本应用程序文件到内存并解密。本专利技术实施例的VCI设备程序升级方法和装置,通过对应用功能代码的独立升级方式,并在升级过程中加入数据包格式校验,升级后的可执行代码文件加密后存放于文件系统中,需要时再动态加载,并解密后执行,增强了 VCI设备升级的稳定性和安全性。【专利附图】【附图说明】图1为本专利技术实施例提供的一种VCI设备程序升级方法的流程图。图2为本专利技术优选实施例提供的一种VCI设备程序升级方法的流程图。图3为本专利技术优选实施例提供的一种VCI设备程序升级装置的结构示意图。【具体实施方式】为了使本专利技术所要解决的技术问题、技术方案及有益效果更加清楚、明白,以下结合附图和实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。请参阅图1,本专利技术实施例提供的一种VCI设备程序升级方法包括以下步骤:S201、接收到应用程序升级请求后,进入升级模式并建立临时文件。S202、接收到升级文件的头信息后,记录头信息的相关信息。其中,升级文件的头信息包括:文件长度、CRC信息和签名标志。S203、接收升级文件,并根据升级文件的数据更新临时文件。作为一种优选方案,本步骤进一步包括:接收升级文件的数据包,并校验当前数据包是否正确,如果正确,则请求发送下一数据包,否则请求重发当前数据包;根据当前接收到的数据包和长度更新临时文件,并记录接收的数据总长度;判断接收的数据总长度是否等于头信息的文件长度,如果不是,则循环执行上述步骤直到接收的数据总长度等于头信息的文件长度为止。S204、当接收完升级文件后,对临时文件的数据进行加密,并将临时文件保存为可读写目录的新版本应用程序文件。具体来说,当接收的数据总长度等于头信息的文件长度后,判断所有数据包的校验CRC与所述头信息的CRC信息是否相符时,如果相符,则对升级数据进行加密。作为一种优选方案,接收到升级文件的头信息之后,接收升级文件的数据之前还包括:判断头信息中的签名标志是否与VCI设备本地的签名信息相同,如果不相同,则结束升级流程。这样进一步有效提高了升级的安全性。作为一种优选方案,上述方法之后还包括:重新启动系统的步骤,重新启动系统的步骤之后还包括加载应用程序文件的步骤,该步骤进一步包括:检查文件系统的可读写目录中的新版本应用程序文件是否存在并且有效,如果是,则加载新版本应用程序文件到内存并解密,如果不是,则加载文件系统只读目录中的旧版本应用程序文件到内存并解密。这样,升级程序原使版本在只读目录有备份,只有系统能正常启动,原使版本文件被破坏的机率很小,系统的稳定性增强;只需要升级到新版本的可执行应用代码,升级速度快;升级后可执行代码在读写文件目录中进行了加密存放,只有在运行时解密到内存执行,提升了程序的破解难度,升级后VCI设备的安全性更高。作为一本文档来自技高网...

【技术保护点】
一种VCI设备程序升级方法,其特征在于,该方法包括:接收到应用程序升级请求后,进入升级模式并建立临时文件;接收到升级文件的头信息后,记录所述头信息的相关信息;接收升级文件,并根据所述升级文件的数据更新所述临时文件;当接收完升级文件后,对所述临时文件的数据进行加密,并将所述临时文件保存为可读写目录的新版本应用程序文件。

【技术特征摘要】

【专利技术属性】
技术研发人员:余世均李红京
申请(专利权)人:深圳市道通科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1