一种应用程序防护方法、装置、电子设备和存储介质

文档序号:1921779 发布日期:2021-12-03 浏览:38次 >En<

阅读说明:本技术 一种应用程序防护方法、装置、电子设备和存储介质 (Application program protection method and device, electronic equipment and storage medium ) 是由 魏贺生 范丽 单国军 周晚晴 谢宇 于 2021-08-09 设计创作,主要内容包括:本申请涉及计算机技术领域,尤其涉及一种应用程序防护方法、装置、电子设备和存储介质,用以简单高效的提高程序安全性。其中,方法包括:在目标应用程序调用目标函数时,将所述目标应用程序对应的文件信息进行加密,获得文件加密信息;将所述文件加密信息发送给目标函数,通过所述目标函数将所述文件加密信息与所述目标函数对应的预存加密信息进行比对;根据比对结果确定是否加载所述目标函数。由于本申请通过目标函数将文件加密信息与目标函数对应的预存加密信息进行比对,并根据比对结果确定是否加载目标函数,可以简单快速的防止程序的非法调用,防止入侵事件的发生,实现了对系统的全面保护,提高系统可靠性,具有更高的实用性。(The present application relates to the field of computer technologies, and in particular, to a method and an apparatus for protecting an application program, an electronic device, and a storage medium, so as to improve program security simply and efficiently. The method comprises the following steps: when a target application program calls a target function, encrypting file information corresponding to the target application program to obtain file encryption information; sending the file encryption information to a target function, and comparing the file encryption information with prestored encryption information corresponding to the target function through the target function; and determining whether to load the target function according to the comparison result. According to the method and the device, the file encryption information is compared with the pre-stored encryption information corresponding to the target function through the target function, and whether the target function is loaded or not is determined according to the comparison result, so that illegal calling of a program can be simply and quickly prevented, an invasion event is prevented, comprehensive protection of a system is realized, the reliability of the system is improved, and the method and the device have higher practicability.)

一种应用程序防护方法、装置、电子设备和存储介质

技术领域

本申请涉及计算机技术领域,尤其涉及一种应用程序防护方法、装置、电子设备和存储介质。

背景技术

随着科学技术的不断进步,C++函数存在许多恶意软件的恶意调用,破坏源程序,给社会造成严重影响。

在相关技术中,针对C++函数的恶意调用问题,主要是通过汇编指令获取系统调用入口,通过系统调用入口获取系统调用链表指针,对系统调用指针用指纹算法进行处理。但是,上述方法只能应用于Linux系统,解决Linux系统内核态的入侵事件,适用性较差,且实现过程较为复杂。

发明内容

本申请实施例提供一种应用程序防护方法、装置、电子设备和存储介质,用以简单高效的提高程序安全性。

本申请实施例提供的第一种应用程序防护方法,包括:

在目标应用程序调用目标函数时,将所述目标应用程序对应的文件信息进行加密,获得文件加密信息;

将所述文件加密信息发送给目标函数,通过所述目标函数将所述文件加密信息与所述目标函数对应的预存加密信息进行比对;

根据比对结果确定是否加载所述目标函数。

在上述实施方式中,在目标应用程序调用目标函数时,将目标应用程序对应的文件信息进行加密,获得文件加密信息后,将文件加密信息发送给目标函数,通过目标函数将文件加密信息与目标函数对应的预存加密信息进行比对,根据比对结果确定是否加载目标函数。通过上述方式可以简单快速的防止程序的非法调用,防止入侵事件的发生,实现了对系统的全面保护,提高系统安全性和可靠性。并且,该方法并非仅仅适用于Linux系统,具有更高的实用性。

一种可选的实施方式为,所述根据比对结果确定是否加载所述目标函数,包括:

若所述比对结果一致,则加载所述目标函数;

若所述比对结果不一致,则禁止加载所述目标函数,并退出所述目标应用程序。

在上述实施方式中,通过比对结果,确定是否加载目标函数,若比对结果一致,则加载目标函数,若比对结果不一致,则禁止加载所述目标函数,并退出所述目标应用程序,能够简单高效的防止程序的非法调用,实现了对系统的全面保护,提高系统可靠性。

