许可证发布方法、许可验证方法、系统及电子设备与流程

文档序号:16404618发布日期:2018-12-25 20:20阅读:191来源:国知局
许可证发布方法、许可验证方法、系统及电子设备与流程

本发明涉及计算机技术领域,具体而言,涉及许可证发布方法、许可验证方法、系统及电子设备。

背景技术

软件的盗版和非法使用一直困扰着软件产品开发商,它直接导致了销售量下降和利润流失,极大的打击了软件产品开发商的积极性,并极大的阻碍软件产业的发展。为了保护知识产权,防止非法使用,目前普遍的应用软件保护技术是向用户提供license(许可证)文件,由license文件控制软件产品的运行,控制软件在授权范围内使用。

而现有技术中,是用户在申请license授权文件时,通过向软件开发商提供安装license文件的服务器的设备特征码,例如:mac(mediaaccesscontrol,媒体访问控制)地址、cpu(centralprocessingunit,中央处理器)序列号、硬盘序列号等,从而进行授权。使得用户在更换服务器时需要重新向软件开发商提供安装license文件的服务器的设备特征码以申请授权,从而影响用户的使用。同时,由于mac地址等可以通过一些技术手段进行修改,如果非法人员通过非法途径获知license文件的生成算法,将导致软件产品的许可授权大面积失效,以及对软件开发商造成巨大损失。



技术实现要素:

为解决上述问题,本发明实施例提供许可证发布方法、许可验证方法、系统及电子设备。

第一方面,本发明实施例提供了一种许可证发布方法,所述方法包括:获取用于存储软件产品的移动介质的第一特征码、所述软件产品的第二特征码以及预设共享密钥;根据所述第一特征码、所述第二特征码和所述预设共享密钥生成签名数据;根据所述签名数据生成所述软件产品的许可证文件;将所述许可证文件保存在所述移动介质上所述软件产品的预设目录中。本方法中,通过移动介质的第一特征码、软件产品的第二特征码以及预设共享密钥生成签名数据,并通过签名数据生成软件产品的许可证文件,从而将许可授权与移动介质的第一特征码、软件产品的第二特征码以及预设共享密钥实现绑定,从而增强了安全性。并且通过将软件产品的许可授权通过移动介质完成,而软件产品的授权不再需要与用户的软件服务器绑定,使得即使用户的软件服务器mac地址等特征被篡改,也不会被授权,进一步提高了授权的安全性,以及当用户更换服务器后再次申请license授权时,只需要通过移动介质即可完成,而不再需要重新申请license授权,所以,相对于现有技术中授权存在的安全性以及授权操作麻烦的问题,则本方案中采用移动介质的第一特征码、软件产品的第二特征码以及预设共享密钥来完成授权则操作更简单以及更安全,使得用户在更换服务器后不再需要重新申请license授权,进而降低了授权操作的繁琐程度以及提高了授权的安全性。

进一步地,所述的获取预设共享密钥,包括:按照预设规则从预设的密钥池中获取一个或多个密钥作为预设共享密钥。

进一步地,所述的根据所述第一特征码、所述第二特征码和所述预设共享密钥生成签名数据,包括:通过md5散列算法对所述第一特征码、所述第二特征码和所述预设共享密钥进行签名,生成所述签名数据。

进一步地,所述的根据所述第一特征码、所述第二特征码和所述预设共享密钥生成签名数据,包括:将所述第一特征码、所述第二特征码和所述预设共享密钥进行组合,生成待签名数据;通过md5散列算法对所述待签名数据进行签名,生成所述签名数据。

进一步地,所述的将所述许可证文件保存在所述软件产品的预设目录中,包括:将所述许可证文件保存在所述软件产品的预设目录中并隐藏。

第二方面,本发明实施例提供了一种许可验证方法,所述方法包括:在对目标软件产品进行预设操作时,获取存储所述目标软件产品的移动介质的第一特征码;并获取所述目标软件产品的第二特征码以及获取所述目标软件产品中预置的预设共享密钥;根据所述第一特征码、所述第二特征码和预设共享密钥生成目标签名数据;获取所述目标软件产品中预置的许可证文件,所述许可证文件包括预置签名数据;其中,生成所述目标签名数据的规则与生成所述预置签名数据的规则相同;判断所述目标签名数据是否与所述预置签名数据匹配;若所述目标签名数据与所述预置签名数据匹配,则对所述目标软件产品进行所述预设操作。

