软件许可管理方法、软件保护方法及装置与流程

文档序号:12734498阅读:181来源:国知局
软件许可管理方法、软件保护方法及装置与流程

本发明涉及软件许可技术领域,特别涉及一种软件许可管理方法、软件保护方法及装置。



背景技术:

软件许可是指软件开发商颁发给软件用户的一种许可文件,使得软件用户能够约定的方式行使软件使用权。

现有技术中的软件许可可以采用锁的方式,来保护软件版权;锁是指一些软件开发商为了防止没有购买该软件的非法用户通过破解该软件,而非法使用该软件,从而设计的一个防盗版的产品。其中锁又分为硬件锁和软件锁;硬件锁一般分为USB接口式和打印端口式;软件锁是指采用程式代码等来实现软件防盗的产品。

软件开发商发放许可给用户,只要用户获得许可,则该软件的被许可的功能都可以使用。但是有的情况下,开发商想区分用户级别,比如初级用户、高级用户和贵宾用户,这时开发商就需要编译不同的软件版本来实现。同时,要对这不同的软件版本进行管理。如果开发商的软件较多,每个软件都有不同的版本,则管理起来非常不方便。



技术实现要素:

有鉴于此,本发明实施例的目的是提供一种能够分配软件权限和管理角色的软件许可管理方法、软件保护方法及装置。

为了实现上述目的,本发明实施例提供了一种软件许可管理方法,包括:

基于软件用户的不同类别对软件构建不同的许可模板,所述许可模板包括用户类别信息和与所述用户类别信息相对应的许可权限信息;

根据所述许可模板中用户类别信息相对应的许可权限信息,为待由该类别的用户使用的软件进行对应的加壳操作;

基于所述不同的许可模板,为对应类别的用户颁发许可文件。

作为优选,为软件进行加壳操作,包括:

根据与所述用户类别信息相对应的许可权限信息为软件中需要保护的每个模块进行加壳操作。

作为优选,在构建许可模板之前,所述方法还包括:

对软件中的需要保护的模块按照不同类别的软件用户进行不同地组合,以将各组模块的使用权限分配给相应类别的用户。

作为优选,需要保护的模块包括函数、代码段或者算法模块。

本发明实施例还提供一种基于如上所述的软件许可管理方法的软件保护方法软件许可保护方法,包括:

在软件启动时,检查所述软件的所述许可文件;

根据所述许可文件中的许可权限信息,允许运行所述软件相应的模块。

本发明实施例还提供一种软件许可管理装置,包括:

构建模块,配置为基于软件用户的不同类别对软件构建不同的许可模板,所述许可模板包括用户类别信息和与所述用户类别信息相对应的许可权限信息;

加壳模块,配置为根据所述许可模板中用户类别信息相对应的许可权限信息,为待由该类别的用户使用的软件进行对应的加壳操作;

颁发许可文件模块,配置为基于所述不同的许可模板,为对应类别的用户颁发许可文件。

作为优选,所述加壳模块配置为根据与所述用户类别信息相对应的许可权限信息为软件中需要保护的每个模块进行加壳操作。

作为优选,所述装置还包括:

分组模块,配置为对软件中的需要保护的模块按照不同类别的软件用户进行不同地组合,以将各组模块的使用权限分配给相应类别的用户。

本发明实施例还提供一种基于如上所述的软件保护方法的软件保护装置,包括:

检查模块,配置为在软件启动时,检查所述软件的所述许可文件;

执行模块,配置为根据所述许可文件中的许可权限信息,允许运行所述软件相应的模块。

与现有技术相比,本发明实施例具有以下有益效果:本发明实施例的技术方案根据所述许可模板中用户类别相对应的许可权限信息,为软件进行对应的加壳操作;根据用户的类别信息,将加壳后的软件发送给所述用户,使得用户在使用该软件时,可以根据其用户类别获得相对应的权限,实现了对软件产品的权限有效管理。

附图说明

图1为本发明的软件许可管理方法的实施例一的流程图;

