一种软件授权方法、系统及设备与流程

文档序号:14613587发布日期:2018-06-05 21:26阅读:261来源:国知局
一种软件授权方法、系统及设备与流程

本发明涉及软件安全技术领域,特别涉及一种软件授权方法、系统及设备。



背景技术:

目前,在软件行业中,软件开发人员为了维护自身的利益会利用各种方法和技术进行软件的保护,这样用户需要在得到软件授权的情况下才能正常使用软件。

软件授权的目标是让软件用户按照购买许可来使用软件。目前商用软件通常是采用注册码授权方式来保证软件不被盗用,常见的注册码授权方式有以下几种:安装序列号方式、用户名+序列号方式、在线注册方式和激活码方式等。通常在行业应用软件领域,大多选用激活码方式进行软件授权管理。

基于激活码的软件授权过程主要是对激活码进行简单地校验,以此来判断是否对用户进行软件授权。不论是什么级别的用户,只要通过了激活码的校验,均可正常地使用相应的软件,并且在软件使用时长方面并无任何区别,均能长期地使用该软件。然而,对于某些软件用户来说,他们其实只需在短期内使用某款商业软件,而无需长期使用,可在现有的实际情况中,这些短期用户只能选择花更多的钱来购买该软件的长期服务。可见,用户所购买的软件的使用时限与其自身实际需要之间可能存在不一致的情况,导致软件用户的软件使用成本往往过高,用户体验较差。

综上所述可以看出,如何满足用户按需使用软件的需求是目前有待解决的问题。



技术实现要素:

有鉴于此,本发明的目的在于提供一种软件授权方法、系统及设备,能够满足用户按需使用软件的需求。其具体方案如下:

一种软件授权方法,包括:

在用户终端对目标软件进行激活之前,获取所述用户终端的硬件信息以及与所述用户终端对应的用户级别;

根据所述用户级别确定出相应的软件使用时长信息;

利用所述硬件信息和所述软件使用时长信息,生成相应的授权文件;

将所述授权文件发送至所述用户终端,以在所述用户终端上利用所述授权文件对所述目标软件进行激活处理。

优选的,所述硬件信息包括MAC地址和/或CPU序列号和/或硬盘序列号。

优选的,所述利用所述硬件信息和所述软件使用时长信息,生成相应的授权文件的过程,包括:

利用预设的加密算法,对所述硬件信息进行加密处理,得到相应的第一加密信息;

利用预设的第一加密规则,对所述软件使用时长信息进行加密处理,得到相应的第二加密信息;

生成包括所述第一加密信息和所述第二加密信息的授权文件。

优选的,所述生成包括所述第一加密信息和所述第二加密信息的授权文件的过程之前,还包括:

确定激活校验过程中所允许的最大校验次数;

利用预设的第二加密规则,对所述最大校验次数进行加密处理,得到相应的第三加密信息。

优选的,所述生成包括所述第一加密信息和所述第二加密信息的授权文件的过程,包括:

生成包括所述第一加密信息、所述第二加密信息和所述第三加密信息的授权文件。

优选的,所述加密算法为MD5算法。

优选的,所述软件授权方法,还包括:

对所述用户终端对应的用户级别进行实时监测;

当监测到所述用户终端对应的用户级别发生变化,则对所述授权文件中的软件使用时长信息进行相应地更新,得到更新后的授权文件;

将所述更新后的授权文件发送至所述用户终端,以利用所述更新后的授权文件对所述目标软件进行再次激活处理。

优选的,所述软件授权方法,还包括:

为所述授权文件创建相应的文件ID号;

当在所述用户终端上针对所述授权文件的校验成功后,提取所述授权文件的文件ID号,并利用该文件ID号对预设的ID数据库进行查找;

若在所述ID数据库中查找到所述授权文件的文件ID号,则禁止在所述用户终端上激活所述目标软件,若在所述ID数据库中查找不到所述授权文件的文件ID号,则允许在所述用户终端上激活所述目标软件,并将所述授权文件的文件ID号保存至所述ID数据库。