进一步地,所述的获取存储所述目标软件产品的移动介质的第一特征码,包括:根据预设时间间隔获取存储所述目标软件产品的移动介质的第一特征码。

第三方面,本发明实施例提供一种许可证发布系统,所述系统包括:数据获取模块,用于获取用于存储软件产品的移动介质的第一特征码、所述软件产品的第二特征码以及预设共享密钥;第一数据处理模块,用于根据所述第一特征码、所述第二特征码和所述预设共享密钥生成签名数据;第二数据处理模块,用于根据所述签名数据生成所述软件产品的许可证文件;数据存储模块,用于将所述许可证文件保存在所述移动介质上所述软件产品的预设目录中。

第四方面,本发明实施例提供一种许可验证系统,所述系统包括:第一数据获取模块,用于在对目标软件产品进行预设操作时,获取存储所述目标软件产品的移动介质的第一特征码;并获取所述目标软件产品的第二特征码以及获取所述目标软件产品中预置的预设共享密钥;数据生成模块,用于根据所述第一特征码、所述第二特征码和预设共享密钥生成目标签名数据;第二数据获取模块,用于获取所述目标软件产品中预置的许可证文件,所述许可证文件包括预置签名数据;其中,生成所述目标签名数据的规则与生成所述预置签名数据的规则相同;数据处理模块,用于判断所述目标签名数据是否与所述预置签名数据匹配;执行模块,用于若所述目标签名数据与所述预置签名数据匹配,则对所述目标软件产品进行所述预设操作。

第五方面,本发明实施例提供一种电子设备,包括处理器以及存储器,所述存储器存储有计算机可读取指令,当所述计算机可读取指令由所述处理器执行时,运行如上述第一方面提供的方法;或者,当所述计算机可读取指令由所述处理器执行时,运行如上述第二方面提供的方法。

与现有技术相比,本发明实施例提供的许可证发布方法、许可验证方法、系统及电子设备带来了以下有益效果:通过移动介质的第一特征码、软件产品的第二特征码以及预设共享密钥生成签名数据,并通过签名数据生成软件产品的许可证文件,从而将许可授权与移动介质的第一特征码、软件产品的第二特征码以及预设共享密钥实现绑定,从而增强了安全性。并且通过将软件产品的许可授权通过移动介质完成,而软件产品的授权不再需要与用户的软件服务器绑定,使得用户的软件服务器mac地址等特征被篡改,也不会被授权,进一步提高了授权的安全性,以及当用户更换服务器后再次申请license授权时,只需要通过移动介质即可完成,而不再需要重新申请license授权,所以,相对于现有技术中授权存在的安全性以及授权操作麻烦的问题,则本方案中采用移动介质的第一特征码、软件产品的第二特征码以及预设共享密钥来完成授权则操作更简单以及更安全,使得用户在更换服务器后不再需要重新申请license授权,进而降低了授权操作的繁琐程度以及提高了授权的安全性。

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

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本发明第一实施例提供的一种许可证发布方法的流程图;

图2为本发明第二实施例提供的一种许可验证方法的流程图;

图3为本发明第三实施例提供的一种许可证发布系统的结构框图;

图4为本发明第四实施例提供的一种许可验证系统的结构框图;

图5示出了一种可应用于本发明实施例中的电子设备的结构框图;

图6为本发明实施例提供的一种电子设备的另一种结构示意图。

具体实施方式

下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

第一实施例

由于现有的许可授权是用户在申请license授权文件时,通过向软件开发商提供安装license文件的服务器的设备特征码,例如:mac地址、cpu序列号、硬盘序列号等,从而进行授权。使得用户在更换服务器时需要重新向软件开发商提供安装license文件的服务器的设备特征码以申请授权,为了降低授权操作的繁琐程度,本实施例提供了一种许可证发布方法,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。以下对本实施例进行详细介绍。

请参照图1,图1为本发明实施例提供的一种许可证发布方法的流程图,所述方法包括如下步骤:

步骤s101:获取用于存储软件产品的移动介质的第一特征码、所述软件产品的第二特征码以及预设共享密钥。

其中,移动介质可以是,但不限于u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序软件产品的介质。

第一特征码可以是,但不限于pid(productid,产品识别码)、vid(vendorid,供应商id)或sn(serialnumber,序列号)等。

