CN102324009B - 基于云计算平台的软件版权控制方法 - Google Patents
基于云计算平台的软件版权控制方法 Download PDFInfo
- Publication number
- CN102324009B CN102324009B CN201110264360.9A CN201110264360A CN102324009B CN 102324009 B CN102324009 B CN 102324009B CN 201110264360 A CN201110264360 A CN 201110264360A CN 102324009 B CN102324009 B CN 102324009B
- Authority
- CN
- China
- Prior art keywords
- licence
- module
- license file
- definition
- cloud computing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及一种基于云计算平台的软件版权控制系统,该系统包括许可证文件定义模块、许可证文件创建模块、许可证安装模块、许可证文件的解析与加载模块以及许可证授权校验模块。本发明还涉及利用该系统的基于云计算平台的软件版权控制方法。采用了本发明的基于云计算平台的软件版权控制系统及其方法,由于其包括许可证的定义、许可证的创建、许可证安装、许可证解析加载以及许可证授权许可的校验,从而能保证获得许可证授权的使用者正常定义及扩展云平台系统资源,未获得许可证授权的用户,则不能使用,从而达到对云平台的软件版权控制的目的。利用本发明系统及方法对云平台软件版权进行控制,其定义比较灵活,部署方便,安全可靠,适用范围较广。
Description
技术领域
本发明涉及计算机系统技术领域,特别涉及云计算平台技术领域,具体是指一种基于云计算平台的软件版权控制系统及其方法。
背景技术
在知识经济飞速发展的今天,整个社会已经进入了信息时代。计算机软件是现代社会主要的技术基础之一,是信息时代的重要产物,对软件这一人类智力成果和知识结晶实行有效法律保护的重要性日益突出,对软件的保护问题已经成为当今世界保护知识产权的一项重要的内容,受到了国际法学界和各国政府的普遍重视。
最近几年,云计算技术得到迅速的发展,也有不同的云计算产品相继推出,云计算是继1980年代大型计算机到客户端—服务器的大转变之后的又一个巨变。用户不再需要了解“云”中基础设施的细节,不必具有相应的专业知识,也无需直接进行控制。云计算描述了一种基于互联网的新的IT服务增加、使用和交付模式,通常涉及通过互联网来提供动态易扩展而且经常是虚拟化的资源。典型的云计算提供商往往提供通用的网络业务应用,可以通过浏览器等软件或者其他Web服务来访问,而软件和数据都存储在服务器上。云计算可以主要包括以下几个层次的服务:基础设施即服务(IaaS),平台即服务(PaaS)和软件即服务(SaaS)。
任何应用软件都会牵涉到版权控制这一技术问题。传统软件的版权控制通常采用以下几种方法:
(1)使用软件序列号。序列号就是软件开发商给软件的一个识别码,序列号注册到系统注册表或者持久化到文件中,在软件程序中添加了一段经过自己编写算法(这个算法可以是简单的公式运算,也可以是复杂的结合硬件的绑定方式)的代码,每当程序运行的时候都去读取序列号信息并做相应的验证。
(2)使用加密狗。加密狗包含一个安装在计算机并行口或USB口上的硬件,及一套适用于各种语言的接口软件和工具软件,加密狗基于硬件保护技术,其目的是通过对软件和数据的保护防止知识产权的非法使用。
(3)使用硬件信息的加密方法。首先软件提供给用户,在用户端会检测用户电脑的硬件信息,生成一个唯一机器识别号,用户发送机器识别号给服务器,服务器根据机器识别号生成一对一的序列号,返回给用户,用户使用序列号登录软件。
随着云计算产品不断推出,商业云的版权控制越来越受到瞩目,云计算软件一个显著的特征是可实现动态伸缩,使用传统的版权控制方式显然不能适应于云计算软件的这一特征。因此,目前,该技术领域中仍然缺少一种能灵活有效地对云计算平台的软件进行版权控制的系统和方法。
发明内容
本发明的目的是克服了上述现有技术中的缺点,提供一种能灵活有效地对云计算平台的软件进行版权控制,且结构较为简单,应用范围较为广泛的基于云计算平台的软件版权控制系统及其方法。
为了实现上述的目的,本发明的基于云计算平台的软件版权控制系统具有如下构成:
其包括:
许可证文件定义模块,用以对许可证文件的属性进行定义;
许可证文件创建模块,连接所述的许可证文件定义模块,用以根据定义创建许可证文件;
许可证安装模块,连接所述的许可证文件创建模块,用以将所创建的许可证文件安装到所述的云计算平台;
许可证文件的解析与加载模块,连接所述的许可证安装模块,用以对许可证文件进行解析并加载;
许可证授权校验模块,连接所述的许可证文件的解析与加载模块,用以对许可证的合法性进行校验。
本发明还提供一种利用所述的系统实现基于云计算平台的软件版权控制方法,该方法包括以下步骤:
(1)所述的许可证文件定义模块对许可证文件进行定义;
(2)所述的许可证文件创建模块根据所述的定义创建许可证文件;
(3)所述的许可证安装模块将所创建的许可证文件安装到所述的云计算平台;
(4)所述的许可证文件的解析与加载模块创建一许可证管理器,并通过该创建许可证管理器解析并加载所述的许可证文件;
(5)所述的许可证授权校验模块对所加载的许可证的合法性进行校验。
该基于云计算平台的软件版权控制方法中,所述的许可证文件定义模块对许可证文件进行定义,包括以下步骤:
(11)所述的许可证文件定义模块定义许可证组基本属性,所述的许可证组基本属性包括产品名称和产品版本号;
(12)所述的许可证文件定义模块定义各许可证的基本属性,所述的各许可证的基本属性包括所述的云计算平台的版本类型、许可证类型和数字摘要;
(13)所述的许可证文件定义模块定义许可证的授权项。
该基于云计算平台的软件版权控制方法中,所述的许可证的授权项包括许可证有效期、处理器个数、JVM内存极限值、最大并发数、最大在线用户数、平台最大实例数、操作系统、数据库、应用服务器、集群、IP地址、MAC地址以及国际化,所述的许可证文件定义模块定义许可证的授权项,包括以下步骤:
(13-1)所述的许可证文件定义模块定义许可证有效期授权项为日期数据或无限期;
(13-2)所述的许可证文件定义模块定义处理器个数授权项为整型数据;
(13-3)所述的许可证文件定义模块定义JVM永久存储区内存极限值授权项为整型数据;
(13-4)所述的许可证文件定义模块定义JVM堆空间内存极限值授权项为整型数据;
(13-5)所述的许可证文件定义模块定义最大并发数授权项为整型数据;
(13-6)所述的许可证文件定义模块定义最大在线用户数授权项为整型数据;
(13-7)所述的许可证文件定义模块定义平台实例数授权项为整型数据;
(13-8)所述的许可证文件定义模块定义操作系统授权项为操作系统简称,所述的操作系统简称为windows、linux、UNIX和mac中的一种;
(13-9)所述的许可证文件定义模块定义应用服务器授权项为应用服务器简称,所述的应用服务简称为weblogic、websphere、jboss和tomcat中的一种;
(13-10)所述的许可证文件定义模块定义集群授权项为支持集群或不支持集群;
(13-11)所述的许可证文件定义模块定义IP地址授权项为IP地址明文或IP地址密文;
(13-12)所述的许可证文件定义模块定义MAC地址授权项为MAC地址明文或MAC地址密文;
(13-13)所述的许可证文件定义模块定义国际化授权项为支持国际化或不支持国际化;
(13-14)所述的许可证文件定义模块根据平台服务定制平台资源。
该基于云计算平台的软件版权控制方法中,所述的许可证文件创建模块根据所述的定义创建许可证文件,包括以下步骤:
(21)所述的许可证文件创建模块确定许可证授权的云计算平台的产品名称及版本号;
(22)所述的许可证文件创建模块确定云平台产品许可证的授权项;
(23)所述的许可证文件创建模块获取需要签名的许可证信息,并将所有除了签名属性以外的信息组成字符串;
(24)所述的许可证文件创建模块使用私钥并通过RSA方法计算数字签名;
(25)所述的许可证文件创建模块将生成的数字签名写入许可证文件中的签名属性中。
该基于云计算平台的软件版权控制方法中,所述的许可证安装模块将所创建的许可证文件安装到云计算平台,包括以下步骤:
(31)所述的许可证安装模块获得许可证文件;
(32)所述的许可证安装模块将许可证文件拷贝到云计算平台的许可证指定位置。
该基于云计算平台的软件版权控制方法中,所述的步骤(4)具体包括以下步骤:
(41)所述的许可证文件的解析与加载模块设计许可证对象模型;
(42)所述的许可证文件的解析与加载模块创建一个许可证管理器;
(43)所述的许可证文件的解析与加载模块定义一个许可证文件加载器;
(44)所述的许可证文件的解析与加载模块定义一个许可证文档解析器;
(45)所述的许可证文件加载器获取许可证文件路径;
(46)所述的许可证文件加载器加载许可证并生成文档对象;
(47)所述的许可证文档解析器根据所述的许可证对象模型将文档解析为许可证对象;
(48)所述的许可证文件的解析与加载模块将解析后的许可证对象以静变量的形式保存于所述的许可证管理器中。
该基于云计算平台的软件版权控制方法中,所述的许可证文件的解析与加载模块设计许可证对象模型,包括以下步骤:
(41-1)所所述的许可证文件的解析与加载模块将许可证基本信息映射为一个实体类,并在该实体类中定义许可证合法性实现校验接口;
(41-2)所述的许可证文件的解析与加载模块将许可证授权项信息映射为一个抽象类,并在该抽象类中定义授权项校验的抽象接口。
该基于云计算平台的软件版权控制方法中,所述的许可证授权校验模块对所加载的许可证的合法性进行校验,包括以下步骤:
(51)所述的许可证授权校验模块定义一个许可证合法性校验接口;
(52)所述的许可证授权校验模块定义一个许可证授权项校验接口;
(53)所述的许可证授权校验模块实现所述的许可证合法性校验接口;
(54)所述的许可证授权校验模块定义许可证异常类及相关异常信息常量;
(55)所述的许可证授权校验模块按不同的授权项分别实现所述的许可证授权项校验接口;
(56)所述的许可证授权校验模块定义所有连接所述的许可证管理器的许可证校验的入口;
(57)所述的许可证授权校验模块在云平台启动时对许可证的合法性进行校验,如通过校验,则启动云计算平台,若未通过校验,则云计算平台启动失败,并告知用户。
该基于云计算平台的软件版权控制方法中,所述的许可证授权校验模块在云平台启动时对许可证的合法性进行校验,包括以下步骤:
(57-1)所述的许可证授权校验模块对许可证的硬件环境进行授权检查,若通过,则进入步骤(57-2),若未通过,则云计算平台启动失败,并告知用户;
(57-2)所述的许可证授权校验模块对许可证的软件环境进行授权检查,若通过,则进入步骤(57-3),若未通过,则云计算平台启动失败,并告知用户;
(57-3)所述的许可证授权校验模块对许可证的云计算平台有效日期进行授权检查,若通过,则进入步骤(57-4),若未通过,则云计算平台启动失败,并告知用户;
(57-4)所述的许可证授权校验模块对许可证的云计算平台内存分配进行授权检查,若通过,则进入步骤(57-5),若未通过,则云计算平台启动失败,并告知用户;
(57-5)启动云计算平台。
采用了本发明的基于云计算平台的软件版权控制系统及其方法,其内容主要包括许可证的定义、许可证的创建、许可证安装、许可证解析加载以及许可证授权许可的校验。从而保证获得许可证授权的使用者,可以按照许可证的许可正常定义或扩展自己的云平台系统资源,在没有获得许可证授权的用户,则不能正确使用或者扩展自己的云平台系统资源,通过这种方法达到云平台系统版权控制的目的。本发明的基于云计算平台的软件版权控制系统及其方法采用这种许可证授权对云平台保护的方法定义比较灵活,部署方便,安全可靠,适用范围较广。
附图说明
图1为本发明的基于云计算平台的软件版权控制系统的结构图。
图2为本发明的基于云计算平台的软件版权控制方法中文件定义的示意图。
图3为本发明的基于云计算平台的软件版权控制方法中采用的许可证授权校验模型示意图。
图4为本发明的基于云计算平台的软件版权控制方法中采用的许可证授权校验的流程图。
具体实施方式
为了能够更清楚地理解本发明的技术内容,特举以下实施例详细说明。
请参阅图1所示,为本发明的基于云计算平台的软件版权控制系统的结构图。
在一种实施方式中,该基于云计算平台的软件版权控制系统包括:
许可证文件定义模块,用以对许可证文件的属性进行定义;
许可证文件创建模块,连接所述的许可证文件定义模块,用以根据定义创建许可证文件;
许可证安装模块,连接所述的许可证文件创建模块,用以将所创建的许可证文件安装到所述的云计算平台;
许可证文件的解析与加载模块,连接所述的许可证安装模块,用以对许可证文件进行解析并加载;
许可证授权校验模块,连接所述的许可证文件的解析与加载模块,用以对许可证的合法性进行校验。
利用该实施方式所述的系统实现基于云计算平台的软件版权控制方法包括以下步骤:
(1)所述的许可证文件定义模块对许可证文件进行定义;
(2)所述的许可证文件创建模块根据所述的定义创建许可证文件;
(3)所述的许可证安装模块将所创建的许可证文件安装到所述的云计算平台;
(4)所述的许可证文件的解析与加载模块创建一许可证管理器,并通过该创建许可证管理器解析并加载所述的许可证文件;
(5)所述的许可证授权校验模块对所加载的许可证的合法性进行校验。
在一种较优选的实施方式中,所述的许可证文件定义模块对许可证文件进行定义,包括以下步骤:
(11)所述的许可证文件定义模块定义许可证组基本属性,所述的许可证组基本属性包括产品名称和产品版本号;
(12)所述的许可证文件定义模块定义各许可证的基本属性,所述的各许可证的基本属性包括所述的云计算平台的版本类型、许可证类型和数字摘要;
(13)所述的许可证文件定义模块定义许可证的授权项。
在一种进一步优选的实施方式中,所述的许可证的授权项包括许可证有效期、处理器个数、JVM内存极限值、最大并发数、最大在线用户数、平台最大实例数、操作系统、数据库、应用服务器、集群、IP地址、MAC地址以及国际化,所述的许可证文件定义模块定义许可证的授权项,包括以下步骤:
(13-1)所述的许可证文件定义模块定义许可证有效期授权项为日期数据或无限期;
(13-2)所述的许可证文件定义模块定义处理器个数授权项为整型数据或不限处理器个数;
(13-3)所述的许可证文件定义模块定义JVM永久存储区内存极限值授权项为整型数据或无限制;
(13-4)所述的许可证文件定义模块定义JVM堆空间内存极限值授权项为或整型数据或无限制;
(13-5)所述的许可证文件定义模块定义最大并发数授权项为或整型数据或无限制;
(13-6)所述的许可证文件定义模块定义最大在线用户数授权项为或整型数据或不限制在线用户数;
(13-7)所述的许可证文件定义模块定义平台实例数授权项为或整型数据或无限制;
(13-8)所述的许可证文件定义模块定义操作系统授权项为操作系统简称或不限制操作系统,所述的操作系统简称为windows、linux、UNIX和mac中的一种;
(13-9)所述的许可证文件定义模块定义应用服务器授权项为服务器简称或不限制应用服务器,所述的应用服务简称为weblogic、websphere、jboss和tomcat中的一种;
(13-10)所述的许可证文件定义模块定义集群授权项为支持集群或不支持集群;
(13-11)所述的许可证文件定义模块定义IP地址授权项为IP地址明文或IP地址密文不限制IP地址;
(13-12)所述的许可证文件定义模块定义MAC地址授权项为MAC地址明文或MAC地址密文不限制MAC地址;
(13-13)所述的许可证文件定义模块定义国际化授权项为支持国际化或不支持国际化;
(13-14)所述的许可证文件定义模块根据平台服务定制平台资源。
在另一种较优选的实施方式中,所述的许可证文件创建模块根据所述的定义创建许可证文件,包括以下步骤:
(21)所述的许可证文件创建模块确定许可证授权的云计算平台的产品名称及版本号;
(22)所述的许可证文件创建模块确定云平台产品许可证的授权项;
(23)所述的许可证文件创建模块获取需要签名的许可证信息,并将所有除了签名属性以外的信息组成字符串;
(24)所述的许可证文件创建模块使用私钥并通过RSA方法计算数字签名;
(25)所述的许可证文件创建模块将生成的数字签名写入许可证文件中的签名属性中。
在又一种较优选的实施方式中,所述的许可证安装模块将所创建的许可证文件安装到云计算平台,包括以下步骤:
(31)所述的许可证安装模块获得许可证文件;
(32)所述的许可证安装模块将许可证文件拷贝到云计算平台的许可证指定位置。
在再一种较优选的实施方式中,所述的步骤(4)具体包括以下步骤:
(41)所述的许可证文件的解析与加载模块设计许可证对象模型;
(42)所述的许可证文件的解析与加载模块创建一个许可证管理器;
(43)所述的许可证文件的解析与加载模块定义一个许可证文件加载器;
(44)所述的许可证文件的解析与加载模块定义一个许可证文档解析器;
(45)所述的许可证文件加载器获取许可证文件路径;
(46)所述的许可证文件加载器加载许可证并生成文档对象;
(47)所述的许可证文档解析器根据所述的许可证对象模型将文档解析为许可证对象;
(48)所述的许可证文件的解析与加载模块将解析后的许可证对象以静变量的形式保存于所述的许可证管理器中。
在另一种进一步优选的实施方式中,所述的许可证文件的解析与加载模块设计许可证对象模型,包括以下步骤:
(41-1)所所述的许可证文件的解析与加载模块将许可证基本信息映射为一个实体类,并在该实体类中定义许可证合法性实现校验接口;
(41-2)所述的许可证文件的解析与加载模块将许可证授权项信息映射为一个抽象类,并在该抽象类中定义授权项校验的抽象接口。
在一种更优选的实施方式中,所述的许可证授权校验模块对所加载的许可证的合法性进行校验,包括以下步骤:
(51)所述的许可证授权校验模块定义一个许可证合法性校验接口;
(52)所述的许可证授权校验模块定义一个许可证授权项校验接口;
(53)所述的许可证授权校验模块实现所述的许可证合法性校验接口;
(54)所述的许可证授权校验模块定义许可证异常类及相关异常信息常量;
(55)所述的许可证授权校验模块按不同的授权项分别实现所述的许可证授权项校验接口;
(56)所述的许可证授权校验模块定义所有连接所述的许可证管理器的许可证校验的入口;
(57)所述的许可证授权校验模块在云平台启动时进行许可证的合法性进行校验,如通过校验,则启动云计算平台,若未通过校验,则云计算平台启动失败,并告知用户。
在更进一步优选的实施方式中,所述的许可证授权校验模块在云平台启动时进行许可证的合法性进行校验,包括以下步骤:
(57-1)所述的许可证授权校验模块对许可证的硬件环境进行授权检查,若通过,则进入步骤(57-2),若未通过,则云计算平台启动失败,并告知用户;
(57-2)所述的许可证授权校验模块对许可证的软件环境进行授权检查,若通过,则进入步骤(57-3),若未通过,则云计算平台启动失败,并告知用户;
(57-3)所述的许可证授权校验模块对许可证的云计算平台有效日期进行授权检查,若通过,则进入步骤(57-4),若未通过,则云计算平台启动失败,并告知用户;
(57-4)所述的许可证授权校验模块对许可证的云计算平台内存分配进行授权检查,若通过,则进入步骤(57-5),若未通过,则云计算平台启动失败,并告知用户;
(57-5)启动云计算平台。
在本发明的应用中,本发明对云平台软件许可证的控制主要从三个层次进行考虑:
1、从云平台产品依赖的硬环境来看,可以对云平台依赖的硬件环境做一定的控制,主要可以包括硬件的BIOS信息、CMOS信息、CPU数、硬盘、网卡绑定的IP及MAC地址等;
2、从云平台产品依赖的软环境来看,云平台软件非底层系统软件,它的运行还依赖于一定的软件环境,包括操作系统、应用服务器以及数据库系统;
3、对云平台系统本身来说,它的架构比较复杂,提供的资源和服务较多,根据云平台的特性可以对云平台的使用期限、云平台可分配内存大小、平台资源访问权限、平台实例数、最大并发数、最大在线用户数、国际化功能等方面进行控制。
该云计算平台软件版权控制的系统和方法包括从许可证定义到许可证控制的一体化流程,如图1所示,其方法包括以下步骤:
(1)许可证文件模块定义;
(2)创建许可证文件;
(3)许可证安装;
(4)许可证文件的解析与加载;
(5)许可证授权校验。
所述的许可证文件模板定义操作包括以下步骤:
(1)定义许可证组的基本属性,包括产品名称、产品版本号;
(2)定义每个许可证的基本属性,包括云平台的版本类型、许可证类型和数字摘要;
(3)定义许可证的授权项,包括许可证有效期、处理器个数(CPU)、JVM内存极限值、最大并发数、最大在线用户数、平台最大实例数、操作系统、数据库、应用服务器、集群、IP与MAC地址、国际化、其它平台资源等。
所述的许可证授权项的定义包括以下步骤:
(1)定义“许可证有效期”授权项,关键字为expiration,取值为unlimited或日期数据(格式为yyyy-MM-dd),unlimited表示无限期;
(2)定义“处理器个数”授权项,关键字为cpus,取值为unlimited或整型数据,unlimited表示不限CPU;
(3)定义“JVM永久存储区内存极限值”授权项,关键字为permanentspacesize,取值为unlimited或整型数据,unlimited表示不限永久存储区的内存大小;
(4)定义“JVM堆空间内存极限值”授权项,关键字为heapspacesize,取值为unlimited或整型数据,unlimited表示不限JVM堆空间的内存大小;
(5)定义“最大并发数”授权项,关键字为concurrency,取值为unlimited或整型数据,unlimited表示无并发限制;
(6)定义“最大在线用户数”授权项,关键字为acu,取值为unlimited或整型数据,unlimited表示不限在线用户数;
(7)定义“平台实例数”授权项,关键字为instances,取值为unlimited或整型数据,unlimited表示不限平台实例数;
(8)定义“操作系统”授权项,关键字为os,取值为unlimited或操作系统简称,unlimited表示不限操作系统,操作系统简称可以为windows、linux、UNIX、mac等;
(9)定义“应用服务器”授权项,关键字为as,取值为unlimited或应用服务器简称,unlimited表示不限应用服务器,应用服务简称可以为weblogic、websphere、jboss、tomcat等;
(10)定义“集群”授权项,关键字为cluster,取值为true或false,true表示支持集群,false表不支持;
(11)定义“IP地址”授权项,关键字为ip,取值为unlimited或IP地址明文或密文,unlimited表示不限IP;
(12)定义“MAC地址”授权项,关键字为mac,取值为unlimited或MAC地址明文或密文,unlimited表示不限MAC地址;
(13)定义“国际化”授权项,关键字为internationalization,取值为true或false,true表示支持国际化,false表示不支持;
(14)定义平台资源则可以根据平台提供的服务进行定制。
所述的许可证文件创建包括以下步骤:
(1)确定许可证授权的云平台产品名称及版本号;
(2)确定云平台产品许可证的授权项;
(3)获取需要签名的许可证信息,可以将所有除了sign属性以外的信息组成字符串;
(4)使用私钥利用RSA方法计算数字签名;
(5)将生成的数字签名填写到许可证文件中的sign属性中。
所述的许可证部署包括以下步骤:
(1)准备许可证文件;
(2)将许可证文件拷贝到云平台许可证指定位置。
所述的许可证文件的解析和加载包括以下步骤:
(1)设计许可证对象模型,将许可证基本信息映射成实体类,并在该实体类中定义许可证合法性实现校验接口,将许可证的授权项信息映射一个抽象类,并在该抽象类中定义授权项校验的抽象接口;
(2)创建许可证管理器;
(3)定义许可证文件加载器;
(4)定义许可证文档解析器;
(5)获取许可证文件路径;
(6)使用许可证加载器加载许可证生成文档对象;
(7)使用许可证解析器中将文档解析为许可证对象模型;
(8)将解析后的许可证对象以静变量的形式保存于许可证管理器中。
所述的许可证授权校验操作包括以下步骤:
(1)定义许可证合法性校验接口;
(2)定义许可证授权项校验接口;
(3)实现许可证合法性校验接口;
(4)定义许可证异常类及相关异常信息常量;
(5)按不同的授权项分别实现许可证授权项校验接口;
(6)在许可证管理器中定义所有许可证校验的入口;
(7)在云平台启动时进行许可证的合法性进行校验,只有授权的用户才能正常的使用云平台软件系统,如果不合法,则平台告知用户,并终止当前平台的启动,详细过程见图四;
(8)在每个需要校验的地方通过许可证管理器进行授权校验,如果合法,则允许正常使用,如果不合法,则抛出许可证不合法的异常。
为了更好的理解本发明内容,这里列举一个实例进行说明:
背景:现有一软件厂商C要开发一个云交易平台,要求通过许可证来管理该云交易平台的合法授权,云交易平台产品开发完成并发布,某一商业银行A要求使用,银行A向软件厂商获取云交易平台的安装介质并申请了该平台的许可证授权许可,银行A更新许可证文件后在授权范围内使用云交易平台。
软件厂商C要在云交易平台上使用本发明实现版权的控制,具体实施步骤描述如下:
(1)定义云交易平台的许可证文件模板,模块定义见图2所示;
(2)创建云交易平台的许可证基本信息,内容为:
(3)根据许可证基本信息生成数字签名信息,伪代码如下:
(4)将生成的签名信息拷贝到许可证的sign属性中,并保存;
(5)安装许可证文件,将许可证文件拷贝到云平台指定的许可证存放位置;
(6)设计许可证文件的对象模型,如图3所示,其伪代码为:
(7)实现每个许可证授权项的校验,伪代码为:
(8)将许可证的授权校验逻辑集成到云交易平台,在云平台启动的时候校验许可证文件的合法性,其校验流程图如图4所示;
(9)在云平台运行的时候动态校验其它许可证授权项的合法性。
采用了本发明的基于云计算平台的软件版权控制系统及其方法,其内容主要包括许可证的定义、许可证的创建、许可证安装、许可证解析加载以及许可证授权许可的校验。从而保证获得许可证授权的使用者,可以按照许可证的许可正常定义或扩展自己的云平台系统资源,在没有获得许可证授权的用户,则不能正确使用或者扩展自己的云平台系统资源,通过这种方法达到云平台系统版权控制的目的。本发明的基于云计算平台的软件版权控制系统及其方法采用这种许可证授权对云平台保护的方法定义比较灵活,部署方便,安全可靠,适用范围较广。
在此说明书中,本发明已参照其特定的实施例作了描述。但是,很显然仍可以作出各种修改和变换而不背离本发明的精神和范围。因此,说明书和附图应被认为是说明性的而非限制性的。
Claims (8)
1.一种基于云计算平台的软件版权控制系统实现基于云计算平台的软件版权控制方法,所述的系统包括:
许可证文件定义模块,用以对许可证文件的属性进行定义;
许可证文件创建模块,连接所述的许可证文件定义模块,用以根据定义创建许可证文件;
许可证安装模块,连接所述的许可证文件创建模块,用以将所创建的许可证文件安装到所述的云计算平台;
许可证文件的解析与加载模块,连接所述的许可证安装模块,用以对许可证文件进行解析并加载;
许可证授权校验模块,连接所述的许可证文件的解析与加载模块,用以对许可证的合法性进行校验;
其特征在于,所述的方法包括以下步骤:
(1)所述的许可证文件定义模块对许可证文件进行定义,包括以下步骤:
(11)所述的许可证文件定义模块定义许可证组基本属性,所述的许可证组基本属性包括产品名称和产品版本号;
(12)所述的许可证文件定义模块定义各许可证的基本属性,所述的各许可证的基本属性包括所述的云计算平台的版本类型、许可证类型和数字摘要;
(13)所述的许可证文件定义模块定义许可证的授权项;
(2)所述的许可证文件创建模块根据所述的定义创建许可证文件;
(3)所述的许可证安装模块将所创建的许可证文件安装到所述的云计算平台;
(4)所述的许可证文件的解析与加载模块创建一许可证管理器,并通过创建的该许可证管理器解析并加载所述的许可证文件;
(5)所述的许可证授权校验模块对所加载的许可证的合法性进行校验。
2.根据权利要求1所述的基于云计算平台的软件版权控制系统实现基于云计算平台的软件版权控制方法,其特征在于,所述的许可证的授权项包括许可证有效期、处理器个数、JVM内存极限值、最大并发数、最大在线用户数、平台最大实例数、操作系统、数据库、应用服务器、集群、IP地址、MAC地址以及国际化,所述的许可证文件定义模块定义许可证的授权项,包括以下步骤:
(13-1)所述的许可证文件定义模块定义许可证有效期授权项为日期数据或无限期;
(13-2)所述的许可证文件定义模块定义处理器个数授权项为整型数据;
(13-3)所述的许可证文件定义模块定义JVM永久存储区内存极限值授权项为整型数据;
(13-4)所述的许可证文件定义模块定义JVM堆空间内存极限值授权项为整型数据;
(13-5)所述的许可证文件定义模块定义最大并发数授权项为整型数据;
(13-6)所述的许可证文件定义模块定义最大在线用户数授权项为整型数据;
(13-7)所述的许可证文件定义模块定义平台实例数授权项为整型数据;
(13-8)所述的许可证文件定义模块定义操作系统授权项为操作系统简称,所述的操作系统简称为windows、linux、UNIX和mac中的一种;
(13-9)所述的许可证文件定义模块定义应用服务器授权项为应用服务器简称,所述的应用服务器简称为weblogic、websphere、jboss和tomcat中的一种;
(13-10)所述的许可证文件定义模块定义集群授权项为支持集群或不支持集群;
(13-11)所述的许可证文件定义模块定义IP地址授权项为IP地址明文或IP地址密文;
(13-12)所述的许可证文件定义模块定义MAC地址授权项为MAC地址明文或MAC地址密文;
(13-13)所述的许可证文件定义模块定义国际化授权项为支持国际化或不支持国际化;
(13-14)所述的许可证文件定义模块根据平台服务定制平台资源。
3.根据权利要求1或2所述的基于云计算平台的软件版权控制系统实现基于云计算平台的软件版权控制方法,其特征在于,所述的许可证文件创建模块根据所述的定义创建许可证文件,包括以下步骤:
(21)所述的许可证文件创建模块确定许可证授权的云计算平台的产品名称及版本号;
(22)所述的许可证文件创建模块确定云平台产品许可证的授权项;
(23)所述的许可证文件创建模块获取需要签名的许可证信息,并将所有除了签名属性以外的信息组成字符串;
(24)所述的许可证文件创建模块使用私钥并通过RSA方法计算数字签名;
(25)所述的许可证文件创建模块将生成的数字签名写入许可证文件中的签名属性中。
4.根据权利要求3所述的基于云计算平台的软件版权控制系统实现基于云计算平台的软件版权控制方法,其特征在于,所述的许可证安装模块将所创建的许可证文件安装到云计算平台,包括以下步骤:
(31)所述的许可证安装模块获得许可证文件;
(32)所述的许可证安装模块将许可证文件拷贝到云计算平台的许可证指定位置。
5.根据权利要求4所述的基于云计算平台的软件版权控制系统实现基于云计算平台的软件版权控制方法,其特征在于,所述的步骤(4)具体包括以下步骤:
(41)所述的许可证文件的解析与加载模块设计许可证对象模型;
(42)所述的许可证文件的解析与加载模块创建一个许可证管理器;
(43)所述的许可证文件的解析与加载模块定义一个许可证文件加载器;
(44)所述的许可证文件的解析与加载模块定义一个许可证文档解析器;
(45)所述的许可证文件加载器获取许可证文件路径;
(46)所述的许可证文件加载器加载许可证并生成文档对象;
(47)所述的许可证文档解析器根据所述的许可证对象模型将文档解析为许可证对象;
(48)所述的许可证文件的解析与加载模块将解析后的许可证对象以静变量的形式保存于所述的许可证管理器中。
6.根据权利要求5所述的基于云计算平台的软件版权控制系统实现基于云计算平台的软件版权控制方法,其特征在于,所述的许可证文件的解析与加载模块设计许可证对象模型,包括以下步骤:
(41-1)所述的许可证文件的解析与加载模块将许可证基本信息映射为一个实体类,并在该实体类中定义许可证合法性实现校验接口;
(41-2)所述的许可证文件的解析与加载模块将许可证授权项信息映射为一个抽象类,并在该抽象类中定义授权项校验的抽象接口。
7.根据权利要求6所述的基于云计算平台的软件版权控制系统实现基于云计算平台的软件版权控制方法,其特征在于,所述的许可证授权校验模块对所加载的许可证的合法性进行校验,包括以下步骤:
(51)所述的许可证授权校验模块定义一个许可证合法性校验接口;
(52)所述的许可证授权校验模块定义一个许可证授权项校验接口;
(53)所述的许可证授权校验模块实现所述的许可证合法性校验接口;
(54)所述的许可证授权校验模块定义许可证异常类及相关异常信息常量;
(55)所述的许可证授权校验模块按不同的授权项分别实现所述的许可证授权项校验接口;
(56)所述的许可证授权校验模块定义所有连接所述的许可证管理器的许可证校验的入口;
(57)所述的许可证授权校验模块在云平台启动时对许可证的合法性进行校验,如通过校验,则启动云计算平台,若未通过校验,则云计算平台启动失败,并告知用户。
8.根据权利要求7所述的基于云计算平台的软件版权控制系统实现基于云计算平台的软件版权控制方法,其特征在于,所述的许可证授权校验模块在云平台启动时对许可证的合法性进行校验,包括以下步骤:
(57-1)所述的许可证授权校验模块对许可证的硬件环境进行授权检查,若通过,则进入步骤(57-2),若未通过,则云计算平台启动失败,并告知用户;
(57-2)所述的许可证授权校验模块对许可证的软件环境进行授权检查,若通过,则进入步骤(57-3),若未通过,则云计算平台启动失败,并告知用户;
(57-3)所述的许可证授权校验模块对许可证的云计算平台有效日期进行授权检查,若通过,则进入步骤(57-4),若未通过,则云计算平台启动失败,并告知用户;
(57-4)所述的许可证授权校验模块对许可证的云计算平台内存分配进行授权检查,若通过,则进入步骤(57-5),若未通过,则云计算平台启动失败,并告知用户;
(57-5)启动云计算平台。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110264360.9A CN102324009B (zh) | 2011-09-07 | 2011-09-07 | 基于云计算平台的软件版权控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110264360.9A CN102324009B (zh) | 2011-09-07 | 2011-09-07 | 基于云计算平台的软件版权控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102324009A CN102324009A (zh) | 2012-01-18 |
CN102324009B true CN102324009B (zh) | 2014-03-26 |
Family
ID=45451750
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110264360.9A Active CN102324009B (zh) | 2011-09-07 | 2011-09-07 | 基于云计算平台的软件版权控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102324009B (zh) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103268435B (zh) * | 2013-04-25 | 2016-07-06 | 福建伊时代信息科技股份有限公司 | 内网许可生成方法及系统、内网许可保护方法及系统 |
US10037416B2 (en) | 2013-06-04 | 2018-07-31 | Adobe Systems Incorporated | Method and apparatus for licensing web assets |
CN103546482B (zh) * | 2013-10-31 | 2016-10-05 | 杭州华三通信技术有限公司 | 设备产品的许可证生成及控制方法、装置 |
CN106789891A (zh) * | 2016-11-22 | 2017-05-31 | 国云科技股份有限公司 | 一种适用于IaaS云平台的多维度软件授权控制方法 |
CN108241681A (zh) * | 2016-12-26 | 2018-07-03 | 大唐移动通信设备有限公司 | 一种许可文件批量生成方法和系统 |
CN106951741A (zh) * | 2017-03-15 | 2017-07-14 | 北京深思数盾科技股份有限公司 | 一种软件许可管理方法及装置 |
CN107704731B (zh) * | 2017-09-28 | 2021-03-09 | 成都安恒信息技术有限公司 | 一种基于hotp的云平台镜像防盗版方法 |
CN109873711A (zh) * | 2017-12-05 | 2019-06-11 | 北京金山云网络技术有限公司 | 一种云平台管理方法、装置、电子设备及可读存储介质 |
CN109088872B (zh) * | 2018-08-15 | 2022-03-08 | 广州市保伦电子有限公司 | 带使用期限的云平台的使用方法、装置、电子设备及介质 |
CN109255208B (zh) * | 2018-09-04 | 2020-09-01 | 浪潮云信息技术股份公司 | 一种软件服务产品的授权方法及系统 |
CN109918869A (zh) * | 2019-02-13 | 2019-06-21 | 北京百分点信息科技有限公司 | 一种基于模板的统一license控制方法 |
CN110096849A (zh) * | 2019-04-02 | 2019-08-06 | 深圳市中博科创信息技术有限公司 | 一种License授权认证方法、装置、设备及可读存储介质 |
CN110149338B (zh) * | 2019-05-27 | 2021-12-24 | 深圳市天启时代科技有限公司 | 一种云平台加密授权方法 |
CN110493723A (zh) * | 2019-08-16 | 2019-11-22 | 豪位控股有限公司 | 信标标识码可变的室内定位导航系统 |
CN110708310B (zh) * | 2019-09-30 | 2022-02-08 | 杭州数梦工场科技有限公司 | 租户级权限管理方法、装置及设备 |
CN110855668A (zh) * | 2019-11-14 | 2020-02-28 | 浙江九州云信息科技有限公司 | 一种管理容器云平台授权证书的方法及系统 |
CN110990824A (zh) * | 2019-11-19 | 2020-04-10 | 江苏理工学院 | 远程控制未联网机器使用期限的方法 |
CN114547556B (zh) * | 2022-04-27 | 2022-09-09 | 北京邮电大学 | 视频云环境下智能算法版权管理方法、管理器及系统 |
CN117290822B (zh) * | 2023-11-23 | 2024-03-08 | 深圳华杰共创科技有限公司 | 一种云数据库软件系统的许可证许可控制方法及相关设备 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090031430A1 (en) * | 2005-05-10 | 2009-01-29 | Ward Scott Macdonald | Software activation control method |
CN100587697C (zh) * | 2007-06-01 | 2010-02-03 | 华中科技大学 | 数字资源版权管理装置 |
CN101916415A (zh) * | 2010-08-06 | 2010-12-15 | 西北工业大学 | 一种“云计算”平台中软件许可证的按需服务方法 |
-
2011
- 2011-09-07 CN CN201110264360.9A patent/CN102324009B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN102324009A (zh) | 2012-01-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102324009B (zh) | 基于云计算平台的软件版权控制方法 | |
JP6026462B2 (ja) | ポイントツーポイント相互接続システム上のセキュアな環境初期化命令の実行 | |
US9137023B1 (en) | Self-signed certificates for computer application signatures | |
US9871821B2 (en) | Securely operating a process using user-specific and device-specific security constraints | |
US8001596B2 (en) | Software protection injection at load time | |
KR101280048B1 (ko) | 운영체계들과 다른 소프트웨어의 인스톨을 제한하는 해킹방지 방법 | |
US8694802B2 (en) | System and method for creating tamper-resistant code | |
JP5745061B2 (ja) | 起動プロセスの際の対話型コンポーネントの使用の認証 | |
US20100229242A1 (en) | Program execution control system, program execution control method and computer program for program execution control | |
WO2017124960A1 (zh) | 应用程序对接口的访问方法、授权请求方法及装置 | |
JP2016535547A (ja) | 対象のコンピューティング装置で実施される動作を認証する方法 | |
KR20110050488A (ko) | 티켓 인증 보안 설치 및 부트 | |
EP1805571A1 (en) | Verifying binding of an initial trusted device to a secured processing system | |
JPH11355264A (ja) | 国際暗号体系のホストシステム要素 | |
JPH1124919A (ja) | 安全な記憶領域でアプリケーション・データを保護する方法及び装置 | |
US20060253554A1 (en) | System and method for controlling operation of a component on a computer system | |
CN107292176A (zh) | 用于访问计算设备的可信平台模块的方法和系统 | |
Jayaram et al. | Trustworthy geographically fenced hybrid clouds | |
US9692858B2 (en) | Security model for a memory of a network information system | |
WO2021133478A1 (en) | System and method for protecting software licensing information via a trusted platform module | |
Dhobi et al. | Secure firmware update over the air using trustzone | |
US8972745B2 (en) | Secure data handling in a computer system | |
Zhang et al. | SecureBus: towards application-transparent trusted computing with mandatory access control | |
US8844024B1 (en) | Systems and methods for using tiered signing certificates to manage the behavior of executables | |
CN109840402B (zh) | 私有化服务授权管理方法、装置、计算机设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C53 | Correction of patent for invention or patent application | ||
CB02 | Change of applicant information |
Address after: 201203, Shanghai Zhangjiang hi tech park, Pudong New Area, No. 456 blue wave road, 4F Applicant after: PRIMETON INFORMATION TECHNOLOGY CO., LTD. Address before: 201203, Shanghai Zhangjiang hi tech park, Pudong New Area, No. 456 blue wave road, 4F Applicant before: Primeton Technologies Ltd. |
|
COR | Change of bibliographic data |
Free format text: CORRECT: APPLICANT; FROM: PRIMETON TECHNOLOGIES LTD. TO: PRIMETON INFORMATION TECHNOLOGY CO., LTD. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |