基于Qt框架的上位机客户端软件自更新管理方法及设备与流程

文档序号:41777395发布日期:2025-05-06 16:30阅读:29来源:国知局

本发明属于软件更新领域,尤其涉及一种基于qt框架的上位机客户端软件自更新管理方法及设备。


背景技术:

1、随着工业领域的快速发展,上位机客户端作为连接用户与工业设备的桥梁,其稳定性和功能完整性至关重要,上位机客户端软件在工业控制系统中的应用越来越广泛。随着计算机技术的不断发展,软件更新已成为保持软件功能完善和系统安全的重要手段。特别是在linux系统下,基于qt框架开发的上位机客户端软件,其更新管理对于保障软件性能和用户体验至关重要。

2、然而,传统的上位机客户端软件更新方式通常需要用户手动下载软件更新包并进行安装,这种方式不仅更新效率低下,而且容易因为操作不当导致软件损坏或系统崩溃,存在更新效率低下、安全性差等问题。因此,如何实现上位机客户端软件的高效、安全的自动更新成为了亟待解决的问题。

3、在现有的技术中,虽然有一些关于软件自动更新的解决方案,但这些方案大多针对的是windows系统下的应用程序,对于linux系统工业领域的基于qt框架开发的上位机客户端软件并不适用,工业领域对环境要求更高,其中包含软件版本兼容性,硬件和驱动及维护周期成本不同,对安全要求更高,很多场景都是需要零崩溃。因此,开发一种适用于linux系统工业领域的基于qt框架开发的上位机客户端软件自更新管理方法具有重要的实际意义。


技术实现思路

1、为了解决上述现有技术的问题,本发明提供一种基于qt框架开发的上位机客户端软件自更新管理方法及设备,能够实现自动检测、下载并安装最新版本软件,从而提高了软件维护的效率和便捷性,能确保安全软件的安全性。

2、本发明通过以下技术方案实现:

3、第一方面,本发明提供一种基于qt框架的上位机客户端软件自更新管理方法,包括:

4、s1,当上位机客户端的软件需要更新时,通过自更新检测线程,获取所述软件的最新的版本信息文件,将所述版本信息文件中的版本信息与本地旧版本软件的版本信息进行比较,判断是否需要更新所述软件;如果判断结果为需要更新所述软件,则执行s2,确认操作者身份安全后,执行s3对新版本进行更新,否则根据设置的更新检测时间等待下次更新检测;所述版本信息文件包含新版本软件的版本信息;

5、s2,在执行软件更新之前,通过身份验证和更新授权认证,确保操作者身份安全和操作安全;

6、s3,所述上位机客户端下载软件更新包并对软件更新包进行身份验证、更新授权来源验证、完整性验证和版本兼容性验证,并在验证通过后自动执行安装脚本,对所述软件更新包进行解压和安装;

7、s4,设置软件更新流程管理、定期检查更新机制和回滚机制;

8、s5,在所述软件更新包安装完成后,上位机客户端自动重启并加载所述新版本软件,完成自更新过程;

9、s6,设置断点续传与灰度发布与a/b测试。

10、进一步地,所述当上位机客户端的软件需要更新时,通过自更新检测线程,获取所述软件的最新的版本信息文件,包括:

11、所述上位机客户端的软件在启动时或定时向服务器发送更新请求,并基于所述更新请求接收服务器发送的所述软件的最新的版本信息文件,所述更新请求用于触发服务器向所述上位机客户端发送所述软件的最新的版本信息文件。

12、进一步地,所述上位机客户端通过https协议下载所述新版本软件的软件更新包。

13、进一步地,s2中,需要对操作者进行身份验证与授权,身份验证通过数字签名软件更新包,由可信的开发者或软件提供商进行数字签名,上位机客户端在执行更新时,会验证软件更新包的数字签名,以确保软件更新包未被篡改,采用公钥基础设施系统来管理签名密钥,以确保只有拥有有效私钥的服务商对软件更新包进行签名,并要求用户在进行软件更新时进行多因素认证;