优选的,所述利用预设的第一加密规则,对所述软件使用时长信息进行加密处理,得到相应的第二加密信息的过程,包括:

将所述软件使用时长信息转换成相应的ASCII码,得到第一ASCII码;

将所述第一ASCII码中的每一位码值均分别与预设的第一恒定值进行相加处理,得到变形后的第一ASCII码;

将所述变形后的第一ASCII码转换成相应的字符串,得到第一字符串;

随机生成第二字符串和第三字符串;其中,所述第二字符串和所述第三字符串均包括N个字符,N为正整数,并且,所述第二字符串和所述第三字符串之间相加后得到的数值与预设的第一常量相一致;

在所述第一字符串的头部嵌入所述第二字符串以及在所述第一字符串的尾部嵌入所述第三字符串,得到所述第二加密信息。

优选的,所述利用预设的第二加密规则,对所述最大校验次数进行加密处理,得到相应的第三加密信息的过程,包括:

将所述最大校验次数转换成相应的ASCII码,得到第二ASCII码;

将所述第二ASCII码中的每一位码值均分别与预设的第二恒定值进行相加处理,得到变形后的第二ASCII码;

将所述变形后的第二ASCII码转换成相应的字符串,得到第四字符串;

随机生成第五字符串和第六字符串;其中,所述第五字符串和所述第六字符串均包括M个字符,M为正整数,并且,所述第五字符串和所述第六字符串之间相加后得到的数值与预设的第二常量相一致;

在所述第四字符串的头部嵌入所述第五字符串以及在所述第四字符串的尾部嵌入所述第六字符串,得到所述第三加密信息。

本发明还相应公开了一种软件授权系统,包括:

信息获取模块,用于在用户终端对目标软件进行激活之前,获取所述用户终端的硬件信息以及与所述用户终端对应的用户级别;

信息确定模块,用于根据所述用户级别确定出相应的软件使用时长信息;

文件生成模块,用于利用所述硬件信息和所述软件使用时长信息,生成相应的授权文件;

文件发送模块,用于将所述授权文件发送至所述用户终端,以在所述用户终端上利用所述授权文件对所述目标软件进行激活处理。

优选的,所述文件生成模块包括:

第一加密子模块,用于利用预设的加密算法,对所述硬件信息进行加密处理,得到相应的第一加密信息;

第二加密子模块,用于利用预设的第一加密规则,对所述软件使用时长信息进行加密处理,得到相应的第二加密信息;

文件生成子模块,用于生成包括所述第一加密信息和所述第二加密信息的授权文件。

优选的,所述软件授权系统,还包括:

校验次数确定模块,用于在所述文件生成子模块生成授权文件之前,确定激活校验过程中所允许的最大校验次数;

第三加密子模块,用于利用预设的第二加密规则,对所述最大校验次数进行加密处理,得到相应的第三加密信息。

优选的,所述文件生成子模块,具体用于生成包括所述第一加密信息、所述第二加密信息和所述第三加密信息的授权文件。

优选的,所述软件授权系统,还包括用户级别监测模块和文件更新模块;其中,

所述用户级别监测模块,用于对所述用户终端对应的用户级别进行实时监测;

所述文件更新模块,用于当所述用户级别监测模块监测到所述用户终端对应的用户级别发生变化,则对所述授权文件中的软件使用时长信息进行相应地更新,得到更新后的授权文件;

所述文件发送模块,还用于将所述更新后的授权文件发送至所述用户终端,以利用所述更新后的授权文件对所述目标软件进行再次激活处理。

优选的,所述软件授权系统,还包括:

ID号创建模块,用于为所述授权文件创建相应的文件ID号;

ID号提取模块,用于当在所述用户终端上针对所述授权文件的校验成功后,提取所述授权文件的文件ID号;

ID号查找模块,用于利用所述ID号提取模块提取到的文件ID号对预设的ID数据库进行查找;

