一种软件授权方法、装置及系统制造方法及图纸

技术编号:18019109 阅读:114 留言:0更新日期:2018-05-23 05:17
本发明专利技术提供一种软件的授权方法、装置及系统。该方法包括:基于客户端运行目标软件程序所产生的客户端特征,生成授权信息,其中,所述客户端特征包括客户端硬件特征和软件特征;基于将所述授权信息返回给客户端,进行目标软件程序的授权。本发明专利技术通过客户机的软件特征、硬件特征进而结合环境变量获取具备可靠的伪动态客户特征,通过客户特征为客户提供专用的灵活的软件授权,能够提高软件授权的可靠性及灵活性。

【技术实现步骤摘要】
一种软件授权方法、装置及系统
本专利技术涉及信息安全领域,尤其涉及一种软件授权方法及装置。
技术介绍
作为软件供应方,若想保护自身软件作品的权益,需要一些有效手段保护其软件产品的核心技术,以确保自己的竞争优势。同时需要借助软件授权的交付方式来保证软件应用的可控性,并根据客户的需求及支付情况启用相应的功能和产品特性。目前常见的软件保护技术分为硬件授权、软件授权两大类。硬件授权使用附加的硬件产品为USB、PCIE等总线上的设备,安全性较高,但普遍使用成本也很高。而软件授权可分为在线和离线两大类,软件授权安全性低于硬件授权。在线授权依托互联网,可实现授权的动态控制及在线激活,但存在使用场景限制时,离线授权不受影响。
技术实现思路
有鉴于此,本专利技术的目的是提供一种软件授权的方法,能够提高软件授权的可靠性及灵活性。根据本专利技术的第一方面,提供一种软件的授权方法,其特征在于,包括:基于客户端运行目标软件程序所产生的客户端特征,生成授权信息,其中,所述客户端特征包括客户端硬件特征和软件特征;基于将所述授权信息返回给客户端,进行目标软件程序的授权。进一步的,基于客户端运行目标软件程序所产生的客户端特征,生成授权信息,其中,所述客户端特征包括客户端硬件特征和软件特征,包括:所述客户端特征是客户端在运行目标软件程序时由获取的客户端硬件特征、软件特征并结合环境随机变量计算产生;授权服务器接收到来自客户端的客户端特征,生成授权信息;和/或,基于将所述授权信息返回给客户端,进行目标软件程序的授权,包括:授权服务器端将生成的授权信息发送给客户端的用户;用户将所述授权信息输入到客户端的目标软件程序中,完成验证以进行授权。进一步的,所述客户端特征是客户端在运行目标软件程序时由获取的客户端硬件特征、软件特征并结合环境随机变量计算产生,包括:获取客户端硬件特征;获取客户端软件特征;获取客户端环境随机变量R;使用客户端硬件特征、客户端软件特征生成终端特征C;使用第一序列化方式将终端特征C与客户端环境随机变量R序列化,得到客户端特征。进一步的,所述硬件特征包括:CPU序列号A1、硬盘序列号A2、主板序列号A3和/或MAC地址A4;和/或,所述软件特征包括:操作系统信息、操作系统序列号、客户简要信息、和/或当前安装软件版本号;和/或,所述客户端环境随机变量R包括:根据客户端当前系统时间、和/或客户端所在的地理位置得出;和/或,所述使用客户端硬件特征、客户端软件特征生成终端特征C,包括:以主板序列号A3作为初始值,并将A3数值求和并对255求余数得到A5;使用顺序打乱函数F1将A1的原始数据以A5作为参数打乱得到B1,同时使用A5作为参考值,作为选择顺序打乱函数F2、F3、F4、F5的决定性因素,使用选择的顺序打乱函数,使用A5作为参数对A2进行打乱处理得到B2;将A3与A4进行循环异或得到B3;使用B3的数值求和并对255求余数得到A6;根据A6在F1、F2、F3、F4、F5中选取一个函数使用A6作为参数对B1、B2与B3的异或值打乱,得到终端特征C;和/或,所述使用第一序列化方式将终端特征C与客户端环境随机变量R序列化,得到客户端特征,包括:使用客户端环境随机变量R对终端特征C进行加密得到加密后的终端特征CX,合并客户端环境随机变量R和终端特征CX,并进行混淆性质的数据打乱,得到客户端特征。进一步的,生成授权信息,包括:在授权服务器端使用第一反序列化方式对所述客户端特征作还原处理,得到客户端的终端特征C及客户端环境随机变量R;获取服务器端环境随机变量,并基于用户的需求,根据终端特征C以及服务器端环境随机变量生成授权信息;所述授权信息包含服务器端环境随机变量和客户端终端特征C。进一步的,所述服务器端环境随机变量包含生成授权信息的详细时间、生成授权信息操作方的唯一ID;和/或,在使用第一反序列化方式对所述客户端特征作还原处理前,还包括:检测客户端特征的数据长度及客户端特征数据校验是否出现异常的步骤;和/或,在使用第一反序列化方式对所述客户端特征作还原处理后,还包括:对客户端环境随机变量R中的环境信息及客户端特征数据进行校验的步骤;和/或,获取服务器端环境随机变量,并基于用户的需求,根据终端特征C以及服务器端环境随机变量生成授权信息,包括:记录客户端特征,构建授权信息需求,根据授权信息需求生成第一授权信息,所述第一授权信息包含至少一组功能授权信息。进一步的,使用第二序列化方式将所述第一授权信息序列化,得到第二授权信息;和/或,所述授权信息需求至少包括:授权请求时间、授权请求功能信息、和/或授权操作人;和/或,每一组功能授权信息至少包括:功能名称、授权类型、权限级别、授权时间和/或授权时长。进一步的,所述使用第二序列化方式将所述第一授权信息序列化,包括:对所述第一授权信息进行可恢复的混淆打乱后加密,再将其转化为文本格式的授权信息文本。进一步的,用户将所述授权信息输入到客户端的目标软件程序中,完成验证以进行授权,包括:对授权信息中的客户端特征与当前客户端的特征进行比较,同时检查授权信息的生成时间、授权信息包含的授权内容是否异常,如无异常根据授权信息中的功能授权信息对软件功能进行激活;或者,用户将所述授权信息输入到客户端的目标软件程序中,使用第二反序列化方式对授权信息进行反序列化操作得到原始授权信息,对原始授权信息中的客户端特征与本当前客户端的特征进行比较,同时检查原始授权信息的生成时间、包含的授权内容是否异常,如无异常根据原始授权信息中的功能授权信息对软件功能进行激活。进一步的,所述使用第二反序列化方式对授权信息进行反序列化操作得到原始授权信息,包括:将文本信息还原为字节数据后执行解密操作,最后对解密后的数据还原混淆内容并恢复数据顺序。根据本专利技术的第二方面,提供一种软件的授权方法,其特征在于,包括:根据客户端的目标软件程序运行,产生客户端特征并发送客户端特征到授权服务器端,其中,所述客户端特征包括客户端硬件特征和软件特征;基于服务器端返回给客户端的、根据所述客户端特征生成的授权信息,进行目标软件程序的授权。进一步的,根据客户端的目标软件程序运行,产生客户端特征并发送客户端特征到授权服务器端,其中,所述客户端特征包括客户端硬件特征和软件特征,包括:客户端在运行目标软件程序时,获取客户端硬件特征、软件特征、环境随机变量,计算产生客户端特征;和/或,基于服务器端返回给客户端的、根据所述客户端特征生成的授权信息,进行目标软件程序的授权,包括:客户端的用户接收来自授权服务器生成的授权信息,用户将所述授权信息输入到客户端的目标软件程序中,完成验证以进行授权,其中,授权服务器接收到来自客户端的客户端特征,生成该授权信息。进一步的,客户端在运行目标软件程序时,获取客户端硬件特征、软件特征、环境随机变量,计算产生客户端特征,包括:获取客户端硬件特征;获取客户端软件特征;获取客户端环境随机变量R;使用客户端硬件特征、客户端软件特征生成终端特征C;使用第一序列化方式将终端特征C与客户端环境随机变量R序列化,得到客户端特征。进一步的,所述硬件特征包括:CPU序列号A1、硬盘序列号A2、主板序列号A3和/或MAC地址A4;和/或,所述软件特征包括:操作系统信息、操作系统序本文档来自技高网...
一种软件授权方法、装置及系统

