System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及系统安全,更为具体来说,本申请涉及一种系统升级的校验方法、装置、设备及存储介质。
技术介绍
1、近年来,嵌入式系统中的升级程序的版本号设置为升级的校验和(checksum),长度为16bit,即把升级文件从头开始以8bit为单位依次累加,直至升级文件最后。最后保留低16位的数据就是升级程序的校验和。
2、然而,这样的校验方式可以校验因程序中某些或某位数据修改导致程序被篡改的问题。但这样的方式程序无法添加附加的信息,因此会导致校验和发生变化,与原来编译的程序校验和不符等问题。
技术实现思路
1、基于上述技术问题,本专利技术旨在于系统升级对应的升级程序末尾添加编译信息,其中,所述编译信息包括附加编译信息和补偿编译信息,所述附加编译信息和补偿编译信息互为补码,以确保系统升级对应的升级程序的检验和不变,从而使系统升级通过检验。
2、本专利技术第一方面提供了一种系统升级的校验方法,所述方法包括:
3、获取系统升级对应的升级程序,作为第一程序;
4、在所述第一程序末尾添加编译信息,其中,所述编译信息包括附加编译信息和补偿编译信息;
5、配置所述附加编译信息和所述补偿编译信息互为补码,将配置后的第一程序作为第二程序;
6、分别计算第一程序的校验和与第二程序的校验和;
7、若所述第一程序的校验和与所述第二程序的校验和相同,确定系统升级校验成功。
8、在本专利技术的一些实施例中,所述配置所述附加
9、确定所述附加编译信息的内容,其中,所述附加编译信息的内容至少包括所述升级程序的编译服务器、编译工程师和编译日期;
10、将确定内容后的附加编译信息转换为十六进制数据;
11、将补偿编译信息设置为附加编译信息转换后对应的十六进制数据的补码。
12、在本专利技术的一些实施例中,在所述将补偿编译信息设置为附加编译信息转换后对应的十六进制数据的补码之后,还包括:将所述补偿编译信息追加在所述附加编译信息转换后对应的十六进制数据的末尾。
13、在本专利技术的一些实施例中,所述计算第一程序的校验和,包括:
14、将所述第一程序拆分为多个字节数字,将所有字节对应的数字进行二进制反码求和;
15、将进行二进制反码求和得到的16位结果作为第一程序的校验和。
16、在本专利技术的一些实施例中,所述第一程序和第二程序均以二进制形式存储。
17、在本专利技术的一些实施例中,所述方法还包括:将所述第一程序的校验和设置为系统升级对应的升级版本号。
18、在本专利技术的一些实施例中,所述方法还包括:若所述第一程序的校验和与所述第二程序的校验和不相同,判定系统无法升级并重新对所述第一程序和所述第二程序进行编译。
19、本专利技术第二方面提供了一种系统升级的校验装置,所述装置包括:
20、获取模块,用于获取系统升级对应的升级程序,并将所述系统升级对应的升级程序作为第一程序;
21、添加模块,用于在所述第一程序末尾添加编译信息,其中,所述编译信息包括附加编译信息和补偿编译信息;
22、配置模块,用于配置所述附加编译信息和所述补偿编译信息互为补码,将配置后的第一程序作为第二程序;
23、计算模块,用于分别计算第一程序的校验和与第二程序的校验和;
24、校验模块,用于在所述第一程序的校验和与所述第二程序的校验和相同,确定系统升级校验成功。
25、本专利技术第三方面提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机可读指令,计算机可读指令被处理器执行时,使得处理器执行以下步骤:
26、获取系统升级对应的升级程序,作为第一程序;
27、在所述第一程序末尾添加编译信息,其中,所述编译信息包括附加编译信息和补偿编译信息;
28、配置所述附加编译信息和所述补偿编译信息互为补码,将配置后的第一程序作为第二程序;
29、分别计算第一程序的校验和与第二程序的校验和;
30、若所述第一程序的校验和与所述第二程序的校验和相同,确定系统升级校验成功。
31、本专利技术第四方面提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以下步骤:
32、获取系统升级对应的升级程序,作为第一程序;
33、在所述第一程序末尾添加编译信息,其中,所述编译信息包括附加编译信息和补偿编译信息;
34、配置所述附加编译信息和所述补偿编译信息互为补码,将配置后的第一程序作为第二程序;
35、分别计算第一程序的校验和与第二程序的校验和;
36、若所述第一程序的校验和与所述第二程序的校验和相同,确定系统升级校验成功。
37、本申请实施例中提供的技术方案,至少具有如下技术效果或优点:
38、本申请先获取系统升级对应的升级程序,作为第一程序,在所述第一程序末尾添加编译信息,其中,所述编译信息包括附加编译信息和补偿编译信息,配置所述附加编译信息和所述补偿编译信息互为补码,将配置后的第一程序作为第二程序,分别计算第一程序的校验和与第二程序的校验和,若所述第一程序的校验和与所述第二程序的校验和相同,确定系统升级校验成功,能够在升级程序中添加一些附带的编译信息,而不影响升级程序的校验和,不同机器或工程师编译出来的升级程序时校验和是一致的,不同的时间程序编译出的程序最后2byte(即checksum)也是一致的,与此同时还可追踪升级程序是从哪台机器或哪个工程师编程出来的。除此之外,本申请还具备三个优点:一是不影响原有的整个软件功能开发、测试、程序核对、发放和烧录等流程;二是改方式追加的数据可以做到不同方案和产品的统一,大大地降低了后续获取数据的难度;三是方便扩展,可以在程序编译完成后再根据需求扩展和更改需要的数据。
39、应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本专利技术。
本文档来自技高网...【技术保护点】
1.一种系统升级的校验方法,其特征在于,所述方法包括:
2.根据权利要求1所述的系统升级的校验方法,其特征在于,所述配置所述附加编译信息和所述补偿编译信息互为补码,包括:
3.根据权利要求2所述的系统升级的校验方法,其特征在于,在所述将补偿编译信息设置为附加编译信息转换后对应的十六进制数据的补码之后,还包括:将所述补偿编译信息追加在所述附加编译信息转换后对应的十六进制数据的末尾。
4.根据权利要求1所述的系统升级的校验方法,其特征在于,所述计算第一程序的校验和,包括:
5.根据权利要求4所述的系统升级的校验方法,其特征在于,所述第一程序和第二程序均以二进制形式存储。
6.根据权利要求4所述的系统升级的校验方法,其特征在于,所述方法还包括:将所述第一程序的校验和设置为系统升级对应的升级版本号。
7.根据权利要求1所述的系统升级的校验方法,其特征在于,所述方法还包括:若所述第一程序的校验和与所述第二程序的校验和不相同,判定系统无法升级并重新对所述第一程序和所述第二程序进行编译。
8.一种系统升级的校验
9.一种计算机设备,包括存储器和处理器,其特征在于,存储器中存储有计算机可读指令,计算机可读指令被处理器执行时,使得处理器执行如权利要求1-7任一所述方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1-7任一所述方法。
...【技术特征摘要】
1.一种系统升级的校验方法,其特征在于,所述方法包括:
2.根据权利要求1所述的系统升级的校验方法,其特征在于,所述配置所述附加编译信息和所述补偿编译信息互为补码,包括:
3.根据权利要求2所述的系统升级的校验方法,其特征在于,在所述将补偿编译信息设置为附加编译信息转换后对应的十六进制数据的补码之后,还包括:将所述补偿编译信息追加在所述附加编译信息转换后对应的十六进制数据的末尾。
4.根据权利要求1所述的系统升级的校验方法,其特征在于,所述计算第一程序的校验和,包括:
5.根据权利要求4所述的系统升级的校验方法,其特征在于,所述第一程序和第二程序均以二进制形式存储。
6.根据权利要求4所述的系统升级的...
【专利技术属性】
技术研发人员:罗杰,
申请(专利权)人:广州视琨电子科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。