激活控制模块,用于当所述ID号查找模块在所述ID数据库中查找到所述授权文件的文件ID号,则禁止在所述用户终端上激活所述目标软件,若所述ID号查找模块在所述ID数据库中查找不到所述授权文件的文件ID号,则允许在所述用户终端上激活所述目标软件,并将所述授权文件的文件ID号保存至所述ID数据库。

优选的,所述第二加密子模块包括:

第一转换单元,用于将所述软件使用时长信息转换成相应的ASCII码,得到第一ASCII码;

第一变形单元,用于将所述第一ASCII码中的每一位码值均分别与预设的第一恒定值进行相加处理,得到变形后的第一ASCII码;

第二转换单元,用于将所述变形后的第一ASCII码转换成相应的字符串,得到第一字符串;

第一随机生成单元,用于随机生成第二字符串和第三字符串;其中,所述第二字符串和所述第三字符串均包括N个字符,N为正整数,并且,所述第二字符串和所述第三字符串之间相加后得到的数值与预设的第一常量相一致;

第一字符嵌入单元,在所述第一字符串的头部嵌入所述第二字符串以及在所述第一字符串的尾部嵌入所述第三字符串,得到所述第二加密信息。

优选的,所述第三加密子模块包括:

第三转换单元,用于将所述最大校验次数转换成相应的ASCII码,得到第二ASCII码;

第二变形单元,用于将所述第二ASCII码中的每一位码值均分别与预设的第二恒定值进行相加处理,得到变形后的第二ASCII码;

第四转换单元,用于将所述变形后的第二ASCII码转换成相应的字符串,得到第四字符串;

第二随机生成单元,用于随机生成第五字符串和第六字符串;其中,所述第五字符串和所述第六字符串均包括M个字符,M为正整数,并且,所述第五字符串和所述第六字符串之间相加后得到的数值与预设的第二常量相一致;

第二字符嵌入单元,用于在所述第四字符串的头部嵌入所述第五字符串以及在所述第四字符串的尾部嵌入所述第六字符串,得到所述第三加密信息。

本发明还进一步公开了一种软件授权设备,包括:

处理器和存储器;

其中,所述处理器通过调用所述存储器中存储的指令来执行以下步骤:

在用户终端对目标软件进行激活之前,获取所述用户终端的硬件信息以及与所述用户终端对应的用户级别;

根据所述用户级别确定出相应的软件使用时长信息;

利用所述硬件信息和所述软件使用时长信息,生成相应的授权文件;

将所述授权文件发送至所述用户终端,以利用所述授权文件对所述目标软件进行激活处理。

本发明中,软件授权方法包括:在用户终端对目标软件进行激活之前,获取用户终端的硬件信息以及与用户终端对应的用户级别;根据用户级别确定出相应的软件使用时长信息;利用硬件信息和软件使用时长信息,生成相应的授权文件;将授权文件发送至用户终端,以在用户终端上利用授权文件对目标软件进行激活处理。可见,本发明在用户终端对目标软件进行激活之前,先根据用户终端对应的用户级别确定相应的软件使用时长信息,然后利用该软件使用时长信息以及用户终端的硬件信息,生成相应的授权文件,也即,本发明的授权文件中包含了软件使用时长信息,由此可见,本发明是根据不同的用户级别来生成具有不同软件使用时长信息的授权文件,这样软件用户可以根据自身的实际需要,注册成为具有不同级别的软件用户,然后通过购买获取到具有相应软件使用时长信息的授权文件,用户由此可以按需购买软件的服务,从而避免了不必要的浪费,也即,本发明能够满足用户按需使用软件的需求,降低了用户的软件使用成本。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明实施例公开的一种软件授权方法流程图;

图2为本发明实施例公开的一种具体的软件授权方法的子流程图;

图3为本发明实施例公开的另一种具体的软件授权方法的子流程图;

图4为本发明实施例公开的一种软件授权系统结构示意图;

图5为本发明实施例公开的一种具体的软件授权系统结构示意图;

图6为本发明实施例公开的一种软件授权设备结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例公开了一种软件授权方法,参见图1所示,该方法包括:

步骤S11:在用户终端对目标软件进行激活之前,获取用户终端的硬件信息以及与用户终端对应的用户级别。