第二特征码可以是,但不限于软件版本号、软件产品安装包文件的md5散列签名或唯一标识此软件产品的一个特征数据(例如,该特征数据可以是以软件产品功能或版本号组合形成的字符串,例如,以1代表功能,然后将1与版本号组合形成的字符串)等。

举例来说,第二特征码可以是通过对软件版本号进行md5散列签名后的签名数据。

在实际使用中,预设共享密钥为在许可证生成工具和软件产品中预置的密钥,可以是1个密钥,也可以是密钥池。

作为一种实施方式,步骤s101包括:获取用于存储软件产品的移动介质的第一特征码、所述软件产品的第二特征码以及按照预设规则从预设的密钥池中获取一个或多个密钥作为预设共享密钥。

可选地,按照预设规则从预设的密钥池中获取一个或多个密钥作为预设共享密钥,包括:按照随机算法从预设的密钥池中获取一个或多个密钥作为预设共享密钥。

可选地,按照预设规则从预设的密钥池中获取一个或多个密钥作为预设共享密钥,包括:从预设的密钥池中选择一个或多个排列顺序为偶数位的密钥作为预设共享密钥。

举例来说,假设,密钥池中的密钥按照时间或空间或大小顺序进行排序,然后选择一个或多个处于排序中的偶数位的密钥作为预设共享密钥。例如,假设密钥池中有4个密钥,其中,4个密钥分别为密钥1、密钥2、密钥3和密钥4,其中,排序顺序为:密钥1->密钥2->密钥3->密钥4。假设需要取一个偶数位的密钥作为预设共享密钥,则可以是取密钥2,也可以是取密钥4。

在本实施例中,通过加入密钥,可以使得用户即使修改移动介质的第一特征码后,也无法轻易破解,从而有效增加了破解难度,进而提高了许可授权的安全性。进一步,通过设置秘钥池可以进一步增加秘钥被破解的难度,提高许可授权的安全性。

步骤s102:根据所述第一特征码、所述第二特征码和所述预设共享密钥生成签名数据。

作为一种可能的实施方式,步骤s102包括:通过md5(messagedigestalgorithm5,消息摘要算法第五版)散列算法对所述第一特征码、所述第二特征码和所述预设共享密钥进行签名,生成所述签名数据。

可选地,通过md5散列算法对所述第一特征码、所述第二特征码和所述预设共享密钥进行签名,生成所述签名数据,包括:将所述第一特征码、所述第二特征码和所述预设共享密钥进行组合,生成待签名数据;通过md5散列算法对所述待签名数据进行签名,生成所述签名数据。

可选地,将所述第一特征码、所述第二特征码和所述预设共享密钥进行组合,包括:将所述第一特征码、所述第二特征码和所述预设共享密钥的所对应的排列顺序进行随机组合。例如,组合后的数据排序为:第一特征码->第二特征码->预设共享密钥。或者是第一特征码->预设共享密钥->第二特征码等。

当然,在实际运用中,也可以采用其它算法对所述第一特征码、所述第二特征码和所述预设共享密钥进行签名,生成所述签名数据,例如,其它算法可以是,但不限于crc(cyclicredundancycheck,循环冗余校验)算法、sha(securehashalgorithm,安全散列算法)、或ripemd(raceintegrityprimitivesevaluationmessagedigest,race原始完整性校验消息摘要)算法等。

步骤s103:根据所述签名数据生成所述软件产品的许可证文件。

许可证文件可以只包括签名数据,也可以还包括其他数据,例如时间、操作日志、许可证版本、授权范围等。

步骤s104:将所述许可证文件保存在所述移动介质上所述软件产品的预设目录中。

作为一种可能的实施方式,将所述许可证文件保存在所述软件产品的预设目录中,包括:将所述许可证文件保存在所述软件产品的预设目录中并隐藏。

通过将许可证文件进行隐藏,可以有效避免非法用户直接获取,进一步提高了安全性。

其中,预设目录可以是软件产品的任意目录,例如,可以是根目录,也可以是子目录。在此,不作具体限定。

可选地,软件产品可以与许可证文件存储在同一移动介质中,还可以分开存储,或者是先将软件产品烧录到移动介质中,然后再生成许可证。或者是先生成许可证,再将软件产品烧录到移动介质中。