一种可选的实施方式为,所述预存加密信息包括:可加载的应用程序的程序名称,以及各个应用程序对应的第二校验码,所述第二校验码用于唯一标识应用程序,且用于表征所述应用程序未被修改;所述通过所述目标函数将所述文件加密信息与预存加密信息进行比对,包括:

获取所述目标函数对应的预存加密信息中可加载的应用程序的程序名称;

若基于所述程序名称确定所述目标应用程序属于所述可加载的应用程序,则将所述文件加密信息中的第一校验码与所述预存加密信息中所述目标应用程序对应的第二校验码进行比对。

在上述实施方式中,通过目标函数将文件加密信息与预存加密信息进行比对,首先获取目标函数对应的预存加密信息中可加载的应用程序的程序名称,若基于程序名称确定目标应用程序属于可加载的应用程序,则将文件加密信息中的第一校验码与预存加密信息中目标应用程序对应的第二校验码进行比对,可以简单快速的防止程序的非法调用,防止入侵事件的发生,实现了对系统的全面保护,提高系统可靠性,具有很高的实用性。

一种可选的实施方式为,通过下列方式确定所述比对结果一致:

若所述第一校验码与所述预存加密信息中所述目标应用程序对应的第二校验码一致,则确定所述比对结果一致。

在上述实施方式中,若第一校验码与预存加密信息中目标应用程序对应的第二校验码一致,则确定比对结果一致,可以保证程序的正常调用。

一种可选的实施方式为,通过下列方式确定所述比对结果不一致:

若所述第一校验码与所述预存加密信息中所述目标应用程序对应的第二校验码不一致,则确定所述比对结果不一致;或者

若基于所述程序名称确定所述目标应用程序不属于所述可加载的应用程序,则确定所述比对结果不一致。

在上述实施方式中,若第一校验码与预存加密信息中目标应用程序对应的第二校验码不一致,或者基于程序名称确定目标应用程序不属于可加载的应用程序,则确定比对结果不一致,可以简单快速的防止程序的非法调用,防止入侵事件的发生,实现了对系统的全面保护。

一种可选的实施方式为,所述将所述目标应用程序对应的文件信息进行加密,获得文件加密信息,包括:

通过非对称加密方法对所述文件信息进行加密,获得所述目标应用程序对应的第一校验码;

将所述目标应用程序的程序名称以及所述第一校验码作为所述文件加密信息。

在上述实施方式中,通过非对称加密方法对文件信息进行加密,获得目标应用程序对应的第一校验码,将目标应用程序的程序名称以及第一校验码作为文件加密信息,保证了信息的安全,有效防止程序的非法调用。

本申请实施例提供的一种应用程序防护装置,包括:

加密单元,用于在目标应用程序调用目标函数时,将所述目标应用程序对应的文件信息进行加密,获得文件加密信息;

发送单元,用于将所述文件加密信息发送给目标函数,通过所述目标函数将所述文件加密信息与所述目标函数对应的预存加密信息进行比对;

确定单元,用于根据比对结果确定是否加载所述目标函数。

可选的,所述确定单元具体用于:

若所述比对结果一致,则加载所述目标函数;

若所述比对结果不一致,则禁止加载所述目标函数,并退出所述目标应用程序。

可选的,所述预存加密信息包括:可加载的应用程序的程序名称,以及各个应用程序对应的第二校验码,所述第二校验码用于唯一标识应用程序,且用于表征所述应用程序未被修改;所述发送单元具体用于:

获取所述目标函数对应的预存加密信息中可加载的应用程序的程序名称;

若基于所述程序名称确定所述目标应用程序属于所述可加载的应用程序,则将所述文件加密信息中的第一校验码与所述预存加密信息中所述目标应用程序对应的第二校验码进行比对。

可选的,所述确定单元还用于通过下列方式确定所述比对结果一致:

若所述第一校验码与所述预存加密信息中所述目标应用程序对应的第二校验码一致,则确定所述比对结果一致。

可选的,所述确定单元还用于通过下列方式确定所述比对结果不一致:

若所述第一校验码与所述预存加密信息中所述目标应用程序对应的第二校验码不一致,则确定所述比对结果不一致;或者

若基于所述程序名称确定所述目标应用程序不属于所述可加载的应用程序,则确定所述比对结果不一致。