可以理解的是,本实施例具体可以通过远程通信方式来获取用户终端的硬件信息以及与用户终端对应的用户级别,例如通过互联网通信方式等。

本实施例中,上述硬件信息是与用户终端中的一个或多个硬件模块相关的信息。当用户在上述用户终端上安装目标软件,并注册了具有相应级别的软件用户账号后,该软件用户账号所对应的级别即为本实施例中的用户级别。

上述目标软件可以包括各种商业软件等应用程序,如机器人软件等等,当然,除此之外,上述目标软件也可以包括与应用程序相关的文档。

步骤S12:根据用户级别确定出相应的软件使用时长信息。

可以理解的是,本实施例中用户级别和软件使用时长信息之间是呈正相关关系,也即,用户级别越高,对应的软件使用时长信息中的时长也就越大,相应的软件服务购买费用也越高。

例如,当用户级别为1级,则对应的软件使用时长为1小时,而对应的软件服务购买费用为1元;当用户级别为100级,则对应的软件使用时长为100小时,而对应的软件服务购买费用为100元。

本实施例中,可预先记录不同用户级别和不同软件使用时长信息之间的一一对应关系,当获取到用户终端对应的用户级别后,并可以通过查找该对应关系,获取到与该用户级别对应的软件使用时长信息。当然,本实施例也可以基于用户级别和软件使用时长信息之间的正相关关系,利用用户级别计算出相应的软件使用时长信息。

步骤S13:利用硬件信息和软件使用时长信息,生成相应的授权文件。

本实施例中,利用硬件信息以及软件使用时长信息生成相应的授权文件,这样得到的授权文件中包含了上述软件使用时长信息和上述硬件信息。

步骤S14:将授权文件发送至用户终端,以在用户终端上利用授权文件对目标软件进行激活处理。

本实施例中,用户终端获取到上述授权文件后,将会利用授权文件对目标软件进行激活处理,具体为:对授权文件进行校验,以确定授权文件中携带的硬件信息与用户终端自身的相应硬件模块的信息是否相一致,如果是,则校验成功,从而激活目标软件,如果否,则校验失败,并禁止激活目标软件。

另外,可以理解的是,本实施例中,当目标软件被激活后,将会监测目标软件的总运行时间,当总运行时间增至与软件使用时长信息相一致的数值,则发送相应的软件冻结指令至用户终端,以冻结用户终端中的目标软件,并可销毁用户终端对应的用户级别。

可见,本发明实施例在用户终端对目标软件进行激活之前,先根据用户终端对应的用户级别确定相应的软件使用时长信息,然后利用该软件使用时长信息以及用户终端的硬件信息,生成相应的授权文件,也即,本发明实施例的授权文件中包含了软件使用时长信息,由此可见,本发明实施例是根据不同的用户级别来生成具有不同软件使用时长信息的授权文件,这样软件用户可以根据自身的实际需要,注册成为具有不同级别的软件用户,然后通过购买获取到具有相应软件使用时长信息的授权文件,用户由此可以按需购买软件的服务,从而避免了不必要的浪费,也即,本发明实施例能够满足用户按需使用软件的需求,降低了用户的软件使用成本。

本发明实施例公开了一种具体的软件授权方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。具体的:

上一实施例步骤S11中,需要获取用户终端的硬件信息。其中,硬件信息可以包括MAC地址和/或CPU序列号和/或硬盘序列号。

上一实施例步骤S13中,需要利用硬件信息和软件使用时长信息,生成相应的授权文件。

具体的,上述利用硬件信息和软件使用时长信息,生成相应的授权文件的过程,可以包括下面步骤S131至步骤S133:

步骤S131:利用预设的加密算法,对硬件信息进行加密处理,得到相应的第一加密信息。例如,可以采用MD5算法(MD5,即Message-Digest Algorithm5,信息-摘要算法5)作为上述加密算法。

