加密及热更新方法、装置制造方法及图纸

技术编号:15910649 阅读:45 留言:0更新日期:2017-08-01 22:26
本发明专利技术属于信息热更新技术领域,提供了一种加密及热更新方法、装置。该方法包括获取lua脚本和脚本属性,对lua脚本进行加密,获取lua加密脚本,将lua加密脚本更新至目标lua脚本节点,脚本属性包括目标lua脚本节点地址,若lua虚拟机处于闲置状态,则销毁lua虚拟机;若lua虚拟机处于运行状态,则定时轮询该lua虚拟机,直至lua虚拟机处于闲置状态,并销毁lua虚拟机,将目标lua脚本节点的lua加密脚本进行解密,获取解密后的lua脚本,创建目标lua虚拟机,加载解密后的lua脚本,并控制目标lua虚拟机对解密后的lua脚本进行解释。本发明专利技术加密及热更新方法、装置,能够保证游戏服务正常运行和更新效率,提高游戏服务的稳定性和安全性。

Encryption and thermal update method and device

The invention belongs to the field of information heat updating technology, and provides an encryption and heat updating method and device. The method includes obtaining Lua scripts and Lua scripts on attributes, encryption, access Lua encryption Lua encryption script, script updates to the target Lua script script properties including the target Lua script node address, if the Lua virtual machine is idle, then the destruction of the Lua virtual machine; if the Lua virtual machine is running, then the timing of the polling of the Lua virtual machine, until the Lua virtual machine is idle, and destroy the Lua virtual machine, the target Lua script node Lua encryption decryption to obtain the decrypted Lua script, the goal of building a Lua virtual machine, loading the decrypted Lua script, and interprets the decrypted Lua script control target Lua virtual machine. The invention relates to an encryption and heat updating method and a device, which can ensure the normal operation and update efficiency of game services, and improve the stability and security of game services.

