基于虚拟机的应用软件授权方法技术

技术编号:27742627 阅读:14 留言:0更新日期:2021-03-19 13:36
本发明专利技术实施例涉及虚拟机安全技术领域,公开了一种基于虚拟机的应用软件授权方法,该方法包括:接收目标虚拟机上运行的目标应用软件发送的授权请求,所述授权请求中携带有所述目标应用软件对应的待验证授权证书文件;提取所述待验证授权证书文件中包含的待验证注册码;对所述待验证注册码进行解密,得到待验证硬件码;通过预设程序获取所述目标虚拟机的目标硬件码,将所述待验证硬件码与所述目标硬件码进行匹配,其中,所述预设程序经过了反汇编处理;当所述待验证硬件码与所述目标硬件码匹配时,对所述目标应用软件进行授权。通过上述方式,本发明专利技术实施例实现了虚拟机软件的授权过程的反编译的难度。

【技术实现步骤摘要】
基于虚拟机的应用软件授权方法
本专利技术实施例涉及计算机
,具体涉及一种基于虚拟机的应用软件授权方法、装置、设备以及计算机可读存储介质。
技术介绍
目前在虚拟机上部署应用系统中的软件的需求逐渐增多,为了保证数据传输的安全性,在部署应用软件前需要进行授权文件的验证。现有技术中一般是将虚拟机的硬件信息获取后,由授权文件生成软件生成包含有该硬件信息的授权文件,并将该授权文件保存在应用软件中。应用软件在认证过程中,首先获取应用软件所在虚拟机的硬件信息,并通过比较授权文件中记录的硬件信息与当前获得的硬件信息是否相同,来确定授权文件的认证结果。这样做的问题在于由于现有技术中获取虚拟机的硬件信息以及进行授权文件的验证的代码逻辑很容易被逆向编译,这样就使得应用软件的授权方式容易被破解,破解后授权文件容易被窃取和伪造,从而影响了虚拟机上的应用软件的安全性。
技术实现思路
鉴于上述问题,本专利技术实施例提供了一种基于虚拟机的应用软件授权方法、装置、设备以及计算机可读存储介质,用于解决现有技术中存在的虚拟机的应用软件授权过程易被反编译导致虚拟机使用的安全性不高的问题。根据本专利技术实施例的一个方面,提供了一种基于虚拟机的应用软件授权方法,所述方法包括:接收目标虚拟机上运行的目标应用软件发送的授权请求,所述授权请求中携带有所述目标应用软件对应的待验证授权证书文件;提取所述待验证授权证书文件中包含的待验证注册码;对所述待验证注册码进行解密,得到待验证硬件码;通过预设程序获取所述目标虚拟机的目标硬件码,将所述待验证硬件码与所述目标硬件码进行匹配,其中,所述预设程序经过了反汇编处理;当所述待验证硬件码与所述目标硬件码匹配时,对所述目标应用软件进行授权。在一种可选的方式中,所述方法还包括:接收所述目标应用软件发送的注册请求;通过所述预设程序获取所述目标硬件码;获取所述目标应用软件的鉴权信息;根据所述鉴权信息和所述目标硬件码确定所述目标应用软件的授权注册码;对所述授权注册码进行加密,得到所述目标应用软件的待验证硬件码。在一种可选的方式中,所述方法还包括:获取初始程序,将所述初始程序划分为多个核心程序块;确定各个所述核心程序块的功能属性信息;根据所述功能属性信息分别确定各个所述核心程序块对应的花指令以及插入位点;将所述花指令分别添加到所述插入位点中,得到所述预设程序。在一种可选的方式中,所述方法还包括:获取所述目标应用软件的历史授权信息;根据所述历史授权信息确定所述目标应用软件的最近一次授权时间;获取所述目标虚拟机的系统时间,将所述系统时间与所述最近一次授权时间进行匹配;当所述系统时间与所述最近一次授权时间匹配时,对所述目标应用软件进行授权。在一种可选的方式中,所述方法还包括:对所述目标硬件码进行加密,得到所述目标虚拟机的第一硬件码;对所述第一硬件码进行解密,得到所述目标虚拟机的第二硬件码;根据所述第二硬件码和所述鉴权信息确定所述目标应用软件的目标注册码。在一种可选的方式中,所述方法还包括:根据第一密钥对所述目标硬件码进行加密,得到初始硬件码;对所述初始硬件码进行转换处理,得到所述第一硬件码,所述转换处理包括字符串替换、字符串随机混排。在一种可选的方式中,所述方法还包括:获取目标RSA私钥,根据所述目标RSA私钥对所述待验证注册码进行解密得到预解密硬件码;获取目标AES密钥,根据所述目标AES密钥对所述预解密硬件码进行解密,得到所述待验证硬件码。根据本专利技术实施例的另一方面,提供了一种基于虚拟机的应用软件授权装置,包括:接收模块,用于接收目标虚拟机上运行的目标应用软件发送的授权请求,所述授权请求中携带有所述目标应用软件对应的待验证授权证书文件;提取模块,用于提取所述待验证授权证书文件中包含的待验证注册码;解密模块,用于对所述待验证注册码进行解密,得到待验证硬件码;匹配模块,用于通过预设程序获取所述目标虚拟机的目标硬件码,将所述待验证硬件码与所述目标硬件码进行匹配,其中,所述预设程序经过了反汇编处理;授权模块,用于当所述待验证硬件码与所述目标硬件码匹配时,对所述目标应用软件进行授权。根据本专利技术实施例的另一方面,提供了一种基于虚拟机的应用软件授权设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如前述任意一项实施例所述的基于虚拟机的应用软件授权方法的操作。根据本专利技术实施例的又一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令在基于虚拟机的应用软件授权设备上运行时,使得基于虚拟机的应用软件授权设备执行如前述任意一项实施例所述的基于虚拟机的应用软件授权方法的操作。本专利技术实施例通过接收目标虚拟机上运行的目标应用软件发送的授权请求,授权请求中携带有目标应用软件对应的待验证授权证书文件,首先提取出待验证授权证书文件中包含的待验证注册码。然后对待验证注册码进行解密,得到待验证硬件码。再通过预设的经过反汇编处理的程序获取目标虚拟机的目标硬件码,将待验证硬件码与目标硬件码进行匹配,最后当待验证硬件码与目标硬件码匹配时,对目标应用软件进行授权。区别于现有技术中的直接获取硬件信息进行加密得到授权文件,以及对授权文件进行解密和匹配,整个应用软件的授权和验证过程能够轻易被反编译、导致的软件以及虚拟机的使用不安全的问题,本专利技术通过对整个获取硬件信息进行加密和获取授权文件进行解密校验的代码进行反编译处理,从而提高了虚拟机软件的破解的难度,从而提高了虚拟机应用软件的使用的安全性。上述说明仅是本专利技术实施例技术方案的概述,为了能够更清楚了解本专利技术实施例的技术手段,而可依照说明书的内容予以实施,并且为了让本专利技术实施例的上述和其它目的、特征和优点能够更明显易懂,以下特举本专利技术的具体实施方式。附图说明附图仅用于示出实施方式,而并不认为是对本专利技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:图1示出了本专利技术实施例提供的基于虚拟机的应用软件授权方法的流程示意图;图2示出了本专利技术实施例提供的基于虚拟机的应用软件授权装置的结构示意图;图3示出了本专利技术实施例提供的基于虚拟机的应用软件授权设备的结构示意图。具体实施方式下面将参照附图更详细地描述本专利技术的示例性实施例。虽然附图中显示了本专利技术的示例性实施例,然而应当理解,可以以各种形式实现本专利技术而不应被这里阐述的实施例所限制。图1示出了本专利技术实施例提供的基于虚拟机的应用软件授权方法的流程图,该方法由验证服务器执行。该验证服务器与应用软件运行的虚拟机建本文档来自技高网...