可选的,所述加密单元具体用于:

通过非对称加密方法对所述文件信息进行加密,获得所述目标应用程序对应的第一校验码;

将所述目标应用程序的程序名称以及所述第一校验码作为所述文件加密信息。

本申请实施例提供的一种电子设备,包括处理器和存储器,其中,所述存储器存储有程序代码,当所述程序代码被所述处理器执行时,使得所述处理器执行上述一种应用程序防护的步骤。

本申请实施例提供一种计算机可读存储介质,其包括程序代码,当所述存储介质在电子设备上运行时,所述程序代码用于使所述电子设备执行上述一种应用程序防护方法的步骤。

本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。

附图说明

此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

图1为本申请实施例提供的一种应用程序防护方法的应用场景示意图;

图2为本申请实施例提供的一种应用程序防护方法的流程示意图;

图3为本申请实施例提供的一种应用程序防护方法的工作框图;

图4为本申请实施例提供的一种应用程序防护方法的具体流程示意图;

图5为本申请实施例的一种应用程序防护装置的示意图;

图6为本申请实施例的一种电子设备的组成结构示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请技术方案的一部分实施例,而不是全部的实施例。基于本申请文件中记载的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请技术方案保护的范围。

下面对本申请实施例中涉及的部分概念进行介绍。

1、本申请实施例中术语“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。

2、本申请实施例中术语“应用程序”是为完成某项或多项特定工作的计算机程序,它运行在用户模式,可以和用户进行交互,具有可视的用户界面。应用程序通常又被分为图形用户接口和引擎两部分,每一个应用程序运行于独立的进程、他们拥有自己独立的地址空间。本申请实施例中的应用程序为能调用C++函数的计算机程序、软件、小程序等。

3、本申请实施例中术语“非对称加密”是一种密钥的保密方法。非对称加密算法需要两个密钥:公开密钥和私有密钥。公钥与私钥是一对,如果用公钥对数据进行加密,只有用对应的私钥才能解密。因为加密和解密使用的是两个不同的密钥,所以这种方法叫作非对称加密。本申请实施例中就是通过非对称加密方法对文件信息进行加密的。

4、本申请实施例中术语“校验码”通常是一组数字的最后一位,由前面的数字通过某种运算得出,用以检验该组数字的正确性。凡设有校验码的代码,是由本体码与校验码两部分组成,本体码是表示编码对象的号码,校验码则是附加在本体码后边,用来校验本体码在输入过程中准确性的号码。每一个本体码只能有一个校验码,校验码通过规定的数学关系得到。本申请实施例中的校验码用于比对传递的文件信息与预存加密信息是否一致,是通过对目标应用程序对应的文件信息进行加密获得的。

下面对本申请实施例的设计思想进行简要介绍:

随着科学技术的不断进步,C++函数存在许多恶意软件的恶意调用,破坏源程序,给社会造成严重影响。

在相关技术中,针对C++函数的恶意调用问题,除了背景技术中所列举的方式外,还可以利用钩子函数对加载函数的调用进行监视,判断加载函数是否在恶意动态链接库或者在白名单中,从而拒绝或允许加载函数。但是,上述方式实现过程复杂,或者只能应用于Linux系统,或者需要每个被调用的系统设置钩子函数。

鉴于上述问题,本申请实施例提出了一种应用程序防护方法、装置、电子设备和存储介质。本申请实施例在目标应用程序调用目标函数时,将目标应用程序对应的文件信息进行加密,获得文件加密信息后,将文件加密信息发送给目标函数,通过目标函数将文件加密信息与目标函数对应的预存加密信息进行比对,根据比对结果确定是否加载所述目标函数。由于本申请通过文件加密信息与预存加密信息进行比对,确定是否加载目标函数,可以简单快速的防止程序的非法调用,防止入侵事件的发生,实现了对系统的全面保护,提高系统可靠性,具有很高的实用性。

以下结合说明书附图对本申请的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本申请,并不用于限定本申请,并且在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。

如图1所示,为本申请实施例提供的一种应用程序防护方法的应用场景示意图,该方法的具体实施流程如下:在目标应用程序10调用目标函数20时,将目标应用程序10对应的文件信息进行加密,获得文件加密信息,并将文件加密信息发送给目标函数20,通过目标函数20将文件加密信息与目标函数20对应的预存加密信息进行比对,并根据比对结果确定是否加载目标函数20。

