【技术实现步骤摘要】
应用程序文件打包方法、安装方法及启动方法
本专利技术涉及软件控制技术,特别涉及应用程序文件的打包技术、应用程序安装技术和应用程序启动技术。
技术介绍
目前存在一些终端设备,由于其内存DDR的存储大小、FLASH存储的大小和主芯片性能等的限制(通常FLASH存储大小远远超过内存DDR),因此无法实现对整个软件进行加密存储和启动,例如NB-IoT终端设备。对于上述问题,目前通常采用的是软件明文存储并直接从FLASH启动的方式,导致终端设备的软件容易被篡改、窃取等,软件安全性较差。
技术实现思路
本专利技术为解决现有终端设备软件安全性较差的问题,提供一种应用程序文件打包方法、安装方法及启动方法。为解决上述问题,本专利技术采用的技术方案是:应用程序文件打包方法,包括:使用程序切割工具将应用程序文件切割为子文件一和子文件二,所述子文件一不需要加密保护,子文件二需要加密保护;打包工具根据预设的子文件一的校验参数生成子文件一的校验值;打包工具根据预设的子文件二的校验参数生成子文件二的校验值,根据预设的子文件二的加密参数使用随机密钥对子文件二进行加密;打包工具组装应用程序文件的配置信息,并使用预设的根密钥对配置信息进行加密;打包工具将子文件一、子文件二和配置信息打包生成打包文件,然后计算出打包文件的签名信息;打包工具将打包文件的大小和签名信息合成头信息,并使用根密钥对头信息加密后将头信息插入到打包文件中。作为进一步优化,所述子文件一的校验参数包括子文件一的分组标志、各组校验方式和校验占比,打包工具根据子文件一的校验占比,随机产生子文件一需要校验的多个数据块,并根据子文件一的分 ...
【技术保护点】
1.应用程序文件打包方法,其特征在于,包括:使用程序切割工具将应用程序文件切割为子文件一和子文件二,所述子文件一不需要加密保护,子文件二需要加密保护;打包工具根据预设的子文件一的校验参数生成子文件一的校验值;打包工具根据预设的子文件二的校验参数生成子文件二的校验值,根据预设的子文件二的加密参数使用随机密钥对子文件二进行加密;打包工具组装应用程序文件的配置信息,并使用预设的根密钥对配置信息进行加密;打包工具将子文件一、子文件二和配置信息打包生成打包文件,然后计算出打包文件的签名信息;打包工具将打包文件的大小和签名信息合成头信息,并使用根密钥对头信息加密后将头信息插入到打包文件中。
【技术特征摘要】
1.应用程序文件打包方法,其特征在于,包括:使用程序切割工具将应用程序文件切割为子文件一和子文件二,所述子文件一不需要加密保护,子文件二需要加密保护;打包工具根据预设的子文件一的校验参数生成子文件一的校验值;打包工具根据预设的子文件二的校验参数生成子文件二的校验值,根据预设的子文件二的加密参数使用随机密钥对子文件二进行加密;打包工具组装应用程序文件的配置信息,并使用预设的根密钥对配置信息进行加密;打包工具将子文件一、子文件二和配置信息打包生成打包文件,然后计算出打包文件的签名信息;打包工具将打包文件的大小和签名信息合成头信息,并使用根密钥对头信息加密后将头信息插入到打包文件中。2.如权利要求1所述的应用程序文件打包方法,其特征在于,所述子文件一的校验参数包括子文件一的分组标志、各组校验方式和校验占比,打包工具根据子文件一的校验占比,随机产生子文件一需要校验的多个数据块,并根据子文件一的分组标志对子文件一需要校验的数据块分组,并按各组校验方式生成各个数据块的校验值;所述子文件二的校验参数包括子文件二的分组标志、各组校验方式和校验占比,打包工具根据子文件二的校验占比,随机产生子文件二需要校验的多个数据块,并根据子文件二的分组标志对子文件二需要校验的数据块分组,并按各组校验方式生成各个数据块的校验值;所述子文件二的加密参数包括子文件二的各组加密方式和加密占比,打包工具根据子文件二的加密占比,随机产生子文件二需要加密的多个数据块,并根据子文件二的分组标志对需要加密的数据块分组,并按各组加密方式,用打包工具配置的随机密钥对各个数据块进行加密。3.如权利要求2所述的应用程序文件打包方法,其特征在于,所述配置信息包括数据描述区数据、安全配置数据和组件信息数据,所述数据描述区数据包括子文件一的校验参数和各个数据块的校验值以及子文件二的校验参数、各个数据块的校验值、加密参数和各个数据块的加密密钥,所述安全配置数据包括应用程序文件的安全策略版本、加密方式和校验方式,所述组件信息数据包括子文件一、子文件二、安全配置数据和数据描述区数据各自在终端设备flash中的存储地址和大小。4.如权利要求3所述的应用程序文件打包方法,其特征在于,所述安全配置数据还包括下载打包文件的终端设备的ID。5.应用程序安装方法,基于权利要求1-4任一项所述的应用程序文件打包方法,其特征在于,待安装应用程序的终端设备中预设有启动模块,所述启动模块用于安装和/或启动应用程序,启动模块中预设有应用程序文件打包时所用的根密钥;终端设备每次安装应用程序时,包括:启动模块读取打包文件,并用根密钥解密头信息,获取打包文件的大小和签名信息,然后校验签名信息,若校验失败则表...
【专利技术属性】
技术研发人员:郭凯,缑步清,王瑛,冷连喜,张雷鸣,张建,
申请(专利权)人:四川长虹电器股份有限公司,
类型:发明
国别省市:四川,51
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。