在实际使用时,为了使得非法用户不能从移动介质中拷贝软件产品复用,有效避免了软件产品非授权传播,将软件产品与许可证文件分开存储,如将许可证文件通过其他的移动介质进行存储,进而使得非法用户即使拿到软件产品,在没有许可证文件的前提下,依然无法使用,即使非法用户即使拿到了合法的许可证文件,如果没有该许可证文件绑定的移动介质,那么许可证文件也是无效的;同样的,将合法的许可证文件及其绑定的移动介质用于不同版本的产品中,也是无效的,进而以克服非法用户不能从移动介质中拷贝软件产品复用的技术问题,实现了有效避免了软件产品非授权传播的技术修效果。

本发明实施例提供的许可证发布方法,通过移动介质的第一特征码、软件产品的第二特征码以及预设共享密钥生成签名数据,并通过签名数据生成软件产品的许可证文件,从而将许可授权与移动介质的第一特征码、软件产品的第二特征码以及预设共享密钥实现绑定,从而增强了安全性。并且通过将软件产品的许可授权通过移动介质完成,而软件产品的授权不再需要与用户的软件服务器绑定,使得即使用户的软件服务器mac地址等特征被篡改,也不会被授权,进一步提高了授权的安全性,以及当用户更换服务器后再次申请license授权时,只需要通过移动介质即可完成,而不再需要重新申请license授权,所以,相对于现有技术中授权存在的安全性以及授权操作麻烦的问题,则本方案中采用移动介质的第一特征码、软件产品的第二特征码以及预设共享密钥来完成授权则操作更简单以及更安全,使得用户在更换服务器后不再需要重新申请license授权,进而降低了授权操作的繁琐程度以及提高了授权的安全性。

第二实施例

请参照图2,图2为本发明实施例提供的一种许可验证方法的流程图,所述方法包括如下步骤:

步骤s201:在对目标软件产品进行预设操作时,获取存储所述目标软件产品的移动介质的第一特征码;并获取所述目标软件产品的第二特征码以及获取所述目标软件产品中预置的预设共享密钥。

其中,预设操作可以是,但不限于用于安装软件产品的安装操作、用于对软件产品进行升级的升级操作或用于运行软件产品的运行操作等。

可选地,在软件产品运行时,为了避免影响软件的正常运行降低软件运行的效率,获取存储所述目标软件产品的移动介质的第一特征码,包括:根据预设时间间隔获取存储所述目标软件产品的移动介质的第一特征码,以通过在预设时间间隔实现周期性的读移动介质的第一特征码来进行验证,从而有效减少读移动介质的第一特征码的次数,进而提高软件运行的效率。

其中,预设时间间隔的设置可以根据用户实际需求进行设置,例如,每天22:00点读一次移动介质的第一特征码。

其中,第一特征码、第二特征码以及预设共享密钥的具体实施方式请参照第一实施例所对应的实施步骤,在此,不再赘述。

可选地,当许可证文件中的预设共享密钥为随机选取的,则获取所述目标软件产品中预置的预设共享密钥,包括:从所述目标软件产品中预置的密钥池中轮询密钥或密钥组合,生成所述密钥池对应的所有待比对组合,将每个待比对组合分别与许可证文件中的预设共享密钥进行匹配,若匹配,将该待比对组合作为所述目标软件产品的预设共享密钥,并将此组合方式记录到内存中,便于下次直接对比验证。从而保证在进行验证时,得到的密钥与存储在移动介质中的许可证文件对应的密钥匹配,进而能够保证合法的验证能够正常执行。

在本实施例中,由于移动介质同时只能运行在一个软件服务器上,从而可以达到现有技术中通过软件服务器特征码控制license文件使用范围一样的效果。并且通过将许可证文件与移动介质绑定,导致通过修改软件服务器mac等特征码的方式再也不能破解许可授权,即使修改移动介质的第一特征码,也因为在绑定时进行了预设共享密钥处理,进一步增加了破解难度,有效提高了许可授权的安全性。

步骤s202:根据所述第一特征码、所述第二特征码和预设共享密钥生成目标签名数据。

步骤s202的具体实施方式请参照第一实施例所对应的实施步骤,在此,不再赘述。

步骤s203:获取所述目标软件产品中预置的许可证文件,所述许可证文件包括预置签名数据;其中,生成所述目标签名数据的规则与生成所述预置签名数据的规则相同。

步骤s204:判断所述目标签名数据是否与所述预置签名数据匹配。

通过将目标签名数据对应的签名值与所述预置签名数据对应的签名值进行比对,如果标签名数据对应的签名值与所述预置签名数据对应的签名值相等,则表示所述目标签名数据与所述预置签名数据匹配。