【技术实现步骤摘要】
加密及热更新方法、装置
本专利技术涉及信息热更新
,具体涉及一种加密及热更新方法、装置。
技术介绍
目前,网络游戏成为人们最受欢迎的娱乐休闲方式。但是,在游戏运行过程中,运行软件偶尔会出现漏洞或缺陷,开发者需要编写运行程序,经过编译后进行测试,并且,在IOS环境下无法实现代码热更新,即在更换程序过程中,多需要中断现有服务器中的服务程序,导致用户端终止使用、被迫下线直至应用程序重新启动,历史数据无法同步更新,用户体验差,且在重启过程中,存在不可预估的不稳定性和不安全性。实现游戏服务的热更新,即在服务器不重新启动的情况下,完成对数据和文件的替换,是开发者和游戏玩家的需求。如何保证游戏服务正常运行和更新效率,提高游戏服务的稳定性和安全性,是本领域技术人员亟需解决的问题。
技术实现思路
针对现有技术中的缺陷,本专利技术提供了一种加密及热更新方法、装置,能够保证游戏服务正常运行和更新效率,提高游戏服务的稳定性和安全性。第一方面,本专利技术提供一种加密及热更新方法,该方法包括:获取目标脚本和待更新节点;根据待更新节点,加载目标脚本。本专利技术提供另一种加密及热更新方法,该方法包括:信息获取步骤:获取lua脚本和脚本属性;脚本加密步骤:对lua脚本进行加密,获取lua加密脚本;脚本节点更新步骤:根据目标lua脚本节点地址,将lua加密脚本更新至目标lua脚本节点,脚本属性包括目标lua脚本节点地址;lua虚拟机销毁步骤:检测已更新目标lua脚本节点对应的lua虚拟机的当前运行状态:若lua虚拟机处于闲置状态,则销毁lua虚拟机;若lua虚拟机处于运行状态,则定时轮询该lua虚拟机,直至lua虚拟机处于闲置状态,并销毁lua虚拟机;脚本解密步骤:将目标lua脚本节点的lua加密脚本进行解密,获取解密后的lua脚本;lua脚本加载步骤:根据解密后的lua脚本,创建目标lua虚拟机;加载解密后的lua脚本,并控制目标lua虚拟机对解密后的lua脚本进行解释。进一步地,对lua脚本进行加密,获取lua加密脚本,具体包括:解析lua脚本,获取该lua脚本的业务逻辑;按照lua脚本的业务逻辑,分解lua脚本,获取脚本分解信息;对脚本分解信息进行加密,获取脚本加密信息;按照业务逻辑,合并脚本加密信息,获取lua加密脚本;将目标lua脚本节点的lua加密脚本进行解密,获取解密后的lua脚本,具体包括:按照业务逻辑,将目标lua脚本节点的lua加密脚本进行分解,获取脚本加密信息;对脚本加密信息进行解密,获取脚本分解信息;按照业务逻辑,将脚本分解信息合成解密后的lua脚本。基于上述任意加密及热更新方法实施例,进一步地,在检测到lua虚拟机处于闲置状态之后,销毁lua虚拟机之前,该方法还包括:保存lua虚拟机的运行数据;在加载解密后的lua脚本,并控制目标lua虚拟机对解密后的lua脚本进行解释之后,该方法还包括:加载运行数据。基于上述任意加密及热更新方法实施例,进一步地,在获取lua脚本和脚本属性之前,该方法还包括:获取系统资源的分布状态;根据系统资源的分布状态,设置lua脚本节点。第二方面,本专利技术提供一种加密及热更新装置,该装置包括信息获取模块、脚本加密模块、脚本节点更新模块、lua虚拟机销毁模块、脚本解密模块和lua脚本加载模块,信息获取模块用于获取lua脚本和脚本属性;脚本加密模块用于对lua脚本进行加密,获取lua加密脚本;脚本节点更新模块用于根据目标lua脚本节点地址,将lua加密脚本更新至目标lua脚本节点,脚本属性包括目标lua脚本节点地址;lua虚拟机销毁模块用于检测已更新目标lua脚本节点对应的lua虚拟机的当前运行状态:若lua虚拟机处于闲置状态,则销毁lua虚拟机;若lua虚拟机处于运行状态,则定时轮询该lua虚拟机,直至lua虚拟机处于闲置状态,并销毁lua虚拟机;脚本解密模块用于将目标lua脚本节点的lua加密脚本进行解密,获取解密后的lua脚本;lua脚本加载模块用于加载解密后的lua脚本,并控制目标lua虚拟机对解密后的lua脚本进行解释。进一步地,脚本加密模块具体包括业务逻辑获取子模块、第一脚本分解子模块、脚本加密子模块和第一脚本合并子模块,业务逻辑获取子模块用于解析lua脚本,获取该lua脚本的业务逻辑;第一脚本分解子模块用于按照lua脚本的业务逻辑,分解lua脚本,获取脚本分解信息;脚本加密子模块用于对脚本分解信息进行加密,获取脚本加密信息;第一脚本合并子模块用于按照业务逻辑,合并脚本加密信息,获取lua加密脚本;脚本解密模块具体包括第二脚本分解子模块、脚本解密子模块和第二脚本合并子模块,第二脚本分解子模块用于按照业务逻辑,将目标lua脚本节点的lua加密脚本进行分解,获取脚本加密信息;脚本解密子模块用于对脚本加密信息进行解密,获取脚本分解信息;第二脚本合并子模块用于按照业务逻辑,将脚本分解信息合成解密后的lua脚本。基于上述任意加密及热更新装置实施例,进一步地,该装置还包括运行数据保存模块:用于保存lua虚拟机的运行数据;并加载运行数据。基于上述任意加密及热更新装置实施例,进一步地,该装置还包括lua脚本节点设置模块:用于获取系统资源的分布状态;根据系统资源的分布状态,设置lua脚本节点。由上述技术方案可知,本实施例提供的加密及热更新方法、装置,能够将lua脚本更新至目标lua脚本节点,根据lua虚拟机的运行状况实现热更新,无需重新启动服务器,避免繁杂、持久的更新过程。同时,该方法采用lua解释型语言脚本,易于实现跨平台推广应用,执行效率高,即使在IOS运行环境中,也可以实现代码热更新,修复游戏服务中的漏洞或缺陷,缩短游戏服务版本升级的进程,提高用户体验。并且,该方法采用lua脚本实现代码热更新,lua脚本体积小、启动速度快,适合嵌入主程序中,且易于被调用、理解和维护,方便游戏服务业务扩展、更新。同时,该方法还能够对lua脚本进行加密,再更新至目标lua脚本节点地址,防止脚本出现错误,影响后续游戏服务运行,有助于增强脚本的安全性和稳定性。因此,本实施例加密及热更新方法、装置,能够保证游戏服务正常运行和更新效率,提高游戏服务的稳定性和安全性。附图说明为了更清楚地说明本专利技术具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍。在所有附图中,类似的元件或部分一般由类似的附图标记标识。附图中,各元件或部分并不一定按照实际的比例绘制。图1示出了本专利技术实施例所提供的一种加密及热更新方法的方法流程图;图2示出了本专利技术实施例所提供的一种加密及热更新装置的结构示意图。具体实施方式下面将结合附图对本专利技术技术方案的实施例进行详细的描述。以下实施例仅用于更加清楚地说明本专利技术的技术方案,因此只是作为示例,而不能以此来限制本专利技术的保护范围。需要注意的是,除非另有说明,本申请使用的技术术语或者科学术语应当为本专利技术所属领域技术人员所理解的通常意义。第一方面,本专利技术实施例所提供的一种加密及热更新方法,该方法包括:获取目标脚本和待更新节点。根据待更新节点,加载目标脚本。本专利技术实施例所提供的另一种加密及热更新方法,结合图1,该方法包括:信息获取步骤S1:获取lua脚本和脚本属性,其中,脚本文档来自技高网...
加密及热更新方法、装置