图2为本发明的软件许可管理方法的实施例二的流程图;

图3为基于本发明的软件许可管理方法的软件许可保护方法的实施例的流程图;

图4为本发明的软件许可管理装置的实施例一的示意图;

图5为本发明的软件许可管理装置的实施例二的示意图;

图6为基于图3所示的软件保护方法的软件保护装置的实施例的示意图。

具体实施方式

下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。

图1为本发明的软件许可管理方法的实施例一的流程图,如图1所示,本实施例的软件许可管理方法,具体可以包括如下步骤:

S101,基于软件用户的不同类别对软件构建不同的许可模板,所述许可模板包括用户类别信息和与所述用户类别信息相对应的许可权限信息。

由于一个软件存在很多的用户,为每个用户一一地分配不同的软件许可是不现实的,因此本实施例提供了许可模板,在许可模板中包含了用户类别和与用户类别相对应的权限信息。在具体实施时,根据用户类别相对应的权限,为其加载不同的许可模板即可。这样避免了为不同的用户施加不同的权限增加管理成本的技术问题。

S102,根据所述许可模板中用户类别信息相对应的许可权限信息,为待由该类别的用户使用的软件进行对应的加壳操作。

根据加壳工具的使用方法,对软件加壳,具体是对软件中的各个需要保护的功能模块加壳。在加壳操作时,选择软件开发商想要保护的功能模块,对其进行加壳。进一步地,软件中需要保护的功能模块可以是函数、代码段和/或者算法模块。

S103,基于所述不同的许可模板,为对应类别的用户颁发许可文件。

具体地,通过S103步骤加壳完成后的软件将交由相应类别的用户使用,不同类别的用户对软件各个功能模块具有不同的权限,实现了基于用户类别为软件进行保护。

本发明实施例的技术方案根据所述许可模板中用户类别相对应的许可权限信息,为软件进行对应的加壳操作;根据用户的类别信息,将加壳后的软件发送给所述用户,使得用户在使用该软件时,可以根据其用户类别获得相对应的权限,实现了对软件产品的权限有效管理。

图2为本发明的软件许可管理方法的实施例二的流程图,本实施例的软件许可管理方法在上述实施例一的基础上,进一步更加详细地介绍本发明的技术方案。如图2所示,本实施例的软件许可管理方法,具体可以包括如下步骤:

S201,对软件中的需要保护的模块按照不同类别的软件用户进行不同地组合,以将各组模块的使用权限分配给相应类别的用户。

一般程序员在设计软件时,都是采用模块化的设计方式。一个软件中包括多个功能模块,不同的功能模块例如为不同的函数、代码段等。本实施例可以根据用户类别的数量将模块组合,例如,用户类别包括初级用户、高级用户和贵宾用户三种,则可以将功能模块也相应地进行三种组合,不同的组合对应不同权限。

例如,某软件包括64个功能模块,用户类别包括初级用户、高级用户和贵宾用户,则在具体实施时,可以将64个功能模块进行三种组合,根据用户类别对应的权限,初级用户可以使用其中12个功能模块,高级用户可以使用其中32个功能模块,贵宾用户可以使用所有的64个功能模块。

S202,基于软件用户的不同类别对软件构建不同的许可模板,所述许可模板包括用户类别信息和与所述用户类别信息相对应的许可权限信息。

本实施例提供的许可模板中包含了用户类别和与用户类别相对应的权限信息。在具体实施时,根据用户类别相对应的权限,为其加载不同的许可模板。

S203,获取加壳工具。

本实施例在具体实施时,所述加壳工具可以使用现有技术中的软件开发工具包(Software Development Kit,SDK)或其他类型的加壳工具。

S204,根据与所述用户类别信息相对应的许可权限信息为软件中需要保护的每个模块进行加壳操作。

根据加壳工具的使用方法,对软件加壳,具体是对软件中的各个需要保护的功能模块加壳。在加壳操作时,选择软件开发商想要保护的功能模块,对其进行加壳。