步骤s205:若所述目标签名数据与所述预置签名数据匹配,则对所述目标软件产品进行所述预设操作。

在所述目标签名数据与所述预置签名数据匹配时,继续对所述目标软件产品执行所述预设操作,例如,在软件产品进行安装时,若目标签名数据与所述预置签名数据匹配,则继续安装。

在一可选地实施例中,在步骤s205之后,还包括:若所述目标签名数据与所述预置签名数据匹配,记录当前使用的预设共享密钥(例如,在内存中记录当前使用的预设共享密钥),当重启系统后预设共享密钥失效。其中,当预设共享密钥失效后,再次验证时,需要重新轮询计算预设共享密钥。

本发明实施例提供的许可验证方法,通过在对目标软件产品进行预设操作时,获取存储所述目标软件产品的移动介质的第一特征码;以及所述目标软件产品的第二特征码以及获取所述目标软件产品中预置的预设共享密钥,然后按照目标软件产品中预置的许可证文件中生成预置签名数据的规则生成目标签名数据,通过将目标签名数据与预置签名数据进行匹配,从而实现许可验证,当目标签名数据与预置签名数据匹配时,表示许可验证通过。从而通过在移动介质来实现许可验证,可以使得用户在更换服务器后再次申请license授权时,只需要通过插入移动介质即可完成,而不再需要重新申请license授权。

第三实施例

对应于第一实施例中的许可证发布方法,图3示出了采用第一实施例所示的许可证发布方法一一对应的许可证发布系统。如图3所示,所述许可证发布系统400包括数据获取模块410、第一数据处理模块420、第二数据处理模块430和数据存储模块440。其中,数据获取模块410、第一数据处理模块420、第二数据处理模块430和数据存储模块440的实现功能与第一实施例中对应的步聚一一对应,为避免赘述,本实施例不一一详述。

数据获取模块410,用于获取用于存储软件产品的移动介质的第一特征码、所述软件产品的第二特征码以及预设共享密钥。

可选地,数据获取模块410还用于获取用于存储软件产品的移动介质的第一特征码、所述软件产品的第二特征码以及按照预设规则从预设的密钥池中获取一个或多个密钥作为预设共享密钥。

第一数据处理模块420,用于根据所述第一特征码、所述第二特征码和所述预设共享密钥生成签名数据。

可选地,第一数据处理模块420还用于:通过md5散列算法对所述第一特征码、所述第二特征码和所述预设共享密钥进行签名,生成所述签名数据。

可选地,第一数据处理模块420还用于:将所述第一特征码、所述第二特征码和所述预设共享密钥进行组合,生成待签名数据;通过md5散列算法对所述待签名数据进行签名,生成所述签名数据。

第二数据处理模块430,用于根据所述签名数据生成所述软件产品的许可证文件。

数据存储模块440,用于将所述许可证文件保存在所述移动介质上所述软件产品的预设目录中。

可选地,数据存储模块440还用于:将所述许可证文件保存在所述软件产品的预设目录中并隐藏。

第四实施例

对应于第二实施例中的许可验证方法,图4示出了采用第二实施例所示的许可验证方法一一对应的许可验证系统。如图4所示,所述许可验证系统500包括第一数据获取模块510、数据生成模块520、第二数据获取模块530、数据处理模块540和执行模块550。其中,第一数据获取模块510、数据生成模块520、第二数据获取模块530、数据处理模块540和执行模块550的实现功能与第二实施例中对应的步聚一一对应,为避免赘述,本实施例不一一详述。

第一数据获取模块510,用于在对目标软件产品进行预设操作时,获取存储所述目标软件产品的移动介质的第一特征码;并获取所述目标软件产品的第二特征码以及获取所述目标软件产品中预置的预设共享密钥。

可选地,第一数据获取模块510还用于:在对目标软件产品进行预设操作时,根据预设时间间隔获取存储所述目标软件产品的移动介质的第一特征码;并获取所述目标软件产品的第二特征码以及获取所述目标软件产品中预置的预设共享密钥。

数据生成模块520,用于根据所述第一特征码、所述第二特征码和预设共享密钥生成目标签名数据。

第二数据获取模块530,用于获取所述目标软件产品中预置的许可证文件,所述许可证文件包括预置签名数据;其中,生成所述目标签名数据的规则与生成所述预置签名数据的规则相同。

