CN114896621B - 应用服务的获取方法、加密方法、装置、计算机设备 - Google Patents

应用服务的获取方法、加密方法、装置、计算机设备 Download PDF

Info

Publication number
CN114896621B
CN114896621B CN202210829535.4A CN202210829535A CN114896621B CN 114896621 B CN114896621 B CN 114896621B CN 202210829535 A CN202210829535 A CN 202210829535A CN 114896621 B CN114896621 B CN 114896621B
Authority
CN
China
Prior art keywords
component
license file
application program
signature value
target
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202210829535.4A
Other languages
English (en)
Other versions
CN114896621A (zh
Inventor
杨军
史晓婧
谢坚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Zhuyun Technology Co ltd
Original Assignee
Shenzhen Zhuyun Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Zhuyun Technology Co ltd filed Critical Shenzhen Zhuyun Technology Co ltd
Priority to CN202210829535.4A priority Critical patent/CN114896621B/zh
Publication of CN114896621A publication Critical patent/CN114896621A/zh
Application granted granted Critical
Publication of CN114896621B publication Critical patent/CN114896621B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption

Abstract

本公开涉及一种应用服务的获取方法、加密方法、装置、计算机设备、存储介质和计算机程序产品。所述方法包括:响应于针对应用程序的服务获取请求,获取应用程序的第一许可文件,调用动态链接库组件对第一许可文件进行解密处理,得到应用程序的第二许可文件和应用程序中目标组件的组件签名值,通过动态链接库组件对目标组件进行加密处理,生成目标组件的目标签名值,通过动态链接库组件响应于组件签名值和目标签名值一致的比较结果,对第二许可文件进行校验,响应于第二许可文件校验通过的结果,获取与服务运行数据对应的应用服务。采用本方法能够从组件的维度,基于签名值的比较结果校验应用程序的许可文件,从而提高应用服务获取方法的安全性。

Description

应用服务的获取方法、加密方法、装置、计算机设备
技术领域
本公开涉及计算机应用技术领域,特别是涉及一种应用服务的获取方法、加密方法、装置、计算机设备、存储介质和计算机程序产品。
背景技术
随着计算机应用技术的发展,出现了WEB(World Wide Web,全球广域网)应用程序。用户可以通过浏览器直接访问WEB应用程序,获取WEB应用程序提供的服务。然而,目前一些企业为了保证数据传输的安全性和私密性,其内部网络环境无法连接互联网。因此,用户需要在服务器上安装WEB应用程序来获取WEB应用程序提供的服务。
传统技术中,可以通过服务器响应于应用启动请求,读取应用程序的授权许可文件,对授权许可文件进行校验,当确定授权许可文件有效时,向用户提供应用服务。但是,采用传统技术中的应用服务获取方法时,由于应用程序的编译语言容易被反编译,使得应用服务的获取方法安全性较低。
发明内容
基于此,有必要针对上述技术问题,提供一种安全性高的应用服务的获取方法、加密方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本公开提供了一种应用服务的获取方法。所述方法包括:
响应于针对应用程序的服务获取请求,获取所述应用程序的第一许可文件;
调用所述应用程序的动态链接库组件对所述第一许可文件进行解密处理,得到所述应用程序的第二许可文件和所述应用程序中目标组件的组件签名值,所述第二许可文件是根据所述应用程序中已授权的服务运行数据生成的;
通过所述动态链接库组件对所述目标组件进行加密处理,生成所述目标组件的目标签名值;
通过所述动态链接库组件响应于所述组件签名值和所述目标签名值一致的比较结果,对所述第二许可文件进行校验;
响应于所述第二许可文件校验通过的结果,获取与所述服务运行数据对应的所述应用服务。
在其中一个实施例中,所述目标组件的数量为多个;
在所述通过所述动态链接库组件响应于所述组件签名值和所述目标签名值一致的比较结果,对所述第二许可文件进行校验之前,还包括:
通过所述动态链接库组件对每个所述目标组件对应的所述组件签名值和所述目标签名值进行比较,生成所述组件签名值和所述目标签名值的比较结果。
在其中一个实施例中,所述目标组件包括程序启动组件、加密接口组件和接口解密组件中的至少两个。
在其中一个实施例中,在所述目标组件包括所述程序启动组件的情况下,所述响应于针对应用程序的服务获取请求,获取所述应用程序的第一许可文件,包括:
响应于针对所述应用程序的所述服务获取请求,运行所述程序启动组件;
通过所述程序启动组件获取所述应用程序的所述第一许可文件。
在其中一个实施例中,在所述目标组件包括所述加密接口组件和所述接口解密组件的情况下,所述通过所述动态链接库组件响应于所述组件签名值和所述目标签名值一致的比较结果,对所述第二许可文件进行校验,包括:
通过所述动态链接库组件响应于所述组件签名值和所述目标签名值一致的比较结果,从解密后的所述第一许可文件中确定出预设密钥;
通过所述接口解密组件采用所述预设密钥对所述加密接口组件进行解密处理,得到所述应用程序的校验接口组件;
通过所述校验接口组件调用所述动态链接库组件对所述第二许可文件进行校验。
在其中一个实施例中,所述通过所述校验接口组件调用所述动态链接库组件对所述第二许可文件进行校验,包括:
将所述校验接口组件载入虚拟机中,所述虚拟机用于提供所述应用程序的运行环境,以在所述运行环境下运行所述应用程序,获取所述应用服务;
在所述虚拟机中,通过所述校验接口组件调用所述动态链接库组件对所述第二许可文件进行校验。
第二方面,本公开提供了一种应用服务的加密方法。所述方法包括:
获取应用程序的目标组件和所述应用程序的第二许可文件,所述第二许可文件是根据所述应用程序中已授权的服务运行数据生成的;
对所述目标组件进行加密处理,生成所述目标组件的组件签名值;
对所述第二许可文件和所述目标组件的所述组件签名值进行加密处理,生成第一许可文件,将所述应用程序中存储的所述第二许可文件替换为所述第一许可文件;
采用所述第一许可文件对与所述服务运行数据对应的应用服务进行加密,得到已加密的所述应用服务。
在其中一个实施例中,所述方法还包括:
采用预设密钥对所述应用程序的校验接口组件进行加密,得到加密接口组件,将所述应用程序中部署的所述校验接口组件替换为所述加密接口组件,以加密所述应用服务的校验接口。
在其中一个实施例中,所述对所述第二许可文件和所述目标组件的所述组件签名值进行加密处理,生成第一许可文件,包括:
按照预设规则将所述组件签名值和所述预设密钥添加至所述第二许可文件中,得到添加后的所述第二许可文件;
采用加密公钥对添加后的所述第二许可文件进行加密处理,生成所述第一许可文件。
第三方面,本公开还提供了一种应用服务的获取装置。所述装置包括:
第一文件获取模块,用于响应于针对应用程序的服务获取请求,获取所述应用程序的第一许可文件;
文件解密模块,用于调用所述应用程序的动态链接库组件对所述第一许可文件进行解密处理,得到所述应用程序的第二许可文件和所述应用程序中目标组件的组件签名值,所述第二许可文件是根据所述应用程序中已授权的服务运行数据生成的;
第一组件加密模块,用于通过所述动态链接库组件对所述目标组件进行加密处理,生成所述目标组件的目标签名值;
许可校验模块,用于通过所述动态链接库组件响应于所述组件签名值和所述目标签名值一致的比较结果,对所述第二许可文件进行校验;
服务获取模块,用于响应于所述第二许可文件校验通过的结果,获取与所述服务运行数据对应的所述应用服务。
第四方面,本公开还提供了一种应用服务的加密装置。所述装置包括:
第二文件获取模块,用于获取应用程序的目标组件和所述应用程序的第二许可文件,所述第二许可文件是根据所述应用程序中已授权的服务运行数据生成的;
第二组件加密模块,用于对所述目标组件进行加密处理,生成所述目标组件的组件签名值;
文件加密模块,用于对所述第二许可文件和所述目标组件的所述组件签名值进行加密处理,生成第一许可文件,将所述应用程序中存储的所述第二许可文件替换为所述第一许可文件;
服务加密模块,用于采用所述第一许可文件对与所述服务运行数据对应的应用服务进行加密,得到已加密的所述应用服务。
第五方面,本公开还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述第一方面任一项实施例所述的应用服务的获取方法,或者,实现上述第二方面任一项实施例所述的应用服务的加密方法。
第六方面,本公开还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面任一项实施例所述的应用服务的获取方法,或者,实现上述第二方面任一项实施例所述的应用服务的加密方法。
第七方面,本公开还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述第一方面任一项实施例所述的应用服务的获取方法,或者,实现上述第二方面任一项实施例所述的应用服务的加密方法。
上述应用服务的获取方法、加密方法、装置、计算机设备、存储介质和计算机程序产品,通过响应于针对应用程序的服务获取请求,获取应用程序的第一许可文件,调用应用程序的动态链接库组件对第一许可文件进行解密处理,得到应用程序的第二许可文件和应用程序中目标组件的组件签名值,第二许可文件是根据应用程序中已授权的服务运行数据生成的,通过动态链接库组件对目标组件进行加密处理,生成目标组件的目标签名值,通过动态链接库组件响应于组件签名值和目标签名值一致的比较结果,对第二许可文件进行校验,响应于第二许可文件校验通过的结果,获取与服务运行数据对应的应用服务,能够从应用程序组件的维度,对应用程序运行环境的安全性进行校验,避免非法修改应用程序绕过许可校验操作,基于目标组件当前生成的目标签名值和从第一许可文件中解密得到的组件签名值的比较结果,对应用程序的第二许可文件进行校验,以提高许可文件校验操作的安全性,从而提高应用服务的获取方法的安全性。
附图说明
图1为一个实施例中应用服务的获取方法的流程示意图;
图2为一个实施例中比较结果的生成步骤的流程示意图;
图3为一个实施例中第二许可文件校验步骤的流程示意图;
图4为另一个实施例中应用服务的获取方法的流程示意图;
图5为一个实施例中应用服务的加密方法的流程示意图;
图6为另一个实施例中应用服务的加密方法的流程示意图;
图7为一个实施例中应用服务的获取装置的结构框图;
图8为一个实施例中应用服务的加密装置的结构框图;
图9为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本公开的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本公开进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本公开,并不用于限定本公开。
在一个实施例中,如图1所示,提供了一种应用服务的获取方法,本实施例以该方法应用于用户方运行应用程序的服务器进行举例说明,可以理解的是,该方法也可以应用于终端,还可以应用于包括终端和服务器的系统,并通过终端和服务器的交互实现。其中,终端可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器可以用独立的服务器或者是多个服务器组成的服务器集群。
本实施例中,该方法包括以下步骤:
步骤S102,响应于针对应用程序的服务获取请求,获取应用程序的第一许可文件。
其中,服务获取请求可以用于表征针对应用程序的使用请求。一个示例中,服务获取请求可以但不仅限于包括程序登录请求、程序运行请求、数据获取请求等多种请求中的任一种或多种。
第一许可文件可以用于表征应用程序对于应用服务获取操作的授权许可。一个示例中,第一许可文件可以是在应用程序的出厂配置阶段,对应用程序已有的授权许可文件以及组件的签名值进行加密生成的。
具体地,服务器中部署有应用程序,应用程序中存储有第一许可文件。服务器可以响应于针对应用程序的服务获取请求,读取应用程序的第一许可文件。其中,服务获取请求可以是用户按需触发的,例如用户点击相应的应用程序图标触发服务获取请求;或者,也可以是服务器自动触发的,例如服务器在启动应用程序时自动触发服务获取请求。
步骤S104,调用应用程序的动态链接库组件对第一许可文件进行解密处理,得到第二许可文件和目标组件的组件签名值。
其中,动态链接库组件可以用于表征应用程序中模块化的共享函数库组件。
第二许可文件可以是根据应用程序中已授权的服务运行数据生成的。例如,第二许可文件可以是在应用程序出厂配置阶段生成的应用服务的授权许可文件。一个示例中,服务运行数据可以但不仅限于包括服务器机器码、授权日期、用户数、组织数等数据中的任一种或多种。
目标组件可以用于表征应用程序中已部署的组件,可以用于处理针对应用程序的服务获取请求,获取应用程序的应用服务。目标组件可以但不仅限于包括应用程序的程序启动组件,许可文件校验组件,运行环境安全校验组件,接口组件等多种组件中的任一种或多种。
具体地,动态链接库组件中可以存储有第一许可文件的解密逻辑。服务器可以调用应用程序的动态链接库组件,采用第一许可文件的解密逻辑对第一许可文件进行解密,得到解密处理后第一许可文件对应的明文文件。从第一许可文件对应的明文文件中确定出应用程序的第二许可文件和应用程序中目标组件的组件签名值。
一个示例中,第一许可文件可以是采用密钥对第二许可文件和组件签名值进行加密得到的。动态链接库组件可以采用密钥对第一许可文件进行解密处理。另一个示例中,第一许可文件可以是按照预设规则对第二许可文件和组件签名值进行重新排列后生成的。动态链接库组件可以按照预设规则对第一许可文件进行解密处理。
步骤S106,通过动态链接库组件对目标组件进行加密处理,生成目标组件的目标签名值。
其中,目标签名值的生成方式可以与组件签名值的生成方式一致。一个示例中,目标签名值可以是根据哈希算法加密生成的。另一个示例中,目标签名值可以是根据椭圆曲线算法加密生成的。签名值的生成方式在此不做具体限定。
具体地,动态链接库组件中可以存储有签名值生成逻辑。服务器可以调用应用程序的动态链接库组件,采用签名值生成逻辑对目标组件进行加密处理,生成目标组件的目标签名值。
步骤S108,通过动态链接库组件响应于组件签名值和目标签名值一致的比较结果,对第二许可文件进行校验。
具体地,服务器可以通过动态链接库组件对目标组件的组件签名值和目标签名值进行比较,生成组件签名值和目标签名值的比较结果。通过动态链接库组件响应于组件签名值和目标签名值一致的比较结果,对第二许可文件进行校验,生成第二许可文件的校验结果。一个示例中,动态链接库组件可以获取当前服务器的机器码,将当前服务器的机器码与第二许可文件中已授权的机器码进行比较,根据机器码的比较结果生成第二许可文件的校验结果。另一个示例中,动态链接库组件可以获取当前时间,将当前时间与第二许可文件中已授权的授权时间进行比较,根据时间的比较结果生成第二许可文件的校验结果。另一个示例中,服务器通过动态链接库组件响应于组件签名值和目标签名值不一致的比较结果,可以确定第一许可文件被篡改,直接结束应用程序的进程。
步骤S110,响应于第二许可文件校验通过的结果,获取应用服务。
具体地,服务器可以通过应用程序响应于第二许可文件校验通过的结果,对应用程序的服务获取请求进行处理。根据第二许可文件中已授权的服务运行数据,获取与服务运行数据对应的应用服务。一个示例中,服务器响应于第二许可文件校验不通过的判断结果,可以结束应用程序的进程,返回许可校验未通过的提示信息。
上述应用服务的获取方法,通过响应于针对应用程序的服务获取请求,获取应用程序的第一许可文件,调用应用程序的动态链接库组件对第一许可文件进行解密处理,得到应用程序的第二许可文件和应用程序中目标组件的组件签名值,第二许可文件是根据应用程序中已授权的服务运行数据生成的,通过动态链接库组件对目标组件进行加密处理,生成目标组件的目标签名值,通过动态链接库组件响应于组件签名值和目标签名值一致的比较结果,对第二许可文件进行校验,响应于第二许可文件校验通过的结果,获取与服务运行数据对应的应用服务,能够从应用程序组件的维度,对应用程序运行环境的安全性进行校验,避免非法修改应用程序绕过许可校验操作,基于目标组件当前生成的目标签名值和从第一许可文件中解密得到的组件签名值的比较结果,对应用程序的第二许可文件进行校验,以提高许可文件校验操作的安全性,从而提高应用服务的获取方法的安全性。
在一个实施例中,目标组件的数量可以为多个。如图2所示,在步骤S106,通过动态链接库组件响应于组件签名值和目标签名值一致的比较结果,对第二许可文件进行校验之前,包括:
步骤S202,调用动态链接库组件对第一许可文件进行解密处理,确定出第二许可文件和每个目标组件的组件签名值。
具体地,服务器中部署的应用程序可以包括多个目标组件,应用程序的动态链接库组件中可以存储有第一许可文件的解密逻辑。调用动态链接库组件采用解密逻辑对第一许可文件进行解密处理,得到解密后的第一许可文件。通过动态链接库组件按照预设规则从解密后的第一许可文件中确定出第二许可文件和每个目标组件的组件签名值。
一个示例中,动态链接库组件可以根据预设规则确定第二许可文件和组件签名值的所处位置,进而从解密后的第一许可文件中相应的位置处获取第二许可文件和组件签名值。另一个示例中,动态链接库组件可以根据预设规则确定第二许可文件和组件签名值的数据格式,进而从解密后的第一许可文件中确定出与数据格式相匹配的第二许可文件和组件签名值。
步骤S204,分别对每个目标组件进行加密处理,生成每个目标组件的目标签名值。
步骤S206,通过动态链接库组件对每个目标组件对应的组件签名值和目标签名值进行比较,生成组件签名值和目标签名值的比较结果。
具体地,服务器可以在通过动态链接库组件对第一许可文件进行解密处理的同时,通过动态链接库组件调用签名值函数,采用签名值函数分别对每个目标组件进行加密处理,生成每个目标组件的目标签名值。对每个目标组件对应的组件签名值和目标签名值进行比较,生成每个目标组件对应的签名值比较结果。根据每个目标组件对应的签名值比较结果,生成组件签名值和目标签名值的比较结果。
一个示例中,动态链接库组件可以在每个目标组件对应的签名值比较结果都为一致的情况下,生成组件签名值和目标签名值一致的比较结果。另一个示例中,动态链接库组件可以在至少存在一个目标组件对应的签名值比较结果为不一致的情况下,生成组件签名值和目标签名值不一致的比较结果。
本实施例中,通过解密获取多个目标组件的组件签名值,同时,加密每个目标组件,生成每个目标组件的目标签名值,基于每个目标组件对应的签名值比较结果,生成组件签名值和目标签名值的比较结果,能够基于每个目标组件的签名值比较结果,提高组件签名值和目标签名值的比较结果的准确率,从而提高在目标组件的签名值一致的情况下,第二许可文件校验环境的安全性。
在一个实施例中,目标组件可以包括程序启动组件、加密接口组件和接口解密组件中的至少两个。
其中,程序启动组件可以用于启动应用程序,以获取应用程序的应用服务。
加密接口组件可以用于表征已加密的校验接口组件,校验接口组件可以用于对应用程序的授权许可文件进行校验。
接口解密组件中可以存储有加密接口组件的解密逻辑,以在运行阶段,利用解密逻辑对加密接口组件进行解密处理,获取解密后的接口组件。
本实施例中,通过将应用程序中处理服务获取请求的关键性组件——程序启动组件、加密接口组件和接口解密组件中的至少两个作为目标组件,不仅能够提高处理服务获取请求的安全性,还能够降低动态链接库组件的数据处理工作量,以提高组件签名值和目标签名值的比较结果的生成效率。
在一个实施例中,在目标组件包括程序启动组件的情况下,步骤S102,响应于针对应用程序的服务获取请求,获取应用程序的第一许可文件,包括:响应于针对应用程序的服务获取请求,运行程序启动组件,通过程序启动组件获取应用程序的第一许可文件。
具体地,服务器可以通过响应于针对应用程序的服务获取请求,运行程序启动组件,通过程序启动组件从应用程序存储的文件中,获取应用程序的第一许可文件,调用动态链接库组件对第一许可文件进行处理。
一个示例中,服务器可以通过程序启动组件在第二许可文件校验通过的情况下,获取应用程序运行所需的运行数据,对运行数据进行初始化处理,启动应用程序的应用服务组件,获取并运行应用程序的应用服务。
本实施例中,通过响应于针对应用程序的服务获取请求,运行程序启动组件获取第一许可文件,能够提高第一许可文件的获取效率,从而提高服务获取请求的处理效率。
在一个实施例中,如图3所示,在目标组件包括加密接口组件和接口解密组件的情况下,步骤S106,通过动态链接库组件响应于组件签名值和目标签名值一致的比较结果,对第二许可文件进行校验,包括:
步骤S302,通过动态链接库组件响应于组件签名值和目标签名值一致的比较结果,从解密后的第一许可文件中确定出预设密钥。
步骤S304,通过接口解密组件采用预设密钥对加密接口组件进行解密处理,得到应用程序的校验接口组件。
步骤S306,通过校验接口组件调用动态链接库组件对第二许可文件进行校验。
其中,预设密钥可以用于表征在应用程序的出厂配置阶段,对校验接口组件进行加密处理的密钥。一个示例中,预设密钥可以是根据对称加密算法生成的,或者,预设密钥可以是根据非对称加密算法生成的,在此不做具体限定。
具体地,服务器可以通过动态链接库组件响应于组件签名值和目标签名值一致的比较结果,按照预设规则从解密后的第一许可文件中确定出预设密钥,将预设密钥发送至接口解密组件。通过接口解密组件采用预设密钥对加密接口组件进行解密处理,得到应用程序的校验接口组件。通过校验接口组件调用动态链接库组件对第二许可文件进行校验。
一个示例中,服务器可以通过对第二许可文件中的目标服务器机器码、许可日期、应用程序的基础数据(例如用户数、组织数等)等许可数据进行校验,将许可数据与服务器当前的数据参数进行匹配,生成第二许可文件的校验结果。
本实施例中,通过接口解密组件采用预设密钥对加密接口组件进行解密处理,得到应用程序的校验接口组件,通过校验接口组件调用动态链接库组件对第二许可文件进行校验,能够提高第二许可文件校验的效率以及准确率。
在一个实施例中,步骤S306,通过校验接口组件调用动态链接库组件对第二许可文件进行校验,包括:将校验接口组件载入虚拟机中,在虚拟机中,通过校验接口组件调用动态链接库组件对第二许可文件进行校验。
其中,虚拟机可以用于提供应用程序的运行环境,以在运行环境下运行应用程序,获取应用程序的应用服务。
具体地,服务器中可以部署有虚拟机。在得到校验接口组件之后,可以将校验接口组件载入虚拟机中,在虚拟机提供的运行环境下,通过校验接口组件调用动态链接库组件对第二许可文件进行校验。
一个示例中,在应用程序为JAVA WEB应用程序(一种基于编程语言JAVA开发的浏览器/服务器架构的应用程序)的情况下,可以采用JAVA虚拟机。由于JAVA语言在不同平台上运行时无需重新编译,使得JAVA WEB应用程序只需生成在JAVA虚拟机上运行的目标代码,即可在多种平台上运行,以提高应用程序的运行效率。另一个示例中,在应用程序为linux应用程序(一种基于操作系统linux的运行环境开发的应用程序)的情况下,可以采用linux虚拟机。
本实施例中,通过将校验接口组件载入虚拟机中,在虚拟机中,通过校验接口组件调用动态链接库组件对第二许可文件进行校验,能够利用虚拟机实现动态链接库组件的调用操作,以提高调用动态链接库组件的效率,并且还能够为应用程序提供安全性高的授权许可环境。
在一个实施例中,如图4所示,提供了一种应用服务的获取方法,包括:
步骤S402,响应于针对应用程序的服务获取请求,运行程序启动组件,通过程序启动组件获取应用程序的第一许可文件。
具体地,服务器可以响应于针对应用程序的服务获取请求,启动应用程序,运行应用程序的程序启动组件,通过程序启动组件获取应用程序的第一许可文件,调用动态链接库组件对第一许可文件进行处理。
步骤S404,调用动态链接库组件对第一许可文件进行解密处理,获取第二许可文件和组件签名值,同时,生成目标签名值。
具体地,应用程序中的动态链接库组件可以存储有非对称加密私钥。服务器可以通过动态链接库组件采用非对称加密私钥对第一许可文件进行解密处理,获取应用程序的第二许可文件和程序启动组件、加密接口组件和接口解密组件的组件签名值。同时,通过动态链接库组件采用哈希算法对程序启动组件、加密接口组件和接口解密组件进行加密处理,生成程序启动组件、加密接口组件和接口解密组件的目标签名值。
步骤S406,通过动态链接库组件响应于组件签名值和目标签名值一致的比较结果,从解密后的第一许可文件中确定出预设密钥。
具体地,服务器可以通过动态链接库组件分别对程序启动组件、加密接口组件和接口解密组件对应的组件签名值和目标签名值进行比较,根据程序启动组件、加密接口组件和接口解密组件对应的组件签名值和目标签名值的比较结果,生成组件签名值和目标签名值的比较结果。通过动态链接库组件响应于组件签名值和目标签名值一致的比较结果,从解密后的第一许可文件中确定出预设密钥,将预设密钥发送至接口解密组件。
步骤S408,通过接口解密组件采用预设密钥对加密接口组件进行解密处理,将得到的校验接口组件载入虚拟机中,调用动态链接库组件对第二许可文件进行校验。
步骤S410,通过程序启动组件在第二许可文件校验通过的情况下,启动应用程序的应用服务组件,获取并运行应用程序的应用服务。
具体地,接口解密组件中可以存储有分组对称加密算法的解密逻辑。服务器可以通过接口解密组件采用预设密钥,按照分组对称加密算法的解密逻辑对加密接口组件进行解密处理,得到校验接口组件,将校验接口组件载入虚拟机中。在虚拟机中,通过校验接口组件调用动态链接库组件对第二许可文件进行校验,生成第二许可文件的校验结果。通过程序启动组件在第二许可文件校验通过的情况下,获取第二许可文件中已授权的服务运行数据。对服务运行数据进行初始化处理,利用初始化处理后的服务运行数据启动应用程序的应用服务组件,获取并运行应用程序的应用服务。第二许可文件校验结果生成的具体操作可以参照上述实施例中提供的第二许可文件校验结果的生成方法实现,在此不作具体阐述。
本实施例中,通过基于应用程序中处理服务获取请求的关键性组件——程序启动组件、加密接口组件和接口解密组件的组件签名值和目标签名值的比较结果,对第二许可文件进行校验,能够从程序启动组件、加密接口组件和接口解密组件的维度,对第一许可文件的真实性进行校验,从而提高应用服务的获取方法的安全性,通过从解密后的第一许可文件中获取预设密钥,采用预设密钥对加密接口组件进行解密处理,获取校验接口组件,在虚拟机中,通过校验接口组件调用动态链接库组件对第二许可文件进行校验,在第二许可文件校验通过的情况下,获取应用服务,能够提高第二许可文件校验环境的安全性,进一步提高应用服务的获取方法的安全性。
在一个实施例中,如图5所示,提供了一种应用服务的加密方法,该方法可以应用于程序供应方生成应用程序的服务器中,在应用程序的出厂配置阶段,优选在应用程序的授权许可文件生成之后,并且在应用程序封装之前,执行该方法对应的操作,对应用服务进行加密。该方法包括:
步骤S502,获取应用程序的目标组件和第二许可文件。
步骤S504,对目标组件进行加密处理,生成目标组件的组件签名值。
步骤S506,对第二许可文件和组件签名值进行加密处理,生成第一许可文件,将应用程序中存储的第二许可文件替换为第一许可文件。
步骤S508,采用第一许可文件对应用服务进行加密,得到已加密的应用服务。
其中,目标组件可以用于处理针对应用程序的服务获取请求,获取应用程序的应用服务。
第二许可文件可以是根据应用程序中已授权的服务运行数据生成的。一个示例中,第二许可文件可以是在应用程序出厂配置阶段生成的授权许可文件。
具体地,服务器可以从应用程序部署的组件中,确定出处理服务获取请求的目标组件。从应用程序存储的文件中,确定出与应用服务的授权许可对应的第二许可文件。采用数据加密算法对目标组件进行加密处理,生成目标组件的组件签名值。对第二许可文件和组件签名值进行加密处理,生成第一许可文件。将第一许可文件存储至应用程序中,替换应用程序中原有的第二许可文件。采用第一许可文件对与第二许可文件中的服务运行数据对应的应用服务进行加密,得到已加密的应用服务。
一个示例中,服务器可以将组件签名值添加至第二许可文件中的预设位置处,对添加后的第二许可文件进行加密处理,生成第一许可文件。另一个示例中,服务器可以采用公钥对组件签名值进行加密处理,然后采用与公钥对应的私钥对第二许可文件进行加密处理。对公钥、私钥以及加密处理后的组件签名值和第二许可文件进行组合,生成第一许可文件。
上述应用服务的加密方法,通过对应用程序中处理服务获取请求的目标组件进行加密处理,生成目标组件的组件签名值,对与应用服务的授权许可对应的第二许可文件和目标组件的组件签名值进行加密,生成第一许可文件,利用第一许可文件对应用服务进行加密,能够避免目标组件被篡改,提高第一许可文件的安全性,从而提高应用服务的加密方法的安全性。
在一个实施例中,应用服务的获取方法,还包括:采用预设密钥对应用程序的校验接口组件进行加密,得到加密接口组件,获取与加密接口组件对应的接口解密组件,将接口解密组件部署至应用程序。
具体地,服务器可以存储有分组对称加密算法生成的预设密钥。可以采用预设密钥对应用程序的校验接口组件进行加密,得到加密接口组件。采用加密接口组件替换应用程序中已部署的校验接口组件,以对应用服务的校验接口进行加密。获取与加密接口组件对应的接口解密组件,将接口解密组件部署至应用程序中,以在应用程序的应用服务获取阶段,对加密接口组件进行解密处理。
本实施例中,通过对校验接口组件进行加密,采用加密后得到的加密接口组件替换应用程序中已部署的未加密的校验接口组件,并且将加密接口组件对应的接口解密组件部署至应用程序中,能够提高校验接口的安全性,从而提高应用服务的加密方法的安全性。此外,由于采用本实施例中提供的方法,基于已部署的校验接口组件进行加密,能够降低应用服务的加密方法的工作量,以降低加密方法的开发成本,提高应用服务的加密效率。
在一个实施例中,步骤S506,对第二许可文件和组件签名值进行加密处理,生成第一许可文件,包括:按照预设规则将组件签名值和预设密钥添加至第二许可文件中,得到添加后的第二许可文件,采用加密公钥对添加后的第二许可文件进行加密处理,生成第一许可文件。
其中,预设规则可以是将组件签名值和预设密钥添加至第二许可文件中的预设位置处,或者,也可以是对组件签名值和预设密钥进行组合,将组合后得到的数据添加至第二许可文件,在此不做具体限定。
预设密钥可以但不仅限于根据SM4算法(一种符合国家密码标准的分组对称加密算法)、DES算法(一种符合数据加密标准的加密算法)、RSA算法(一种支持变长密钥的公共密钥算法)等多种加密算法中的任一种或多种生成的,在此不做具体限定。
加密公钥可以但不仅限于根据SM2算法(一种符合国家密码标准的非对称加密公钥密码算法)、RSA算法、椭圆曲线加密算法等多种非对称加密算法中的任一种或多种生成的,在此不做具体限定。
本实施例中,通过按照预设规则将组件签名值和预设密钥添加至第二许可文件中,得到添加后的第二许可文件,采用加密公钥对添加后的第二许可文件进行加密处理,生成第一许可文件,能够提高第一许可文件的破译难度,从而提高后续利用第一许可文件加密应用服务的安全性。
在一个实施例中,如图6所示,提供了一种应用服务的加密方法,包括:
步骤S602,获取应用程序的程序启动组件、校验接口组件和第二许可文件。
步骤S604,采用预设密钥对校验接口组件进行加密,得到加密接口组件,将应用程序中部署的校验接口组件替换为加密接口组件。
步骤S606,获取与加密接口组件对应的接口解密组件,将接口解密组件部署至应用程序。
步骤S608,采用哈希算法对程序启动组件、加密接口组件和接口解密组进行加密,生成组件签名值。
步骤S610,按照预设规则将组件签名值和预设密钥添加至第二许可文件中,采用加密公钥对添加后的第二许可文件进行加密,生成第一许可文件。
具体地,服务器中存储的预设密钥可以是分组对称加密密钥,加密公钥可以是非对称加密公钥。可以获取应用程序的程序启动组件、校验接口组件和第二许可文件。采用分组对称加密密钥对校验接口组件进行加密,得到加密接口组件。采用加密接口组件替换应用程序中已部署的校验接口组件,以对校验接口组件进行加密。获取与加密接口组件对应的接口解密组件,将接口解密组件部署至应用程序中,以在应用程序的应用服务获取阶段,对加密接口组件进行解密处理。采用哈希算法分别对程序启动组件、加密接口组件和接口解密组进行加密,生成程序启动组件、加密接口组件和接口解密组的组件签名值。按照预设规则将组件签名值和分组对称加密密钥添加至第二许可文件中,采用非对称加密公钥对添加后的第二许可文件进行加密,生成第一许可文件。将应用程序中存储的第二许可文件替换为第一许可文件,采用第一许可文件对应用服务进行加密,得到已加密的应用服务。并且将与非对称加密公钥对应的非对称加密私钥存储至应用程序的动态链接库组件,以在应用服务获取阶段,调用动态链接库组件对第一许可文件进行解密处理。
本实施例中,通过采用分组对称加密密钥对校验接口组件进行加密,将应用程序中部署的校验接口组件替换为加密处理后的加密接口组件,能够提高加密接口组件的安全性,通过采用哈希算法对程序启动组件、加密接口组件和接口解密组进行加密,生成组件签名值,能够提高组件签名值的生成效率,通过按照预设规则将组件签名值和分组对称加密密钥添加至第二许可文件中,采用非对称加密公钥对添加后的第二许可文件进行加密,生成第一许可文件,采用第一许可文件对应用服务进行加密,得到已加密的应用服务,能够提高第一许可文件的破译难度,避免应用程序核心代码被反编译,从而提高应用服务的加密方法的安全性。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其他的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本公开实施例还提供了一种用于实现上述所涉及的应用服务的获取方法的应用服务的获取装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个应用服务的获取装置实施例中的具体限定可以参见上文中对于应用服务的获取方法的限定,在此不再赘述。
在一个实施例中,如图7所示,提供了一种应用服务的获取装置700,包括:第一文件获取模块702、文件解密模块704,第一组件加密模块706、许可校验模块708和服务获取模块710,其中:
第一文件获取模块702,用于响应于针对应用程序的服务获取请求,获取应用程序的第一许可文件。
文件解密模块704,用于调用应用程序的动态链接库组件对第一许可文件进行解密处理,得到应用程序的第二许可文件和应用程序中目标组件的组件签名值,第二许可文件是根据应用程序中已授权的服务运行数据生成的。
第一组件加密模块706,用于通过动态链接库组件对目标组件进行加密处理,生成目标组件的目标签名值。
许可校验模块708,用于通过动态链接库组件响应于组件签名值和目标签名值一致的比较结果,对第二许可文件进行校验。
服务获取模块710,用于响应于第二许可文件校验通过的结果,获取与服务运行数据对应的应用服务。
在一个实施例中,目标组件的数量为多个。应用服务的获取装置700还包括:比较结果生成模块,用于通过动态链接库组件对每个目标组件对应的组件签名值和目标签名值进行比较,生成组件签名值和目标签名值的比较结果。
在一个实施例中,目标组件包括程序启动组件、加密接口组件和接口解密组件中的至少两个。
在一个实施例中,在目标组件包括程序启动组件的情况下,第一文件获取模块702,还用于:响应于针对应用程序的服务获取请求,运行程序启动组件,通过程序启动组件获取应用程序的第一许可文件。
在一个实施例中,在目标组件包括加密接口组件和接口解密组件的情况下,许可校验模块708,还包括:密钥获取单元,用于通过动态链接库组件响应于组件签名值和目标签名值一致的比较结果,从解密后的第一许可文件中确定出预设密钥;组件解密单元,用于通过接口解密组件采用预设密钥对加密接口组件进行解密处理,得到应用程序的校验接口组件;校验单元,用于通过校验接口组件调用动态链接库组件对第二许可文件进行校验。
在一个实施例中,校验单元,还用于:将校验接口组件载入虚拟机中,虚拟机用于提供应用程序的运行环境,以在运行环境下运行应用程序,获取应用服务,在虚拟机中,通过校验接口组件调用动态链接库组件对第二许可文件进行校验。
基于同样的发明构思,本公开实施例还提供了一种用于实现上述所涉及的应用服务的加密方法的应用服务的加密装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个应用服务的加密装置实施例中的具体限定可以参见上文中对于应用服务的加密方法的限定,在此不再赘述。
在一个实施例中,如图8所示,提供了一种应用服务的加密装置800,包括:第二文件获取模块802、第二组件加密模块804、文件加密模块806和服务加密模块808,其中:
第二文件获取模块802,用于获取应用程序的目标组件和应用程序的第二许可文件,第二许可文件是根据应用程序中已授权的服务运行数据生成的。
第二组件加密模块804,用于对目标组件进行加密处理,生成目标组件的组件签名值。
文件加密模块806,用于对第二许可文件和目标组件的组件签名值进行加密处理,生成第一许可文件,将应用程序中存储的第二许可文件替换为第一许可文件。
服务加密模块808,用于采用第一许可文件对与服务运行数据对应的应用服务进行加密,得到已加密的应用服务。
在一个实施例中,应用服务的加密装置800还包括:接口组件加密模块,用于采用预设密钥对应用程序的校验接口组件进行加密,得到加密接口组件,将应用程序中部署的校验接口组件替换为加密接口组件;解密组件部署模块,用于获取与加密接口组件对应的接口解密组件,将接口解密组件部署至应用程序,以在应用程序的应用服务获取阶段,对加密接口组件进行解密处理。
在一个实施例中,文件加密模块806,还用于:按照预设规则将组件签名值和预设密钥添加至第二许可文件中,得到添加后的第二许可文件,采用加密公钥对添加后的第二许可文件进行加密处理,生成第一许可文件。
上述应用服务的获取装置和/或应用服务的加密装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图9所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储预设密钥。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种应用服务的获取方法和/或应用服务的加密方法。
本领域技术人员可以理解,图9中示出的结构,仅仅是与本公开方案相关的部分结构的框图,并不构成对本公开方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,还提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
需要说明的是,本公开所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可以存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本公开所提供的各实施例中所使用的对存储器、数据库或其他介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本公开所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本公开所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本公开的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本公开专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本公开构思的前提下,还可以作出若干变形和改进,这些都属于本公开的保护范围。因此,本公开的保护范围应以所附权利要求为准。

Claims (13)

1.一种应用服务的获取方法,其特征在于,所述方法包括:
响应于针对应用程序的服务获取请求,获取所述应用程序的第一许可文件;
调用所述应用程序的动态链接库组件对所述第一许可文件进行解密处理,得到所述应用程序的第二许可文件和所述应用程序中目标组件的组件签名值,所述第二许可文件是根据所述应用程序中已授权的服务运行数据生成的;
通过所述动态链接库组件对所述目标组件进行加密处理,生成所述目标组件的目标签名值;
通过所述动态链接库组件响应于所述组件签名值和所述目标签名值一致的比较结果,对所述第二许可文件进行校验;
响应于所述第二许可文件校验通过的结果,获取与所述服务运行数据对应的所述应用服务。
2.根据权利要求1所述的方法,其特征在于,所述目标组件的数量为多个;
在所述通过所述动态链接库组件响应于所述组件签名值和所述目标签名值一致的比较结果,对所述第二许可文件进行校验之前,还包括:
通过所述动态链接库组件对每个所述目标组件对应的所述组件签名值和所述目标签名值进行比较,生成所述组件签名值和所述目标签名值的比较结果。
3.根据权利要求2所述的方法,其特征在于,所述目标组件包括程序启动组件、加密接口组件和接口解密组件中的至少两个。
4.根据权利要求3所述的方法,其特征在于,在所述目标组件包括所述程序启动组件的情况下,所述响应于针对应用程序的服务获取请求,获取所述应用程序的第一许可文件,包括:
响应于针对所述应用程序的所述服务获取请求,运行所述程序启动组件;
通过所述程序启动组件获取所述应用程序的所述第一许可文件。
5.根据权利要求3所述的方法,其特征在于,在所述目标组件包括所述加密接口组件和所述接口解密组件的情况下,所述通过所述动态链接库组件响应于所述组件签名值和所述目标签名值一致的比较结果,对所述第二许可文件进行校验,包括:
通过所述动态链接库组件响应于所述组件签名值和所述目标签名值一致的比较结果,从解密后的所述第一许可文件中确定出预设密钥;
通过所述接口解密组件采用所述预设密钥对所述加密接口组件进行解密处理,得到所述应用程序的校验接口组件;
通过所述校验接口组件调用所述动态链接库组件对所述第二许可文件进行校验。
6.根据权利要求5所述的方法,其特征在于,所述通过所述校验接口组件调用所述动态链接库组件对所述第二许可文件进行校验,包括:
将所述校验接口组件载入虚拟机中,所述虚拟机用于提供所述应用程序的运行环境,以在所述运行环境下运行所述应用程序,获取所述应用服务;
在所述虚拟机中,通过所述校验接口组件调用所述动态链接库组件对所述第二许可文件进行校验。
7.一种应用服务的加密方法,其特征在于,在权利要求1~6中任一项所述的应用服务的获取方法的基础上,所述方法包括:
获取应用程序的目标组件和所述应用程序的第二许可文件,所述第二许可文件是根据所述应用程序中已授权的服务运行数据生成的;
对所述目标组件进行加密处理,生成所述目标组件的组件签名值;
对所述第二许可文件和所述目标组件的所述组件签名值进行加密处理,生成第一许可文件,将所述应用程序中存储的所述第二许可文件替换为所述第一许可文件;
采用所述第一许可文件对与所述服务运行数据对应的应用服务进行加密,得到已加密的所述应用服务。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
采用预设密钥对所述应用程序的校验接口组件进行加密,得到加密接口组件,将所述应用程序中部署的所述校验接口组件替换为所述加密接口组件;
获取与所述加密接口组件对应的接口解密组件,将所述接口解密组件部署至所述应用程序,以在所述应用程序的应用服务获取阶段,对所述加密接口组件进行解密处理。
9.根据权利要求8所述的方法,其特征在于,所述对所述第二许可文件和所述目标组件的所述组件签名值进行加密处理,生成第一许可文件,包括:
按照预设规则将所述组件签名值和所述预设密钥添加至所述第二许可文件中,得到添加后的所述第二许可文件;
采用加密公钥对添加后的所述第二许可文件进行加密处理,生成所述第一许可文件。
10.一种应用服务的获取装置,其特征在于,所述装置包括:
第一文件获取模块,用于响应于针对应用程序的服务获取请求,获取所述应用程序的第一许可文件;
文件解密模块,用于调用所述应用程序的动态链接库组件对所述第一许可文件进行解密处理,得到所述应用程序的第二许可文件和所述应用程序中目标组件的组件签名值,所述第二许可文件是根据所述应用程序中已授权的服务运行数据生成的;
第一组件加密模块,用于通过所述动态链接库组件对所述目标组件进行加密处理,生成所述目标组件的目标签名值;
许可校验模块,用于通过所述动态链接库组件响应于所述组件签名值和所述目标签名值一致的比较结果,对所述第二许可文件进行校验;
服务获取模块,用于响应于所述第二许可文件校验通过的结果,获取与所述服务运行数据对应的所述应用服务。
11.一种应用服务的加密装置,其特征在于,在权利要求10所述的应用服务的获取装置的基础上,所述装置包括:
第二文件获取模块,用于获取应用程序的目标组件和所述应用程序的第二许可文件,所述第二许可文件是根据所述应用程序中已授权的服务运行数据生成的;
第二组件加密模块,用于对所述目标组件进行加密处理,生成所述目标组件的组件签名值;
文件加密模块,用于对所述第二许可文件和所述目标组件的所述组件签名值进行加密处理,生成第一许可文件,将所述应用程序中存储的所述第二许可文件替换为所述第一许可文件;
服务加密模块,用于采用所述第一许可文件对与所述服务运行数据对应的应用服务进行加密,得到已加密的所述应用服务。
12.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6或7至9中任一项所述的方法的步骤。
13.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6或7至9中任一项所述的方法的步骤。
CN202210829535.4A 2022-07-15 2022-07-15 应用服务的获取方法、加密方法、装置、计算机设备 Active CN114896621B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210829535.4A CN114896621B (zh) 2022-07-15 2022-07-15 应用服务的获取方法、加密方法、装置、计算机设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210829535.4A CN114896621B (zh) 2022-07-15 2022-07-15 应用服务的获取方法、加密方法、装置、计算机设备

Publications (2)

Publication Number Publication Date
CN114896621A CN114896621A (zh) 2022-08-12
CN114896621B true CN114896621B (zh) 2022-10-14

Family

ID=82729669

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210829535.4A Active CN114896621B (zh) 2022-07-15 2022-07-15 应用服务的获取方法、加密方法、装置、计算机设备

Country Status (1)

Country Link
CN (1) CN114896621B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108268767A (zh) * 2016-12-30 2018-07-10 北京国双科技有限公司 Web应用程序授权方法及装置
CN112861191A (zh) * 2021-04-23 2021-05-28 腾讯科技(深圳)有限公司 一种应用程序监控方法及装置

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7769693B2 (en) * 2007-03-30 2010-08-03 Cisco Technology, Inc. Mechanism for secure rehosting of licenses
US8359473B1 (en) * 2009-02-02 2013-01-22 Adobe Systems Incorporated System and method for digital rights management using digital signatures
JP5454035B2 (ja) * 2009-09-15 2014-03-26 株式会社リコー 画像処理装置、遠隔管理システム、ライセンス更新方法、およびライセンス更新プログラム
CN102930184B (zh) * 2012-10-19 2015-11-25 华为技术有限公司 一种功能组件加载方法及装置
US10956615B2 (en) * 2017-02-17 2021-03-23 Microsoft Technology Licensing, Llc Securely defining operating system composition without multiple authoring
CN109873711A (zh) * 2017-12-05 2019-06-11 北京金山云网络技术有限公司 一种云平台管理方法、装置、电子设备及可读存储介质
CN109684790B (zh) * 2018-12-26 2021-06-04 佛山市瑞德物联科技有限公司 软件启动方法、软件授权验证方法、设备和存储介质
CN111143788B (zh) * 2019-12-31 2022-04-29 奇安信科技集团股份有限公司 许可证处理方法、电子设备、存储介质
US11423160B2 (en) * 2020-04-16 2022-08-23 Bank Of America Corporation System for analysis and authorization for use of executable environment data in a computing system using hash outputs
CN111708991A (zh) * 2020-06-17 2020-09-25 腾讯科技(深圳)有限公司 服务的授权方法、装置、计算机设备和存储介质
CN112417379B (zh) * 2020-11-10 2022-02-22 迈普通信技术股份有限公司 一种集群许可证管理方法、装置、授权服务器及存储介质
CN112434286A (zh) * 2020-11-12 2021-03-02 浙江大华技术股份有限公司 动态库的调用方法、装置、电子装置和存储介质
CN114598481A (zh) * 2020-11-19 2022-06-07 卫宁健康科技集团股份有限公司 一种授权认证方法、装置、电子设备及存储介质
CN113242224B (zh) * 2021-04-30 2022-08-30 北京市商汤科技开发有限公司 授权方法及装置、电子设备和存储介质
CN113901401A (zh) * 2021-09-14 2022-01-07 华东计算技术研究所(中国电子科技集团公司第三十二研究所) 基于机器指纹和USBkey的终端软件授权系统及方法
CN114662083A (zh) * 2022-03-24 2022-06-24 上海商汤智能科技有限公司 授权方法及芯片、终端、电子设备及计算机可读存储介质
CN114499892B (zh) * 2022-03-31 2022-07-19 飞腾信息技术有限公司 固件启动方法、装置、计算机设备及可读存储介质

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108268767A (zh) * 2016-12-30 2018-07-10 北京国双科技有限公司 Web应用程序授权方法及装置
CN112861191A (zh) * 2021-04-23 2021-05-28 腾讯科技(深圳)有限公司 一种应用程序监控方法及装置

Also Published As

Publication number Publication date
CN114896621A (zh) 2022-08-12

Similar Documents

Publication Publication Date Title
CN111475824B (zh) 数据访问方法、装置、设备和存储介质
AU2012337403B2 (en) Cryptographic system and methodology for securing software cryptography
JP4616345B2 (ja) 配布cdを用いて直接証明秘密鍵を装置に配布する方法
US8175269B2 (en) System and method for enterprise security including symmetric key protection
CN108363580A (zh) 应用程序安装方法、装置、计算机设备和存储介质
JP2010527219A (ja) 物理的に複製不可能な機能を用いて電子機器のセキュリティを電子的に確保する方法およびシステム
KR20030082484A (ko) 공개 키 암호화에 기초한 데이터의 저장 및 검색
KR20030082485A (ko) 대칭 키 암호화에 기초한 데이터의 저장 및 검색
CN110826031B (zh) 加密方法、装置、计算机设备及存储介质
CN106936588B (zh) 一种硬件控制锁的托管方法、装置及系统
US7805616B1 (en) Generating and interpreting secure and system dependent software license keys
CN112800393B (zh) 授权认证、软件开发工具包生成方法、装置及电子设备
CN111917540A (zh) 一种数据加解密方法、装置、移动终端和存储介质
CN111159658B (zh) 字节码处理方法、系统、装置、计算机设备和存储介质
CN116049802B (zh) 应用单点登陆方法、系统、计算机设备和存储介质
CN117155549A (zh) 密钥分发方法、装置、计算机设备和存储介质
CN114896621B (zh) 应用服务的获取方法、加密方法、装置、计算机设备
CN109995534B (zh) 一种对应用程序进行安全认证的方法和装置
CN113420313A (zh) 程序安全运行、加密方法及其装置、设备、介质
CN114301710B (zh) 确定报文是否被篡改的方法、密管平台和密管系统
CN114553557B (zh) 密钥调用方法、装置、计算机设备和存储介质
CN113890766B (zh) 基于物联网的电力设备鉴权方法、装置、服务器和系统,存储介质
CN115378998B (zh) 服务调用方法、装置、系统、计算机设备和存储介质
US20210409196A1 (en) Secure Key Storage Systems Methods And Devices
CN115952519A (zh) 区块链数据处理方法、装置、电子设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP02 Change in the address of a patent holder
CP02 Change in the address of a patent holder

Address after: 518000 4001, Block D, Building 1, Chuangzhi Yuncheng Lot 1, Liuxian Avenue, Xili Community, Xili Street, Nanshan District, Shenzhen, Guangdong

Patentee after: Shenzhen Zhuyun Technology Co.,Ltd.

Address before: 518051 East, 3rd floor, incubation building, China Academy of science and technology development, No. 009, Gaoxin South 1st Road, Nanshan District, Shenzhen, Guangdong Province

Patentee before: Shenzhen Zhuyun Technology Co.,Ltd.