【技术保护点】
1.一种基于虚拟机的应用软件授权方法,其特征在于,所述方法包括:/n接收目标虚拟机上运行的目标应用软件发送的授权请求,所述授权请求中携带有所述目标应用软件对应的待验证授权证书文件;/n提取所述待验证授权证书文件中包含的待验证注册码;/n对所述待验证注册码进行解密,得到待验证硬件码;/n通过预设程序获取所述目标虚拟机的目标硬件码,将所述待验证硬件码与所述目标硬件码进行匹配,其中,所述预设程序经过了反汇编处理;/n当所述待验证硬件码与所述目标硬件码匹配时,对所述目标应用软件进行授权。/n

【技术特征摘要】
1.一种基于虚拟机的应用软件授权方法,其特征在于,所述方法包括:
接收目标虚拟机上运行的目标应用软件发送的授权请求,所述授权请求中携带有所述目标应用软件对应的待验证授权证书文件;
提取所述待验证授权证书文件中包含的待验证注册码;
对所述待验证注册码进行解密,得到待验证硬件码;
通过预设程序获取所述目标虚拟机的目标硬件码,将所述待验证硬件码与所述目标硬件码进行匹配,其中,所述预设程序经过了反汇编处理;
当所述待验证硬件码与所述目标硬件码匹配时,对所述目标应用软件进行授权。


2.根据权利要求1所述的方法,其特征在于,在接收目标虚拟机上运行的目标应用软件的验证请求之前,还进一步包括:
接收所述目标应用软件发送的注册请求;
通过所述预设程序获取所述目标硬件码;
获取所述目标应用软件的鉴权信息;
根据所述鉴权信息和所述目标硬件码确定所述目标应用软件的授权注册码;
对所述授权注册码进行加密,得到所述目标应用软件的待验证硬件码。


3.根据权利要求2所述的方法,其特征在于,在通过预设程序获取所述目标虚拟机的目标硬件码之前,还进一步包括:
获取初始程序,将所述初始程序划分为多个核心程序块;
确定各个所述核心程序块的功能属性信息;
根据所述功能属性信息分别确定各个所述核心程序块对应的花指令以及插入位点;
将所述花指令分别添加到所述插入位点中,得到所述预设程序。


4.根据权利要求1-3任一项所述的方法,其特征在于,在当所述待验证硬件码与所述目标硬件码匹配时,在对所述目标应用软件进行授权之前,还进一步包括:
获取所述目标应用软件的历史授权信息;
根据所述历史授权信息确定所述目标应用软件的最近一次授权时间;
获取所述目标虚拟机的系统时间,将所述系统时间与所述最近一次授权时间进行匹配;
当所述系统时间与所述最近一次授权时间匹配时,对所述目标应用软件进行授权。


5.根据权利要求2所述的方法,其特征在于,所述根据所述鉴权信息和所述目标硬件码确定所述目标应用软件的授权注册码,进一步包括:
对所述目标硬件码进行加密,得到所述目标虚拟机的第一硬件码;

【专利技术属性】
技术研发人员:杨军赵静谧赵伟华
申请(专利权)人:深圳竹云科技有限公司
类型:发明
国别省市:广东;44

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

1