步骤S132:利用预设的第一加密规则,对软件使用时长信息进行加密处理,得到相应的第二加密信息。本实施例对软件使用时长信息进行加密的目的在于为了避免用户对授权文件中的软件使用时长信息进行随意变更。

步骤S133:生成包括第一加密信息和第二加密信息的授权文件。

另外,上述步骤S132中,利用预设的第一加密规则,对软件使用时长信息进行加密处理,得到相应的第二加密信息的过程,具体包括下面步骤S1321至S1325:

步骤S1321:将软件使用时长信息转换成相应的ASCII码,得到第一ASCII码。

步骤S1322:将第一ASCII码中的每一位码值均分别与预设的第一恒定值进行相加处理,得到变形后的第一ASCII码。可以理解的是,上述第一恒定值可以基于实际需要进行相应的设定,在此不对其进行具体限定。

步骤S1323:将变形后的第一ASCII码转换成相应的字符串,得到第一字符串。

步骤S1324:随机生成第二字符串和第三字符串;其中,第二字符串和第三字符串均包括N个字符,N为正整数,并且,第二字符串和第三字符串之间相加后得到的数值与预设的第一常量相一致。也即,本实施例中,随机生成的第二字符串和第三字符串需要满足它们之和为一常量,其中,上述第一常量可以根据实际情况进行具体设定。本实施例中,上述N值可以取为15,也即,上述随机生成的第二字符串和第三字符串均包括15个字符。

步骤S1325:在第一字符串的头部嵌入第二字符串以及在第一字符串的尾部嵌入第三字符串,得到第二加密信息。也即,按照从首部至尾部的连接顺序,依次将上述第二字符串、第一字符串和第三字符串连接成一组字符串,从而得到上述第二加密信息。

进一步的,在上述步骤S133之前,也即在生成包括第一加密信息和第二加密信息的授权文件的过程之前,还可以包括:

确定激活校验过程中所允许的最大校验次数,然后利用预设的第二加密规则,对最大校验次数进行加密处理,得到相应的第三加密信息。

在得到上述第三加密信息之后,相应的,上述步骤S133中的生成包括第一加密信息和第二加密信息的授权文件的过程,具体可以包括:生成包括第一加密信息、第二加密信息和第三加密信息的授权文件。也即,本实施例中的授权文件除了可以包括上述第一加密信息和第二加密信息,还可以进一步包括上述第三加密信息。

其中,上述利用预设的第二加密规则,对最大校验次数进行加密处理,得到相应的第三加密信息的过程,具体可以包括下面步骤S101至S105:

步骤S101:将最大校验次数转换成相应的ASCII码,得到第二ASCII码。

步骤S102:将第二ASCII码中的每一位码值均分别与预设的第二恒定值进行相加处理,得到变形后的第二ASCII码;可以理解的是,上述第二恒定值可以基于实际需要进行相应的设定,在此不对其进行具体限定。

步骤S103:将变形后的第二ASCII码转换成相应的字符串,得到第四字符串。

步骤S104:随机生成第五字符串和第六字符串;其中,第五字符串和第六字符串均包括M个字符,M为正整数,并且,第五字符串和第六字符串之间相加后得到的数值与预设的第二常量相一致。本实施例中,上述M值可以取为15,也即,上述随机生成的第五字符串和第六字符串均包括15个字符。

步骤S105:在第四字符串的头部嵌入第五字符串以及在第四字符串的尾部嵌入第六字符串,得到第三加密信息。也即,按照从首部至尾部的连接顺序,依次将上述第五字符串、第四字符串和第六字符串连接成一组字符串,从而得到上述第三加密信息。

进一步的,参见图2所示,为了实现灵活变更用户的软件使用期限,本发明实施例还可以进一步的还包括下面步骤S21至SS3:

步骤S21:对用户终端对应的用户级别进行实时监测;

步骤S22:当监测到用户终端对应的用户级别发生变化,则对授权文件中的软件使用时长信息进行相应地更新,得到更新后的授权文件;

步骤S23:将更新后的授权文件发送至用户终端,以利用更新后的授权文件对目标软件进行再次激活处理。

