CN103258151B - 一种实时授权的软件License控制方法 - Google Patents

一种实时授权的软件License控制方法 Download PDF

Info

Publication number
CN103258151B
CN103258151B CN201210429306.XA CN201210429306A CN103258151B CN 103258151 B CN103258151 B CN 103258151B CN 201210429306 A CN201210429306 A CN 201210429306A CN 103258151 B CN103258151 B CN 103258151B
Authority
CN
China
Prior art keywords
module
client
license
software
service
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
Application number
CN201210429306.XA
Other languages
English (en)
Other versions
CN103258151A (zh
Inventor
史海波
胡国良
潘福成
里鹏
段彬
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenyang Institute of Automation of CAS
Original Assignee
Shenyang Institute of Automation of CAS
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenyang Institute of Automation of CAS filed Critical Shenyang Institute of Automation of CAS
Priority to CN201210429306.XA priority Critical patent/CN103258151B/zh
Publication of CN103258151A publication Critical patent/CN103258151A/zh
Application granted granted Critical
Publication of CN103258151B publication Critical patent/CN103258151B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明提供了一种实现实时授权的企业级软件License控制方法,包括步骤:软件采用面向服务的架构(SOA-service?oriented?architecture),在服务端设置客户端应用模块并发用户数、客户端服务模块同时发布服务器数等控制量,并与用户名和自动生成的GUID(Globally?Unique?Identifier,全球唯一标识符)序列号绑定;客户端将用户名、序列号与加密锁等硬件信息(计算机CPU序列号、网卡物理地址、硬盘序列号)绑定后从服务端获取加密处理的License文件;License控制模块解析此License文件,实现实时控制整个软件***的授权。根据本发明方法,客户端与服务端实时通讯能有效控制软件的使用权限,能检测出软件是否运行于虚拟机中,同时能进行试用版及正式版等版本控制,本发明能广泛应用于计算机企业级软件授权控制领域中。

Description

一种实时授权的软件License控制方法
技术领域
本发明涉及计算机企业级软件授权控制领域,特别涉及实现对客户阶段性软件使用和定期收取费用功能的一种实时授权的软件License控制方法。
背景技术
版权保护是当今世界普遍关注的问题,如何对企业级软件进行使用许可的管理保护具有十分重要的意义。目前最具代表性的两种软件版权保护方案是注册码技术和软件狗技术。注册码技术通过将一组与软件相关的注册码作为软件的运行条件,来控制软件的使用,但是注册码技术的一个致命的弱点是“一码多用”;软件狗技术通过硬件与软件的相关性控制运行软件的拷贝数,但软件狗的使用不是很方便,软件狗本身需要占用计算机的一个端口。
发明内容
针对计算机企业级软件使用许可的管理保护问题,本发明结合注册码和软件狗这两种技术的优点,实现对企业级软件授权与并发用户数的管理与控制。
本发明为实现上述目的所采用的技术方案是:一种实时授权的软件License控制方法,服务端运行于软件开发商的服务器;客户端运行于客户的服务器,包括客户端应用模块和客户端服务模块,客户端服务模块中的License控制模块用于对客户端应用模块和客户端服务模块的授权,包括以下步骤:
在服务端设置软件***用户名、序列号、客户端应用模块并发用户数、是否试用版本;客户端服务模块同时发布服务器数;
服务端将License文件内容以及文件本身采用DES加密算法,应用不同的加密密钥双重加密后生成License文件;
客户端服务模块将用户名、计算机CPU序列号、网卡物理地址、硬盘序列号与加密锁绑定后,从服务端获取License文件;
License控制模块解析此License文件,实时控制客户端服务模块和客户端应用模块的并发数量。
所述客户端服务模块从服务端获取License文件后,当客户端服务模块启动时,向License控制模块发送授权请求;License控制模块对请求信息与服务端数据库中的信息进行比对,验证请求信息匹配成功的客户端服务模块是否已经被授权License文件,如果请求信息匹配成功的客户端服务模块没有被授权,则向其授权License文件;如果请求信息匹配成功的客户端服务模块已经被授权,则对需要进行软件升级的客户端服务模块授权License文件。
所述客户端服务模块从服务端获取License文件后,当客户端应用模块有用户登录时,向License控制模块发送授权请求;License控制模块对请求信息与服务端数据库中的信息进行比对,验证请求信息匹配成功的客户端应用模块是否已经被授权License文件,如果请求信息匹配成功的客户端应用模块没有被授权,则向其授权License文件;如果请求信息匹配成功的客户端应用模块已经被授权,则对需要进行软件升级的客户端应用模块授权License文件。
所述客户端服务模块被授权License文件后,License控制模块通过心跳协议实时与客户端应用模块进行信息交换,License控制模块释放掉已经过期或异常离线的用户授权。
所述客户端服务模块被授权License文件后,License控制模块记录试用版软件的使用时间,在试用版软件到期前向客户端应用模块发送到期提醒。
所述试用版软件转换为正式版软件时,服务端更新License文件。
本发明具有以下优点:
1.本发明方法结合注册码和软件狗这两种技术的优点,实现对企业级软件授权与并发用户数的管理与控制;
2.针对计算机企业级软件使用许可的管理保护问题,本发明实现对客户阶段性软件使用和定期收取费用的功能;
3.实现控制软件对不同的模块进行发行和访问;
4.开展软件租赁以及试用版发行业务,可以设定试用版的有效时间,超过这个有效时间则该软件无效。
附图说明
图1为本发明的软件***框架图;
图2为客户端从服务端获取License授权文件的流程图;
图3为License控制模块实时向客户端应用模块和客户端服务模块授权的交互流程图。
具体实施方式
下面结合附图及实施例对本发明做进一步的详细说明。
软件采用面向服务的架构(SOA—serviceorientedarchitecture),在服务端设置客户端应用模块并发用户数、客户端服务模块同时发布服务器数等控制量,并与用户名和自动生成的GUID(GloballyUniqueIdentifier,全球唯一标识符)序列号绑定;客户端将用户名、序列号与加密锁等硬件信息(计算机CPU序列号、网卡物理地址、硬盘序列号)绑定后从服务端获取加密处理的License文件;License控制模块解析此License文件,实现实时控制整个软件***的授权。
图1示出了基于实时授权的软件***框架图,按照不同功能划分为以下几个部分:服务端、客户端应用模块、客户端服务模块、License控制模块。***的核心在于License控制模块。
客户端分为客户端应用模块和客户端服务模块(License控制模块属于客户端服务模块),客户端服务模块从服务端获取License文件并通过心跳协议实时控制客户端应用模块的并发用户数及权限。
图2示出了客户端从服务端获取License授权文件的流程图。
客户端从服务端获取License授权文件的过程如下:
服务端设置软件***用户名、序列号、并发用户数、是否试用版本,并将用户名和序列号绑定后发布给客户端;
客户端在安装软件过程中输入用户名和序列号,将加密锁等硬件信息发送到服务端申请License文件;
服务端对请求信息验证,对于合法用户,向其授权License文件。
图3示出了License控制模块实时向客户端应用模块和客户端服务模块授权的交互流程图。
License控制模块实时向客户端应用模块和客户端服务模块授权的过程如下:
License控制模块启动,获取加密锁等硬件信息,将加密的License文件解密,与License文件匹配,如果硬件不匹配或者软件版本为试用版且已过期,则License控制模块不能启动,其他客户端服务模块和应用端用户也就不能从License控制模块获取授权,整个软件***不能使用;
License控制模块启动后会实时匹配硬件信息和试用版本软件使用期限,并检测当前软件***是否运行于虚拟机中,当与License文件匹配失败时会及时终止授权;
客户端应用模块或客户端服务模块启动时向License控制模块请求授权,并指定授权期限,在授权期限到期前向License控制模块续约授权,License控制模块根据License文件控制并发用户数;
各授权请求端在授权期限内通过心跳协议实时同License控制模块进行信息交换,License控制模块会及时释放掉已经过期或因异常原因离线的用户授权,从而防止异常离线用户长期占用License授权;
通过实践表明,使用本发明方法能有效实时控制企业级软件授权及软件并发在线用户数。
根据本发明,提供了一种实现实时授权的软件License控制方法,包括步骤:
软件采用面向服务的架构(SOA),在服务端设置客户端应用模块并发用户数、客户端服务模块同时发布服务器数等控制量,将文件内容以及文件本身采用DES(DataEncryptionAlgorithm)加密算法应用不同的加密密钥双重加密后生成License文件;
License文件(加密存储)格式:
[LicenseInfo]
EventProcessNum=******//软件***处理事件的数量
AlarmProcessNum=******//软件***处理报警的数量
ResourceMonitorProcessNum=******//软件***资源监视的数量
HistorianProcessNum=******//软件***采集标签点的数量
PlanSchedulingNum=******//应用模块客户端并发用户数
WIPNum=******//应用模块客户端并发用户数
TraceNum=******//应用模块客户端并发用户数
EquipMaintainNum=******//应用模块客户端并发用户数
SPCNum=******//应用模块客户端并发用户数
OEENum=******//应用模块客户端并发用户数
ResourceBoardNum=******//应用模块客户端并发用户数
SystemMgrNum=******//应用模块客户端并发用户数
ModelingNum=******//应用模块客户端并发用户数
QueryNum=******//应用模块客户端并发用户数
AlertNum=******//服务模块发布服务器数
DBVisitNum=******//服务模块发布服务器数
EventNum=******//服务模块发布服务器数
ExcelReportNum=******//服务模块发布服务器数
HistorianVisitNum=******//服务模块发布服务器数
LicenseNum=******//服务模块发布服务器数
MessageBusNum=******//服务模块发布服务器数
PermissionNum=******//服务模块发布服务器数
ResMonitorNum=******//服务模块发布服务器数
DBVisitConcurrencyNum=******//数据库服务并发访问数控制
ExcelReportConcurrencyNum=******//Excel报表并发访问数控制
HardwareInfo=******//硬件信息
StartTime=******//软件授权时间,从加密锁(或服务端计算机)//获取,不可修改
TrialPeriod=******//软件***试用期限
IsReleaseVersion=******//软件***是否为试用版本
ConnectionLifetime=******//数据库连接池配置
MaxPoolSize=******//数据库连接池配置
MinPoolSize=******//数据库连接池配置
PacketSize=******//数据库连接池配置
将生成的License文件与用户名和自动生成的GUID序列号绑定;
客户端将用户名、序列号与加密锁等硬件信息绑定后从服务端获取加密处理的License文件;
客户端License控制模块解析此License文件,实时控制其他客户端服务模块及应用模块的并发数量;
当客户端服务模块启动时向License控制模块发送授权请求;License控制模块根据客户端服务模块的使用情况并检测软件是否运行于虚拟机中且与加密锁等硬件信息匹配后决定是否对其授权;
客户端应用模块用户登录时向License控制模块发送授权请求;License控制模块根据当前应用模块的并发用户数量并检测软件是否运行于虚拟机中且与加密锁等硬件信息匹配后决定是否对其授权,对应用模块用户授权后会实时通过心跳协议与应用模块用户通讯,对于异常离线的用户,及时释放其授权;
应用模块用户在使用软件***过程中会定期向License控制模块续约授权;
对于试用版本的软件,License控制模块记录软件的使用时间,在软件到期前会向用户发送邮件和短信息提醒;
软件用户从试用版本向正式版本升级时,服务端会更新License文件,重新对软件进行授权。
根据本发明的方法,能有效控制计算机企业级软件的使用许可。

Claims (6)

1.一种实时授权的软件License控制方法,其特征在于,服务端运行于软件开发商的服务器;客户端运行于客户的服务器,包括客户端应用模块和客户端服务模块,客户端服务模块中的License控制模块用于对客户端应用模块和客户端服务模块的授权,包括以下步骤:
在服务端设置软件***用户名、序列号、客户端应用模块并发用户数、是否试用版本;客户端服务模块同时发布服务器数;
服务端将License文件内容以及文件本身采用DES加密算法,应用不同的加密密钥双重加密后生成License文件;
客户端服务模块将用户名、计算机CPU序列号、网卡物理地址、硬盘序列号与加密锁绑定后,从服务端获取License文件;
License控制模块解析此License文件,实时控制客户端服务模块和客户端应用模块的并发数量。
2.根据权利要求1所述的一种实时授权的软件License控制方法,其特征在于,所述客户端服务模块从服务端获取License文件后,当客户端服务模块启动时,向License控制模块发送授权请求;License控制模块对请求信息与服务端数据库中的信息进行比对,验证请求信息匹配成功的客户端服务模块是否已经被授权License文件,如果请求信息匹配成功的客户端服务模块没有被授权,则向其授权License文件;如果请求信息匹配成功的客户端服务模块已经被授权,则对需要进行软件升级的客户端服务模块授权License文件。
3.根据权利要求1所述的一种实时授权的软件License控制方法,其特征在于,所述客户端服务模块从服务端获取License文件后,当客户端应用模块有用户登录时,向License控制模块发送授权请求;License控制模块对请求信息与服务端数据库中的信息进行比对,验证请求信息匹配成功的客户端应用模块是否已经被授权License文件,如果请求信息匹配成功的客户端应用模块没有被授权,则向其授权License文件;如果请求信息匹配成功的客户端应用模块已经被授权,则对需要进行软件升级的客户端应用模块授权License文件。
4.根据权利要求2或3所述的一种实时授权的软件License控制方法,其特征在于,所述客户端服务模块被授权License文件后,License控制模块通过心跳协议实时与客户端应用模块进行信息交换,License控制模块释放掉已经过期或异常离线的用户授权。
5.根据权利要求2或3所述的一种实时授权的软件License控制方法,其特征在于,所述客户端服务模块被授权License文件后,License控制模块记录试用版软件的使用时间,在试用版软件到期前向客户端应用模块发送到期提醒。
6.根据权利要求5所述的一种实时授权的软件License控制方法,其特征在于,所述试用版软件转换为正式版软件时,服务端更新License文件。
CN201210429306.XA 2012-10-30 2012-10-30 一种实时授权的软件License控制方法 Active CN103258151B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210429306.XA CN103258151B (zh) 2012-10-30 2012-10-30 一种实时授权的软件License控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210429306.XA CN103258151B (zh) 2012-10-30 2012-10-30 一种实时授权的软件License控制方法

Publications (2)

Publication Number Publication Date
CN103258151A CN103258151A (zh) 2013-08-21
CN103258151B true CN103258151B (zh) 2016-01-20

Family

ID=48962063

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210429306.XA Active CN103258151B (zh) 2012-10-30 2012-10-30 一种实时授权的软件License控制方法

Country Status (1)

Country Link
CN (1) CN103258151B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017219287A1 (zh) * 2016-06-22 2017-12-28 华为技术有限公司 一种虚拟场景下的许可证激活方法及装置
CN109753769A (zh) * 2018-11-23 2019-05-14 众安信息技术服务有限公司 一种基于区块链的软件授权方法及***

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103440441A (zh) * 2013-08-28 2013-12-11 北京华胜天成科技股份有限公司 软件保护的方法及***
CN103491098B (zh) * 2013-09-30 2016-06-22 华中师范大学 基于公钥密码体制的软件授权方法
CN104700002B (zh) * 2013-12-05 2018-02-27 航天信息软件技术有限公司 一种软件保护、授权和注册的方法
CN103793630A (zh) * 2014-01-14 2014-05-14 上海上讯信息技术股份有限公司 多产品多平台授权管理***及方法
CN103995991B (zh) * 2014-05-07 2017-02-15 华中师范大学 一种软件版权保护中绑定硬件信息与密钥的方法
EP3012761B1 (de) 2014-10-20 2021-09-08 dSPACE digital signal processing and control engineering GmbH Schutz von softwaremodellen
CN104318133A (zh) * 2014-10-28 2015-01-28 艾普工华科技(武汉)有限公司 基于图片加密License的处理方法及装置
CN105681259A (zh) * 2014-11-20 2016-06-15 中兴通讯股份有限公司 一种开放授权方法、装置及开放平台
CN104504308B (zh) * 2014-12-11 2017-09-01 国云科技股份有限公司 一种禁止虚拟机使用软件的许可证验证方法
CN104573493B (zh) * 2014-12-25 2018-07-06 北京深思数盾科技股份有限公司 一种软件保护方法和***
CN105224832A (zh) * 2015-10-16 2016-01-06 浪潮电子信息产业股份有限公司 一种License授权集中管理的方法
CN105653902B (zh) * 2016-02-01 2018-11-13 深圳市新产业生物医学工程股份有限公司 软件注册方法和装置,注册码生成方法和装置
CN105956423B (zh) * 2016-04-21 2019-03-29 网宿科技股份有限公司 认证方法及装置
CN106503492A (zh) * 2016-10-27 2017-03-15 厦门中控生物识别信息技术有限公司 一种授权管理方法、服务器、客户设备和***
CN106528151A (zh) * 2016-10-28 2017-03-22 美的智慧家居科技有限公司 软件开发工具包管理方法及装置
US10133856B2 (en) * 2016-11-07 2018-11-20 Honeywell International Inc. Method and system for managing software license for vehicle
CN106960139B (zh) * 2017-04-10 2018-10-19 北京深思数盾科技股份有限公司 一种软件数字许可管理方法及***
CN107885979A (zh) * 2017-11-08 2018-04-06 江苏国泰新点软件有限公司 一种软件免费试用的方法、装置、试用设备及存储介质
CN107784206A (zh) * 2017-11-10 2018-03-09 北京深思数盾科技股份有限公司 软件保护方法和装置以及软件验证方法和装置
CN109784085B (zh) * 2017-11-15 2023-10-27 中兴通讯股份有限公司 虚拟网络应用实现方法及管理***、计算机可读存储介质
CN108920911A (zh) * 2018-06-19 2018-11-30 陕西师范大学 防拷贝式软件授权方法及装置
CN109063423B (zh) * 2018-07-16 2020-12-11 北京知道创宇信息技术股份有限公司 应用软件授权方法及***
CN109284586B (zh) * 2018-08-27 2020-05-19 武汉达梦数据库有限公司 一种软件授权许可实现方法和装置
CN109376506A (zh) * 2018-10-29 2019-02-22 北京京航计算通讯研究所 基于j2ee技术体系的应用软件许可认证***
CN109063427A (zh) * 2018-10-29 2018-12-21 北京京航计算通讯研究所 基于j2ee技术体系的应用软件许可认证方法
CN109743412A (zh) * 2019-01-03 2019-05-10 山东浪潮通软信息科技有限公司 一种基于用户注册数的序列号控制方法
CN110110505A (zh) * 2019-05-08 2019-08-09 上海航天电子有限公司 基于USBkey及注册序列号绑定的遥控加密设备
CN110781459A (zh) * 2019-09-04 2020-02-11 西安交大捷普网络科技有限公司 一种授权许可的管控方法、***及电子设备
CN110996319B (zh) * 2019-11-01 2024-05-28 北京握奇智能科技有限公司 一种对软件服务做激活授权管理的***及方法
CN111258615A (zh) * 2019-12-26 2020-06-09 北京威努特技术有限公司 工控主机及其软件升级的方法、装置及移动存储介质
CN111245844A (zh) * 2020-01-14 2020-06-05 南通先进通信技术研究院有限公司 一种基于核心网设备License的集中控制方法
CN112084468A (zh) * 2020-08-29 2020-12-15 富盛科技股份有限公司 一种多软件授权验证方法
CN112511399B (zh) * 2020-11-03 2021-12-24 杭州迪普科技股份有限公司 用户数量控制方法、装置、设备及计算机可读存储介质
CN113569205A (zh) * 2021-06-25 2021-10-29 合肥综合性国家科学中心人工智能研究院(安徽省人工智能实验室) 一种sdk软件接口服务授权方法及装置
CN114357434A (zh) * 2021-11-03 2022-04-15 统信软件技术有限公司 基于虚拟机的操作***授权方法、装置、***及计算设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101399663A (zh) * 2008-10-14 2009-04-01 北京大学 一种数字内容授权方法、***及装置
CN101404573A (zh) * 2008-10-27 2009-04-08 北京大学 一种授权方法、***及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100930695B1 (ko) * 2007-08-06 2009-12-09 현대자동차주식회사 디알엠 시스템 및 디알엠 콘텐츠 관리방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101399663A (zh) * 2008-10-14 2009-04-01 北京大学 一种数字内容授权方法、***及装置
CN101404573A (zh) * 2008-10-27 2009-04-08 北京大学 一种授权方法、***及装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017219287A1 (zh) * 2016-06-22 2017-12-28 华为技术有限公司 一种虚拟场景下的许可证激活方法及装置
CN109753769A (zh) * 2018-11-23 2019-05-14 众安信息技术服务有限公司 一种基于区块链的软件授权方法及***
CN109753769B (zh) * 2018-11-23 2021-03-02 众安信息技术服务有限公司 一种基于区块链的软件授权方法及***

Also Published As

Publication number Publication date
CN103258151A (zh) 2013-08-21

Similar Documents

Publication Publication Date Title
CN103258151B (zh) 一种实时授权的软件License控制方法
CN103186725B (zh) 软件授权方法和装置
US9449354B2 (en) Licensing for services
US6895503B2 (en) Method and apparatus for hierarchical assignment of rights to documents and documents having such rights
CN101866404B (zh) 软件***模块独立授权控制方法和装置
CN100487626C (zh) 用于控制数字编码产品使用的计算机实现方法和***
CN103714273B (zh) 一种基于在线动态授权的软件授权***及方法
CN103906054A (zh) 物联网软件功能模块授权方法及***
CN102497374A (zh) 基于云计算可离线的软件许可集中安全认证***及其方法
CN105224832A (zh) 一种License授权集中管理的方法
KR20120122616A (ko) Drm 서비스 제공 방법 및 장치
WO2012155456A1 (zh) 一种许可控制方法及***
EP2637120B1 (en) Enterprise license registrar anchor point
CN101043403A (zh) 基于域的数字版权保护家庭网络***
CN1776703A (zh) 基于软件保护装置的软件分发方法
CN103793630A (zh) 多产品多平台授权管理***及方法
EP2119102A1 (en) Method and apparatus for digital rights management for use in mobile communication terminal
CN107133499B (zh) 一种软件版权保护方法、客户端、服务端以及***
WO2012151973A1 (zh) 许可管理方法及装置
CN101458744A (zh) 一种基于可信计算思想的数字版权管理代理***及其方法
US20120284797A1 (en) Drm service providing method, apparatus and drm service receiving method in user terminal
CN108111534B (zh) 一种控制授权许可的方法以及装置
CN104935576A (zh) 数据安全分存和指定用户分享***
CN101281569A (zh) 一种使用网络版软件保护装置控制软件客户端数量的方法
CN103795694A (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
C14 Grant of patent or utility model
GR01 Patent grant