S205,基于所述不同的许可模板,为对应类别的用户颁发许可文件。

加壳完成后的软件将交由相应类别的用户使用,不同类别的用户对软件各个功能模块具有不同的权限。

在本发明其他实施例中,还可以设置权限验证的步骤,即软件开发商侧的工作人员在创建许可模板或基于许可模板对软件加壳时需要进行身份验证。

进一步地,软件中需要保护的模块可以是函数、代码段或者算法模块。

本发明实施例的技术方案通过对软件的功能模块进行组合,并使组合后的功能模块与用户类别对应,以构建许可模板,在具体的加壳操作中,基于许可模板为相应的功能模块进行加壳操作,整个过程操作便利,易于实现。

图3为本发明的基于上述软件许可管理方法的软件许可保护方法的实施例的流程图,如图3所示,本实施例的软件保护方法,具体可以包括如下步骤:

S301,在软件启动时,检查所述软件的所述许可文件。

一般的软件都包括启动文件,在启动软件时,根据启动文件的信息进行启动。本实施例的一种实施例中,可以将许可文件的信息设置于启动文件中,则在启动软件时,可以自动调用所述软件的许可文件。

S302,根据所述许可文件中的许可权限信息,允许运行所述软件相应的模块。

具体地,根据许可文件中的许可信息,确定软件的相应许可权限,从而运行所述软件中有权限使用的各个模块。

本发明实施例使得用户在使用该软件时,可以根据其用户类别获得相对应的权限,实现了对软件产品的权限有效管理。

图4为本发明的软件许可管理装置的实施例一的示意图,如图4所示,本实施例的软件许可管理装置,具体可以包括构建模块41、加壳模块42和颁发许可文件模块43。

构建模块41,配置为基于软件用户的不同类别对软件构建不同的许可模板,所述许可模板包括用户类别和与所述用户类别相对应的许可权限信息;

加壳模块42,配置为根据所述许可模板中用户类别相对应的许可权限信息,为待由该类别的用户使用的软件进行对应的加壳操作;

颁发许可文件模块43,配置为基于所述不同的许可模板,为对应类别的用户颁发许可文件。

本发明实施例的软件许可管理装置,通过采用上述模块为用户分配软件许可权限的实现机制与上述图1所示实施例的软件许可管理方法的实现机制相同,详细可以参考上述图1所示实施例的记载,在此不再赘述。

图5为本发明的软件许可管理装置的实施例二的示意图,本实施例的软件许可管理装置在如图4所示的实施例一的基础上,进一步更加详细地介绍本发明的技术方案。如图5所示,本实施例的软件许可管理装置,进一步可以包括:

分组模块51,配置为对软件中的需要保护的模块按照不同类别的软件用户进行不同地组合,以将各组模块的使用权限分配给相应类别的用户。

所述加壳模块42配置为根据与所述用户类别信息相对应的许可权限信息为软件中需要保护的每个模块进行加壳操作。

本发明实施例的软件许可管理装置,通过采用上述模块为用户分配软件许可权限的实现机制与上述图2所示实施例的软件许可管理方法的实现机制相同,详细可以参考上述图2所示实施例的记载,在此不再赘述。

图6为本发明的基于如图3所示的软件保护方法的软件保护装置的实施例的示意图,如图6所示,本实施例的软件许可保护装置,具体可以包括检查模块61和执行模块62。

检查模块61,配置为在软件启动时,检查所述软件的许可文件;

执行模块62,配置为根据所述许可文件中的许可权限信息,允许运行所述软件相应的模块。

本发明实施例使得用户在使用该软件时,可以根据其用户类别获得相对应的权限,实现了对软件产品的权限有效管理。

以上实施例仅为本发明的示例性实施例,不用于限制本发明,本发明的保护范围由权利要求书限定。本领域技术人员可以在本发明的实质和保护范围内,对本发明做出各种修改或等同替换,这种修改或等同替换也应视为落在本发明的保护范围内。

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