为了避免用户通过重复导入授权文件的方式来恶意延长软件的使用期限,参见图3所示,本发明实施例中的软件授权方法,还可以包括下面步骤S31至S33:

步骤S31:为授权文件创建相应的文件ID号;

步骤S32:当在用户终端上针对授权文件的校验成功后,提取授权文件的文件ID号,并利用该文件ID号对预设的ID数据库进行查找;

步骤S33:若在ID数据库中查找到授权文件的文件ID号,则禁止在用户终端上激活目标软件,若在ID数据库中查找不到授权文件的文件ID号,则允许在用户终端上激活目标软件,并将授权文件的文件ID号保存至ID数据库。

也即,本发明实施例在目标软件被激活后,将会把相应授权文件的文件ID号记录下来。这样,当用户重新导入相同的授权文件的时候,由于ID数据库中之前已经记录了该授权文件的文件ID号,所以此时将无法在用户终端上激活该目标软件。

本实施例中,上述步骤S31中、文件ID号的创建过程可以包括:随机生成第七字符串和第八字符串,然后将第七字符串和第八字符串首尾相连,形成一组新的字符串,从而得到上述文件ID号,其中,第七字符串和第八字符串均包括H个字符,H为正整数,并且,第七字符串和第八字符串之间相加后得到的数值与预设的第三常量相一致。本实施例中,上述H值可以取为15,也即,上述随机生成的第七字符串和第八字符串均包括15个字符。

相应的,本发明实施例还公开了一种软件授权系统,参见图4所示,包括:

信息获取模块41,用于在用户终端对目标软件进行激活之前,获取用户终端的硬件信息以及与用户终端对应的用户级别;

信息确定模块42,用于根据用户级别确定出相应的软件使用时长信息;

文件生成模块43,用于利用硬件信息和软件使用时长信息,生成相应的授权文件;

文件发送模块44,用于将授权文件发送至用户终端,以在用户终端上利用授权文件对目标软件进行激活处理。

可见,本发明实施例在用户终端对目标软件进行激活之前,先根据用户终端对应的用户级别确定相应的软件使用时长信息,然后利用该软件使用时长信息以及用户终端的硬件信息,生成相应的授权文件,也即,本发明实施例的授权文件中包含了软件使用时长信息,由此可见,本发明实施例是根据不同的用户级别来生成具有不同软件使用时长信息的授权文件,这样软件用户可以根据自身的实际需要,注册成为具有不同级别的软件用户,然后通过购买获取到具有相应软件使用时长信息的授权文件,用户由此可以按需购买软件的服务,从而避免了不必要的浪费,也即,本发明实施例能够满足用户按需使用软件的需求,降低了用户的软件使用成本。

本实施例中,上述文件生成模块具体可以包括第一加密子模块、第二加密子模块和文件生成子模块;其中,

第一加密子模块,用于利用预设的加密算法,对硬件信息进行加密处理,得到相应的第一加密信息;

第二加密子模块,用于利用预设的第一加密规则,对软件使用时长信息进行加密处理,得到相应的第二加密信息;

文件生成子模块,用于生成包括第一加密信息和第二加密信息的授权文件。

其中,上述第一加密子模块,具体利用MD5算法对硬件信息进行加密处理,得到上述第一加密信息。

本实施例中,上述第二加密子模块具体可以包括第一转换单元、第一变形单元、第二转换单元、第一随机生成单元和第一字符嵌入单元;其中,

第一转换单元,用于将软件使用时长信息转换成相应的ASCII码,得到第一ASCII码;

第一变形单元,用于将第一ASCII码中的每一位码值均分别与预设的第一恒定值进行相加处理,得到变形后的第一ASCII码;

第二转换单元,用于将变形后的第一ASCII码转换成相应的字符串,得到第一字符串;

第一随机生成单元,用于随机生成第二字符串和第三字符串;其中,第二字符串和第三字符串均包括N个字符,N为正整数,并且,第二字符串和第三字符串之间相加后得到的数值与预设的第一常量相一致;