如图2所示,本申请实施例提供一种应用程序防护方法,包括以下步骤:

S21:在目标应用程序调用目标函数时,将目标应用程序对应的文件信息进行加密,获得文件加密信息;

其中,目标函数可以为C++函数。在启动应用程序,基于应用程序实现某些功能时,会调用一些C++函数,为了保证系统的安全性,需要对应用程序进行身份校验。

在一种可选的实施方式中,通过非对称加密方法对文件信息进行加密,获得目标应用程序对应的第一校验码,将目标应用程序的程序名称以及第一校验码作为文件加密信息。

其中,文件信息中包括该应用程序的程序名称、路径等信息。

例如,非对称加密方法可以为MD5算法,获取目标应用程序的文件信息后,可以用MD5算法计算该文件信息的MD5值,即第一校验码,不同文件信息的MD5值都不相同,如果任何人对目标应用程序做了任何改动,其MD5值就会发生变化。通过比较与目标函数侧预先提供的MD5值是否相同,就能判断目标应用程序是否被篡改,对目标应用程序进行唯一性校验,能够保证程序的安全性和完整性。

S22:将文件加密信息发送给目标函数,通过目标函数将文件加密信息与目标函数对应的预存加密信息进行比对;

在一种可选的实施方式中,预存加密信息为目标函数侧预先存储的,包括可加载的应用程序的程序名称,即允许加载该目标函数的应用程序的程序名称,以及各个应用程序对应的第二校验码。其中,每个第二校验码用于唯一标识一个应用程序,且用于表征该应用程序未被修改。

其中,不同的目标函数对应的预存加密信息可以相同,也可以不同。

比如,目标函数1所对应的预存加密信息包含5个可加载的应用程序的程序名称,分别为:APP1、APP2、APP3、APP4、APP5,每个可加载的应用程序各自对应的校验码分别为:app1、app2、app3、app4、app5。

再比如,目标函数2所对应的预存加密信息包含3个可加载的应用程序的程序名称,分别为:APP1、APP3、APP6,每个可加载的应用程序各自对应的校验码分别为:app1、app3、app6。

再比如,目标函数3所对应的预存加密信息包含4个可加载的应用程序的程序名称,分别为:APP7、APP8、APP9、APP0,每个可加载的应用程序各自对应的校验码分别为:app7、app8、app9、app0。

在本申请实施例中,将文件加密信息与预存加密信息进行比对时,首先需要获取目标函数对应的预存加密信息中可加载的应用程序的程序名称,若应用程序的名称与可加载的程序名称一致,则应用程序属于可加载的程序,继续将文件加密信息中的第一校验码与预存加密信息中目标应用程序对应的第二校验码进行比对;若应用程序的名称与可加载的程序名称不一致,那么应用程序属于不可加载的程序,不需要进行下面的比对,直接退出程序。

比如,应用程序A的程序名称为APP1,基于MD5算法加密后得到的校验码为app1;目标函数1对应的预存加密信息中所包含的可加载的应用程序的程序名称为:APP1、APP2、APP3、APP4、APP5;各个应用程序对应的分别校验码为:app1、app2、app3、app4、app5。

通过查询预存加密信息中所包含的可加载的应用程序的程序名称可知,应用程序A的程序名称属于可加载的应用程序。然后,将应用程序A通过加密后得到的校验码app1与目标应用程序对他的第二校验码进行比对,通过比对可知,应用程序A的第一校验码与其对应的第二校验码一致,允许应用程序A加载目标函数1。

S23:根据比对结果确定是否加载目标函数。

在本申请实施例中,通过目标函数将文件加密信息与目标函数对应的预存加密信息进行比对,根据比对结果确定是否加载目标函数,可以简单快速的防止程序的非法调用,防止入侵事件的发生,实现了对系统的全面保护,提高系统安全性和可靠性,并非仅仅适用于Linux系统,可以适用于各种操作系统,具有更高的实用性。

在一种可选的实施方式中,根据比对结果确定是否加载目标函数,若比对结果一致,则加载目标函数;若比对结果不一致,则禁止加载目标函数,并退出目标应用程序。