数据处理模块540,用于判断所述目标签名数据是否与所述预置签名数据匹配。

执行模块550,用于若所述目标签名数据与所述预置签名数据匹配,则对所述目标软件产品进行所述预设操作。

第五实施例

如图5所示,是终端设备300的示意图。所述终端设备300包括存储器302、处理器304以及存储在所述存储器302中并可在所述处理器304上运行的计算机可读取指令303。当所述计算机可读取指令303由所述处理器304执行时,运行如第一实施例中的所述许可证发布方法,为避免重复,此处不再赘述。或者,当所述计算机可读取指令303由所述处理器304执行时,运行如第二实施例中的所述许可验证方法,为避免重复,此处不再赘述。或者,当所述计算机可读取指令303由所述处理器304执行时,实现如第三实施例所述许可证发布系统中各模型/单元的功能,为避免重复,此处不再赘述。或者,当所述计算机可读取指令303由所述处理器304执行时,实现如第四实施例所述许可验证系统中各模型/单元的功能,为避免重复,此处不再赘述。

示例性的,计算机可读取指令303可以被分割成一个或多个模块/单元,一个或者多个模块/单元被存储在存储器302中,并由处理器304执行,以完成本发明。一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机可读取指令303在终端设备300中的执行过程。例如,计算机可读取指令303可以被分割成第三实施例中的数据获取模块410、第一数据处理模块420、第二数据处理模块430和数据存储模块440,各模块的具体功能如第一实施例或第三实施例所述,在此不一一赘述。

其中,存储器302可以是,但不限于,随机存取存储器(randomaccessmemory,ram),只读存储器(readonlymemory,rom),可编程只读存储器(programmableread-onlymemory,prom),可擦除只读存储器(erasableprogrammableread-onlymemory,eprom),电可擦除只读存储器(electricerasableprogrammableread-onlymemory,eeprom)等。其中,存储器302用于存储程序,所述处理器304在接收到执行指令后,执行所述程序,前述本发明实施例任一实施例揭示的流程定义的方法可以应用于处理器304中,或者由处理器304实现。

处理器304可能是一种集成电路芯片,具有信号的处理能力。上述的处理器304可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)、网络处理器(networkprocessor,np)等;还可以是数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

可以理解的是,图5所示的结构仅为终端设备300的一种结构示意图,终端设备300还可以包括比图5所示更多或更少的组件。图4中所示的各组件可以采用硬件、软件或其组合实现。

请参照图6,图6为本发明实施例提供的一种电子设备的另一种结构示意图,所述电子设备可以包括:至少一个处理器110,例如cpu,至少一个通信接口120,至少一个存储器130和至少一个通信总线140。其中,通信总线140用于实现这些组件直接的连接通信。其中,本发明实施例中设备的通信接口120用于与其他节点设备进行信令或数据的通信。存储器130可以是高速ram存储器,也可以是非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器。存储器130可选的还可以是至少一个位于远离前述处理器的存储装置。存储器130中存储有计算机可读取指令,当所述计算机可读取指令由所述处理器110执行时,电子设备执行上述图1或图2所示方法过程。或者是电子设备实现上述图3或图4所示装置的功能。

综上所述,本发明实施例提供许可证发布方法、许可验证方法、系统及电子设备,通过移动介质的第一特征码、软件产品的第二特征码以及预设共享密钥生成签名数据,并通过签名数据生成软件产品的许可证文件,从而将许可授权与移动介质的第一特征码、软件产品的第二特征码以及预设共享密钥实现绑定,从而增强了安全性。并且通过将软件产品的许可授权通过移动介质完成,而软件产品的授权不再需要与用户的软件服务器绑定,使得即使mac地址被篡改,也不会被授权,进一步提高了授权的安全性,以及当用户更换服务器后再次申请license授权时,只需要通过移动介质即可完成,而不再需要重新申请license授权,所以,相对于现有技术中授权存在的安全性以及授权操作麻烦的问题,则本方案中采用移动介质的第一特征码、软件产品的第二特征码以及预设共享密钥来完成授权则操作更简单以及更安全,使得用户在更换服务器后不再需要重新申请license授权,进而降低了授权操作的繁琐程度以及提高了授权的安全性。

在本发明所提供的几个实施例中,应该理解到,所揭露的系统和方法,也可以通过其它的方式实现。以上所描述的系统实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者电子设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

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