第一字符嵌入单元,在第一字符串的头部嵌入第二字符串以及在第一字符串的尾部嵌入第三字符串,得到第二加密信息。

进一步的,本实施例中的软件授权系统,还可以包括校验次数确定模块和第三加密子模块;其中,

校验次数确定模块,用于在文件生成子模块生成授权文件之前,确定激活校验过程中所允许的最大校验次数;

第三加密子模块,用于利用预设的第二加密规则,对最大校验次数进行加密处理,得到相应的第三加密信息。

在通过上述第三加密子模块得到上述第三加密信息之后,相应的,上述文件生成子模块,具体用于生成包括第一加密信息、第二加密信息和第三加密信息的授权文件。也即,本实施例中的授权文件除了可以包括上述第一加密信息和第二加密信息,还可以进一步包括上述第三加密信息。

本实施例中,上述第三加密子模块具体可以包括第三转换单元、第二变形单元、第四转换单元、第二随机生成单元和第二字符嵌入单元;其中,

第三转换单元,用于将最大校验次数转换成相应的ASCII码,得到第二ASCII码;

第二变形单元,用于将第二ASCII码中的每一位码值均分别与预设的第二恒定值进行相加处理,得到变形后的第二ASCII码;

第四转换单元,用于将变形后的第二ASCII码转换成相应的字符串,得到第四字符串;

第二随机生成单元,用于随机生成第五字符串和第六字符串;其中,第五字符串和第六字符串均包括M个字符,M为正整数,并且,第五字符串和第六字符串之间相加后得到的数值与预设的第二常量相一致;

第二字符嵌入单元,用于在第四字符串的头部嵌入第五字符串以及在第四字符串的尾部嵌入第六字符串,得到第三加密信息。

进一步的,参见图5所示,为了实现灵活变更用户的软件使用期限,本发明实施例中的软件授权系统,还可以包括用户级别监测模块51和文件更新模块52;其中,

用户级别监测模块51,用于对用户终端对应的用户级别进行实时监测;

文件更新模块52,用于当用户级别监测模块监测到用户终端对应的用户级别发生变化,则对授权文件中的软件使用时长信息进行相应地更新,得到更新后的授权文件;

相应的,文件发送模块44,还用于将更新后的授权文件发送至用户终端,以利用更新后的授权文件对目标软件进行再次激活处理。

为了避免用户通过重复导入授权文件的方式来恶意延长软件的使用期限,本发明实施例中的软件授权系统,还可以进一步包括ID号创建模块、ID号提取模块、ID号查找模块和激活控制模块;其中,

ID号创建模块,用于为授权文件创建相应的文件ID号;

ID号提取模块,用于当在用户终端上针对授权文件的校验成功后,提取授权文件的文件ID号;

ID号查找模块,用于利用ID号提取模块提取到的文件ID号对预设的ID数据库进行查找;

激活控制模块,用于当ID号查找模块在ID数据库中查找到授权文件的文件ID号,则禁止在用户终端上激活目标软件,若ID号查找模块在ID数据库中查找不到授权文件的文件ID号,则允许在用户终端上激活目标软件,并将授权文件的文件ID号保存至ID数据库。

本发明实施例还公开了一种软件授权设备,参见图6所示,该软件授权设备包括:处理器61和存储器62;

其中,处理器61通过调用存储器62中存储的指令来执行以下步骤:

在用户终端对目标软件进行激活之前,获取用户终端的硬件信息以及与用户终端对应的用户级别;根据用户级别确定出相应的软件使用时长信息;利用硬件信息和软件使用时长信息,生成相应的授权文件;将授权文件发送至用户终端,以利用授权文件对目标软件进行激活处理。

可以理解的是,本实施例中的软件授权设备还可以进一步包括电池63、通信芯片64、显示屏65、摄像头66、输出装置67和输入装置68。

可以理解的是,本实施例中处理器、存储器、电池、通信芯片、显示屏、摄像头、输出装置和输入装置的数量均可以是单数个,也可以是复数个,在此不对它们进行一一限定。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上对本发明所提供的一种软件授权方法、系统及设备进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

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