例如,以目标函数为C++函数为例,将应用程序的文件加密信息与C++函数中预存加密信息对比,若比对结果一致,则加载C++函数,若比对结果不一致,则禁止加载目标函数,并退出应用程序,这样能够简单高效的防止程序的非法调用,实现了对系统的全面保护,提高系统可靠性。

在一种可选的实施方式中,若第一校验码与预存加密信息中目标应用程序对应的第二校验码一致,则确定比对结果一致。

例如,应用程序A的程序名称为APP1,C++函数对应的预存加密信息中所包含的可加载的应用程序的程序名称为:APP1、APP2、APP3、APP4、APP5,则应用程序A属于可加载的应用程序,应用程序A的第一校验码为app1,在预存加密信息中对应的第二校验码为app1,通过对比可知结果一致,则允许加载应用程序A,可以保证程序的正常调用。

在一种可选的实施方式中,若第一校验码与预存加密信息中目标应用程序对应的第二校验码不一致,或者,基于程序名称确定目标应用程序不属于可加载的应用程序,则确定比对结果不一致。

比如,应用程序B的程序名称为APP2,C++函数对应的预存加密信息中所包含的可加载的应用程序的程序名称为:APP1、APP2、APP3、APP4、APP5,则应用程序B属于可加载的应用程序,应用程序B的第一校验码为app2,在预存加密信息中对应的第二校验码为app6,通过对比可知第一校验码与第二校验码不一致,则不允许加载应用程序B;再比如,应用程序C的程序名称为APP0,C++函数对应的预存加密信息中所包含的可加载的应用程序的程序名称为:APP1、APP2、APP3、APP4、APP5,根据程序名称可知,应用程序C不属于可加载的应用程序,则比对结果不一致,退出程序,这样可以简单快速的防止程序的非法调用,防止入侵事件的发生,实现了对系统的全面保护。

如图3所示,为本申请实施例提供的一种应用程序防护方法的工作框图,下面以目标函数为C++函数为例具体介绍工作逻辑:

应用程序调用C++函数时,将自身程序的信息通过非对称加密方法加密,然后传递给C++函数,通过C++函数将传递的文件加密信息与预存加密信息进行比对,当传递的信息与预存的加密信息一致时,则允许加载,当传递的信息与预存的加密信息不一致时,则禁止加载。

如图4所示,为本申请实施例提供的一种应用程序防护方法的具体流程示意图,包括以下步骤:

S400:通过非对称加密方法对文件信息进行加密,获得目标应用程序对应的第一校验码;

S401:将目标应用程序的程序名称以及第一校验码作为文件加密信息;

S402:将文件加密信息发送给目标函数;

S403:判断目标应用程序是否属于可加载的应用程序,若是,执行步骤S404;若不是,执行步骤S407;

S404:将第一校验码与预存加密信息中目标应用程序对应的第二校验码进行对比;

S405:比对结果是否一致,若是,执行步骤S406;若不是,执行步骤S407。

S406:允许加载。

S407:退出程序。

本申请可以保证程序的安全性和完整性,通过此方法可以限制恶意软件的调用,实现了对系统全面的保护,提高系统的可靠性,具有很高的使用价值。

基于相同的发明构思,本申请实施例还提供一种应用程序防护装置。如图5所示,其为本申请实施例的一种应用程序防护装置500的示意图,该装置包括:

加密单元501,用于在目标应用程序调用目标函数时,将目标应用程序对应的文件信息进行加密,获得文件加密信息;

发送单元502,用于将文件加密信息发送给目标函数,通过目标函数将文件加密信息与目标函数对应的预存加密信息进行比对;

确定单元503,用于根据比对结果确定是否加载目标函数。

可选的,确定单元503具体用于:

若比对结果一致,则加载目标函数;

若比对结果不一致,则禁止加载目标函数,并退出目标应用程序。

可选的,预存加密信息包括:可加载的应用程序的程序名称,以及各个应用程序对应的第二校验码,第二校验码用于唯一标识应用程序,且用于表征应用程序未被修改;发送单元502具体用于:

获取目标函数对应的预存加密信息中可加载的应用程序的程序名称;

若基于程序名称确定目标应用程序属于可加载的应用程序,则将文件加密信息中的第一校验码与预存加密信息中目标应用程序对应的第二校验码进行比对。