【技术保护点】
一种加密及热更新方法,其特征在于,包括:获取目标脚本和待更新节点;根据所述待更新节点,加载所述目标脚本。

【技术特征摘要】
1.一种加密及热更新方法,其特征在于,包括:获取目标脚本和待更新节点;根据所述待更新节点,加载所述目标脚本。2.一种加密及热更新方法,其特征在于,包括:信息获取步骤:获取lua脚本和脚本属性;脚本加密步骤:对所述lua脚本进行加密,获取lua加密脚本;脚本节点更新步骤:根据目标lua脚本节点地址,将所述lua加密脚本更新至所述目标lua脚本节点,所述脚本属性包括所述目标lua脚本节点地址;lua虚拟机销毁步骤:检测已更新目标lua脚本节点对应的lua虚拟机的当前运行状态:若所述lua虚拟机处于闲置状态,则销毁所述lua虚拟机;若所述lua虚拟机处于运行状态,则定时轮询该lua虚拟机,直至所述lua虚拟机处于闲置状态,并销毁所述lua虚拟机;脚本解密步骤:将所述目标lua脚本节点的lua加密脚本进行解密,获取解密后的lua脚本;lua脚本加载步骤:根据解密后的lua脚本,创建目标lua虚拟机;加载所述解密后的lua脚本,并控制所述目标lua虚拟机对所述解密后的lua脚本进行解释。3.根据权利要求2所述加密及热更新方法,其特征在于,对所述lua脚本进行加密,获取lua加密脚本,具体包括:解析所述lua脚本,获取该lua脚本的业务逻辑;按照所述lua脚本的业务逻辑,分解所述lua脚本,获取脚本分解信息;对所述脚本分解信息进行加密,获取脚本加密信息;按照所述业务逻辑,合并所述脚本加密信息,获取所述lua加密脚本;将所述目标lua脚本节点的lua加密脚本进行解密,获取解密后的lua脚本,具体包括:按照所述业务逻辑,将所述目标lua脚本节点的lua加密脚本进行分解,获取所述脚本加密信息;对所述脚本加密信息进行解密,获取所述脚本分解信息;按照所述业务逻辑,将所述脚本分解信息合成所述解密后的lua脚本。4.根据权利要求2或3所述加密及热更新方法,其特征在于,在检测到所述lua虚拟机处于闲置状态之后,销毁所述lua虚拟机之前,该方法还包括:保存所述lua虚拟机的运行数据;在加载所述解密后的lua脚本,并控制所述目标lua虚拟机对所述解密后的lua脚本进行解释之后,该方法还包括:加载所述运行数据。5.根据权利要求2所述加密及热更新方法,其特征在于,在获取lua脚...

【专利技术属性】
技术研发人员:张继
申请(专利权)人:长沙趣动文化科技有限公司
类型:发明
国别省市:湖南,43

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

1