【技术保护点】
一种软件的授权方法,其特征在于,包括:基于客户端运行目标软件程序所产生的客户端特征,生成授权信息,其中,所述客户端特征包括客户端硬件特征和软件特征;基于将所述授权信息返回给客户端,进行目标软件程序的授权。

【技术特征摘要】
1.一种软件的授权方法,其特征在于,包括:基于客户端运行目标软件程序所产生的客户端特征,生成授权信息,其中,所述客户端特征包括客户端硬件特征和软件特征;基于将所述授权信息返回给客户端,进行目标软件程序的授权。2.如权利要求1所述的方法,其特征在于,基于客户端运行目标软件程序所产生的客户端特征,生成授权信息,其中,所述客户端特征包括客户端硬件特征和软件特征,包括:所述客户端特征是客户端在运行目标软件程序时由获取的客户端硬件特征、软件特征并结合环境随机变量计算产生;授权服务器接收到来自客户端的客户端特征,生成授权信息;和/或,基于将所述授权信息返回给客户端,进行目标软件程序的授权,包括:授权服务器端将生成的授权信息发送给客户端的用户;用户将所述授权信息输入到客户端的目标软件程序中,完成验证以进行授权。3.如权利要求2所述的方法,其特征在于,所述客户端特征是客户端在运行目标软件程序时由获取的客户端硬件特征、软件特征并结合环境随机变量计算产生,包括:获取客户端硬件特征;获取客户端软件特征;获取客户端环境随机变量R;使用客户端硬件特征、客户端软件特征生成终端特征C;使用第一序列化方式将终端特征C与客户端环境随机变量R序列化,得到客户端特征。4.如权利要求3所述的方法,其特征在于,所述硬件特征包括:CPU序列号A1、硬盘序列号A2、主板序列号A3和/或MAC地址A4;和/或,所述软件特征包括:操作系统信息、操作系统序列号、客户简要信息、和/或当前安装软件版本号;和/或,所述客户端环境随机变量R包括:根据客户端当前系统时间、和/或客户端所在的地理位置得出;和/或,所述使用客户端硬件特征、客户端软件特征生成终端特征C,包括:以主板序列号A3作为初始值,并将A3数值求和并对255求余数得到A5;使用顺序打乱函数F1将A1的原始数据以A5作为参数打乱得到B1,同时使用A5作为参考值,作为选择顺序打乱函数F2、F3、F4、F5的决定性因素,使用选择的顺序打乱函数,使用A5作为参数对A2进行打乱处理得到B2;将A3与A4进行循环异或得到B3;使用B3的数值求和并对255求余数得到A6;根据A6在F1、F2、F3、F4、F5中选取一个函数使用A6作为参数对B1、B2与B3的异或值打乱,得到终端特征C;和/或,所述使用第一序列化方式将终端特征C与客户端环境随机变量R序列化,得到客户端特征,包括:使用客户端环境随机变量R对终端特征C进行加密得到加密后的终端特征CX,合并客户端环境随机变量R和终端特征CX,并进行混淆性质的数据打乱,得到客户端特征。5.如权利要求3或4任一所述的方法,其特征在于,生成授权信息,包括:在授权服务器端使用第一反序列化方式对所述客户端特征作还原处理,得到客户端的终端特征C及客户端环境随机变量R;获取服务器端环境随机变量,并基于用户的需求,根据终端特征C以及服务器端环境随机变量生成授权信息;所述授权信息包含服务器端环境随机变量和客户端终端特征C。6.如权利要求5所述的方法,其特征在于,所述服务器端环境随机变量包含生成授权信息的详细时间、生成授权信息操作方的唯一ID;和/或,在使用第一反序列化方式对所述客户端特征作还原处理前,还包括:检测客户端特征的数据长度及客户端特征数据校验是否出现异常的步骤;和/或,在使用第一反序列化方式对所述客户端特征作还原处理后,还包括:对客户端环境随机变量R中的环境信息及客户端特征数据进行校验的步骤;和/或,获取服务器端环境随机变量,并基于用户的需求,根据终端特征C以及服务器端环境随机变量生成授权信息,包括:记录客户端特征,构建授权信息需求,根据授权信息需求生成第一授权信息,所述第一授权信息包含至少一组功能授权信息。7.如权利要求6所述的方法,其特征在于,还包括:使用第二序列化方式将所述第一授权信息序列化,得到第二授权信息;和/或,所述授权信息需求至少包括:授权请求时间、授权请求功能信息、和/或授权操作人;和/或,每一组功能授权信息至少包括:功能名称、授权类型、权限级别、授权时间和/或授权时长。8.如权利要求7所述的方法,所述使用第二序列化方式将所述第一授权信息序列化,包括:对所述第一授权信息进行可恢复的混淆打乱后加密,再将其转化为文本格式的授权信息文本。9.如权利要求8所述的方法,其特征在于,用户将所述授权信息输入到客户端的目标软件程序中,完成验证以进行授权,包括:对授权信息中的客户端特征与当前客户端的特征进行比较,同时检查授权信息的生成时间、授权信息包含的授权内容是否异常,如无异常根据授权信息中的功能授权信息对软件功能进行激活;或者,用户将所述授权信息输入到客户端的目标软件程序中,使用第二反序列化方式对授权信息进行反序列化操作得到原始授权信息,对原始授权信息中的客户端特征与本当前客户端的特征进行比较,同时检查原始授权信息的生成时间、包含的授权内容是否异常,如无异常根据原始授权信息中的功能授权信息对软件功能进行激活。10.如权利要求9所述的方法,所述使用第二反序列化方式对授权信息进行反序列化操作得到原始授权信息,包括:将文本信息还原为字节数据后执行解密操作,最后对解密后的数据还原混淆内容并恢复数据顺序。11.一种软件的授权方法,其特征在于,包括:根据客户端的目标软件程序运行,产生客户端特征并发送客户端特征到授权服务器端,其中,所述客户端特征包括客户端硬件特征和软件特征;基于服务器端返回给客户端的、根据所述客户端特征生成的授权信息,进行目标软件程序的授权。12.如权利要求11所述的方法,其特征在于,根据客户端的目标软件程序运行,产生客户端特征并发送客户端特征到授权服务器端,其中,所述客户端特征包括客户端硬件特征和软件特征,包括:客户端在运行目标软件程序时,获取客户端硬件特征、软件特征、环境随机变量,计算产生客户端特征;和/或,基于服务器端返回...

【专利技术属性】
技术研发人员:尹相宇
申请(专利权)人:珠海格力电器股份有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1