[发明专利]软件增量升级方法、装置、设备及计算机可读存储介质在审
申请号: | 202011418155.9 | 申请日: | 2020-12-07 |
公开(公告)号: | CN112486555A | 公开(公告)日: | 2021-03-12 |
发明(设计)人: | 高冉;蔡乐意;张煜;单立强;吴鹏;尘健 | 申请(专利权)人: | 浙江诺诺网络科技有限公司 |
主分类号: | G06F8/658 | 分类号: | G06F8/658;G06F8/71 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 史翠 |
地址: | 310000 浙江省杭州市西*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 软件 增量 升级 方法 装置 设备 计算机 可读 存储 介质 | ||
本发明公开了一种软件增量升级方法,通过在接收到新版本可执行文件时,计算新版本可执行文件的功能代码对应的第一签名,并获取当前版本可执行文件的功能代码对应的与第一签名采用同样的计算规则生成的第二签名,比较第一签名和第二签名是否相同,如果相同则拒绝采用新版本可执行文件进行软件升级,如果不相同则采用新版本可执行文件进行软件升级。本发明提供的软件增量升级方法通过忽略文件版本号、签名时间戳等非功能部分的变化,只针对可执行文件的功能代码的变化进行升级,减少了非必要的软件升级,进而提高了下载效率和升级成功率。本发明还公开了一种软件增量升级装置、设备及计算机可读存储介质,具有上述有益效果。
技术领域
本发明涉及软件技术领域,特别是涉及一种软件增量升级方法、装置、设备及计算机可读存储介质。
背景技术
目前,Windows软件的升级功能通常为通过升级文件和现有文件的大小、版本号或MD5值来确定文件是否有变化,如果有变化则进行升级。然而,由于目前编译自动化程度越来越高,文件版本号、证书签名等基本上都是在编译期自动处理好的,往往会出现版本号自增、证书签名的时间戳发生变化、甚至文件大小都发生了变化等情况。例如,同一证书的签名时间不同,就会生成不同的时间戳。这些变化情况并不会影响文件执行的功能,但都会被当做变化的文件进行更新,由此增加了下载的数据量,也增加了文件替换的复杂度,甚至因数据量过大,有可能导致升级失败。
发明内容
本发明的目的是提供一种软件增量升级方法、装置、设备及计算机可读存储介质,用于在软件增量升级的场景中减少非必要的软件升级,提高下载效率和升级成功率。
为解决上述技术问题,本发明提供一种软件增量升级方法,包括:
当接收到新版本可执行文件时,计算所述新版本可执行文件的功能代码对应的第一签名;
获取当前版本可执行文件的功能代码对应的第二签名;其中,所述第二签名和所述第一签名采用同样的计算规则生成;
若所述第一签名和所述第二签名一致,则拒绝采用所述新版本可执行文件进行软件升级;
若所述第一签名和所述第二签名不一致,则采用所述新版本可执行文件进行软件升级。
可选的,所述计算所述新版本可执行文件的功能代码对应的第一签名,具体包括:
剔除所述新版本可执行文件中的非功能代码,得到所述新版本可执行文件的重构内容;
计算所述重构内容对应的第一签名。
可选的,所述计算所述新版本可执行文件的功能代码对应的第一签名,具体包括:
将所述新版本可执行文件中的非功能代码替换为默认代码,得到所述新版本可执行文件的重构内容;
计算所述重构内容对应的第一签名。
可选的,所述非功能代码具体包括:调试目录、资源目录和安全目录。
可选的,所述计算所述新版本可执行文件的功能代码对应的第一签名,具体包括:
将所述新版本可执行文件的NT文件头结构中的时间戳修改为第一默认时间戳;
遍历所述新版本可执行文件的NT扩展可选结构中的数据目录中的调试节点的子结构,若存在NB10类型文件,则将所述NB10类型文件中的全局唯一标识符修改为默认标识符;若存在RSDS类型文件,则将所述RSDS类型文件中的四字节时间戳修改为第二默认时间戳;
对所述新版本可执行文件中动态长度的程序数据库文件的源路径信息进行标记并转化为偏移地址,而后遍历所述新版本可执行文件的文件映像结构中的节表,若所述节表中包含被标记的地址,则剔除所述被标记的地址并对所述节表进行重组,并根据重组后的节表修改所述文件映像结构中的数据长度以及与所述节表的关联结构中指向实际数据的指针;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江诺诺网络科技有限公司,未经浙江诺诺网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011418155.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:枝叶收集粉碎的茶树冠修剪装置
- 下一篇:一种自动换袋装置的工作方法