14、s3中,所述更新授权来源验证具体为:对所述软件更新包的数字签名进行验证;所述完整性验证具体为:在操作者身份确认和授权后,使用加密协议传输软件更新包,并采用hpkp技术来防止中间人攻击,软件更新包使用哈希校验对下载的软件更新包进行完整性验证,客户端在下载软件更新包后,将软件更新包的哈希值与服务器提供的哈希值进行对比,以确保软件更新包未被篡改,并将软件更新包的哈希值存储在受信任的服务器上,并在更新时进行比对,同时对软件更新包进行数字签名,上位机客户端在接收到软件更新包后,先验证签名的合法性。

15、进一步地,s4具体为:支持检查更新,上位机客户端定期向服务器查询是否有新的更新版本,采用版本控制和增量更新,设置定期检查更新机制,并支持手动触发更新检查,提供自动更新选项,用户选择让上位机客户端自动下载和安装更新,以确保用户系统始终使用最新版本;提供手动更新选项,以允许用户根据需要进行更新,在敏感生产环境中,管理员控制更新的时间;更新通知与回滚机制,在更新前,上位机客户端向用户通知更新内容和更新大小;用户选择是否立即安装更新或延迟更新;提供回滚机制,如果新版本出现问题或不稳定,上位机客户端自动或手动回滚到先前的稳定版本。

16、进一步地,s5中,通过可信硬件中可信启动确保系统从启动阶段开始加载可信的操作系统和更新程序,以防止恶意软件在更新前加载并篡改更新文件,保证操作系统和更新程序的签名得到验证,只有在可信证书的情况下才能加载。提供代码完整性保护;将更新过程置于一个受控的沙箱环境中,限制更新进程对系统其他部分的影响;提供代码签名保证所有的客户端代码包括更新器本身都经过签名,未经过授权的代码不能在更新过程中运行。

17、进一步地,在s1、s2和s3执行过程中,进行安装环境可信验证、可信安装隔离,并生成可信审计日志与实时告警。

18、第二方面,本发明提供一种基于qt框架的上位机客户端软件自更新管理系统,包括;

19、更新检测模块,用于当上位机客户端的软件需要更新时,通过自更新检测线程,获取所述软件的最新的版本信息文件,将所述版本信息文件中的版本信息与本地旧版本软件的版本信息进行比较,判断是否需要更新所述软件;如果判断结果为需要更新所述软件,确认操作者身份安全后,对新版本进行更新,否则根据设置的更新检测时间等待下次更新检测;所述版本信息文件包含新版本软件的版本信息;

20、身份验证与授权模块,用于在执行软件更新之前,通过身份验证和更新授权认证,确保操作者身份安全和操作安全;

21、可信安装模块,用于下载软件更新包并对软件更新包进行身份验证、更新授权来源验证、完整性验证和版本兼容性验证,并在验证通过后自动执行安装脚本,对所述软件更新包进行解压和安装;在所述软件更新包安装完成后,上位机客户端自动重启并加载所述新版本软件,完成自更新过程。

22、第三方面,本发明提供一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算 机程序时实现如上所述基于qt框架的上位机客户端软件自更新管理方法的步骤。

23、第四方面,本发明提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上所述基于qt框架的上位机客户端软件自更新管理方法的步骤。

24、与现有技术相比,本发明具有如下的有益效果:

25、通过本发明的方法,上位机客户端能够实现自动检测、下载并安装最新版本软件,从而提高了软件维护的效率和便捷性。具体优势包括:自动化程度高:实现了上位机客户端软件的自动检测、下载、安装和重启,无需用户手动操作,大大提高了软件更新的效率。更新准确可靠:通过服务器发布软件更新包的方式,确保了软件更新包的来源可靠,避免了因下载来源不明导致的安全问题。完整性有保障:在解压和安装软件更新包之前,系统可以使用数字签名或哈希算法来验证软件更新包的完整性,确保其未被篡改。兼容性好:本发明基于qt框架开发,适用于linux系统工业领域的上位机客户端软件,具有良好的兼容性和扩展性。提升用户体验:自动更新减少了用户参与更新的步骤,降低了更新过程中的错误率,提升了用户体验。

当前第1页1 2 
当前第1页1 2 
网友询问留言 留言:0条
  • 还没有人留言评论。精彩留言会获得点赞!
1