可选的,确定单元503还用于通过下列方式确定比对结果一致:

若第一校验码与预存加密信息中目标应用程序对应的第二校验码一致,则确定比对结果一致。

可选的,确定单元503还用于通过下列方式确定比对结果不一致:

若第一校验码与预存加密信息中目标应用程序对应的第二校验码不一致,则确定比对结果不一致;或者

若基于程序名称确定目标应用程序不属于可加载的应用程序,则确定比对结果不一致。

可选的,加密单元501具体用于:

通过非对称加密方法对文件信息进行加密,获得目标应用程序对应的第一校验码;

将目标应用程序的程序名称以及第一校验码作为文件加密信息。

为了描述的方便,以上各部分按照功能划分为各模块(或单元)分别描述。当然,在实施本申请时可以把各模块(或单元)的功能在同一个或多个软件或硬件中实现。

所属技术领域的技术人员能够理解,本申请的各个方面可以实现为系统、方法或程序产品。因此,本申请的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。

与上述方法实施例基于同一发明构思,本申请实施例中还提供了一种电子设备。在该实施例中,电子设备的结构可以如图6所示,包括存储器601,通讯模块603以及一个或多个处理器602。

存储器601,用于存储处理器602执行的计算机程序。存储器601可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统,以及运行即时通讯功能所需的程序等;存储数据区可存储各种即时通讯信息和操作指令集等。

存储器601可以是易失性存储器(volatile memory),例如随机存取存储器(random-access memory,RAM);存储器601也可以是非易失性存储器(non-volatilememory),例如只读存储器,快闪存储器(flash memory),硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD);或者存储器601是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器601可以是上述存储器的组合。

处理器602,可以包括一个或多个中央处理单元(central processing unit,CPU)或者为数字处理单元等等。处理器602,用于调用存储器601中存储的计算机程序时实现上述应用程序防护方法。

通讯模块603用于与终端和其他服务器进行通信。

本申请实施例中不限定上述存储器601、通讯模块603和处理器602之间的具体连接介质。本申请实施例在图6中以存储器601和处理器602之间通过总线604连接,总线604在图6中以粗线描述,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。总线604可以分为地址总线、数据总线、控制总线等。为便于描述,图6中仅用一条粗线描述,但并不描述仅有一根总线或一种类型的总线。

存储器601中存储有计算机存储介质,计算机存储介质中存储有计算机可执行指令,计算机可执行指令用于实现本申请实施例的应用程序防护方法。处理器602用于执行上述的应用程序防护方法,如图2所示。

根据本申请的应用程序防护设备可以至少包括处理器和存储器。其中,存储器存储有程序代码,当程序代码被处理器执行时,使得处理器执行本说明书中描述的根据本申请各种示例性实施方式的应用程序防护方法中的步骤。例如,处理器可以执行如图2中所示的步骤。

在一些可能的实施方式中,本申请提供的应用程序防护方法的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在计算机设备上运行时,程序代码用于使计算机设备执行本说明书上述描述的根据本申请各种示例性实施方式的应用程序防护方法中的步骤,例如,计算机设备可以执行如图2中所示的步骤。

程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。

本申请的实施方式的应用程序防护的程序产品可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在计算装置上运行。然而,本申请的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被命令执行系统、装置或者器件使用或者与其结合使用。

可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由命令执行系统、装置或者器件使用或者与其结合使用的程序。

可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。

可以以一种或多种程序设计语言的任意组合来编写用于执行本申请操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算装置上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算装置上部分在远程计算装置上执行、或者完全在远程计算装置或服务器上执行。在涉及远程计算装置的情形中,远程计算装置可以通过任意种类的网络包括局域网(LAN)或广域网(WAN)连接到用户计算装置,或者,可以连接到外部计算装置(例如利用因特网服务提供商来通过因特网连接)。

应当注意,尽管在上文详细描述中提及了装置的若干单元或子单元,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多单元的特征和功能可以在一个单元中具体化。反之,上文描述的一个单元的特征和功能可以进一步划分为由多个单元来具体化。

此外,尽管在附图中以特定顺序描述了本申请方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。

显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

17页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:应用程序许可管理系统及方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类