CN104504308B - 一种禁止虚拟机使用软件的许可证验证方法 - Google Patents
一种禁止虚拟机使用软件的许可证验证方法 Download PDFInfo
- Publication number
- CN104504308B CN104504308B CN201410758184.8A CN201410758184A CN104504308B CN 104504308 B CN104504308 B CN 104504308B CN 201410758184 A CN201410758184 A CN 201410758184A CN 104504308 B CN104504308 B CN 104504308B
- Authority
- CN
- China
- Prior art keywords
- software
- hard disk
- virtual machine
- licensing
- time
- 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
- 238000010200 validation analysis Methods 0.000 title claims abstract description 8
- 230000000694 effects Effects 0.000 claims abstract description 3
- 238000000034 method Methods 0.000 claims description 10
- 238000005516 engineering process Methods 0.000 abstract description 3
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
- G06F21/123—Restricting unauthorised execution of programs by using dedicated hardware, e.g. dongles, smart cards, cryptographic processors, global positioning systems [GPS] devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2137—Time limited access, e.g. to a computer or data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2153—Using hardware token as a secondary aspect
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Technology Law (AREA)
- Multimedia (AREA)
- Remote Sensing (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Storage Device Security (AREA)
Abstract
本发明涉及云计算技术领域,特别是指一种禁止虚拟机使用软件的许可证验证方法。本发明首先在生成许可证时,把硬盘序列号以及许可证开始生效到失效的间隔天数写入到许可证内;当软件首次运行时,读取硬盘当时的累计通电时间;在每次软件运行时,查询运行时硬盘的累计通电时间;如果查询的结果为空,表示软件当时在虚拟机中运行,验证不通过,软件自动退出;计算运行时硬盘的累计通电时间与初次运行时硬盘的累计通电时间的差值,如果大于许可证的间隔天数的话,那么表示许可证已经到期,验证不通过,软件自动退出;否则软件进入正常运行状态。本发明解决了虚拟机使用软件的许可问题;可以用于虚拟机软件使用的管理。
Description
技术领域
本发明涉及云计算技术领域,特别是指一种禁止虚拟机使用软件的许可证验证方法。
背景技术
在云计算环境下,越来越多的公司开始使用虚拟化数据中心和云服务。目前有部分商业软件为了保证软件用户体验或者防止被大量复制而绕开付费机制,一般都采取措施控制软件在虚拟机上安装和使用。目前商业软件采用的方式有两类,第一类通过采集用户使用计算机上硬件的特征码生成许可证,如网卡物理地址、硬盘序列号等,在软件使用时进行信息的采集,两个特征对比判断一致后,最后通过对比许可证有效期限与当前的日期后验证许可证的有效性。第二类通过查询操作系统注册表的信息来判定计算机是否为虚拟机,这种方法一般只适用于Windows操作系统。
上述常用方法存在以下的弊端:
1、硬件特征码可以进行修改,网卡物理地址和硬盘序列号等在虚拟机生成时可以进行配置,并不是物理机的专属,虚拟机的硬件特征码也可以配置成与物理机类似,容易被绕过。
2、注册表也可以通过启动后修改而绕过限制,注册表的硬件信息虽然在虚拟机操作系统重启后是重新读取的,但是在启动完成以后可以进行修改,去掉虚拟机的信息,从而绕开验证的机制。
3、可以通过修改操作系统的时间绕开验证。
发明内容
本发明解决的技术问题在于提供一种禁止虚拟机使用软件的许可证验证方法,既保证软件用户体验,又可防止软件被大量复制而绕开付费机制。
本发明解决上述技术问题的技术方案是:
所述的方法包括如下步骤:
步骤1:生成许可证时,将硬盘序列号以及许可证开始生效到失效的间隔天数写入到许可证;
步骤2:软件首次运行时,调用操作系统的接口读取硬盘当时的累计通电时间;此后,每次软件运行时,从许可证中读取硬盘序列号及间隔天数,并根据硬盘序列号查询运行时硬盘的累计通电时间;
步骤3:如果查询的结果为空,表示软件当时在虚拟机中运行,验证不通过,软件自动退出;如果查询结果不为空,则计算运行时硬盘的累计通电时间与初次运行时硬盘的累计通电时间的差值,如果大于许可证的间隔天数,表示许可证已经到期,验证不通过,软件自动退出;否则软件进入正常运行状态。
所述硬盘的累计通电时间在虚拟机中不能获取,可以作为辨识虚拟机与物理机的特征。
所述硬盘的累计通电时间在物理机中是一个随时间递增的值,可以作为计算物理机已运行时间的一种手段。
本发明能带来如下有益的效果:
1、本发明的方法的硬盘的累计通电时间在虚拟机中不能获取,可以作为辨识虚拟机与物理机的特征;
2、本发明的方法通过读取硬盘累计通电时间来验证使用期限,此时间不可修改,使用期限的验证不能被绕开。
附图说明
下面结合附图对本发明进一步说明:
图1是本发明的流程图;
图2是本发明根据硬盘使用时间进行验证的流程图。
具体实施方式
本发明的实施方式有多种,这里以Linux下的iptables为例说明其中一种实现方
法,流程图如图1所示,具体实施过程如下:
1、证书生成
支持将添加磁盘序列号和使用时间长短(天数)的编码:
例如:”Server.diskId=Z2F0RGFF”和”License.useDays=30”
其中Server.diskId从配置文件读取,而License.useDays可以根据当前系统日期和到期时间算出来。
代码实现:
String content=fileUtil.readProperties(propertyPath);
增加License.useDays=****一行内容。
2、验证过程如图2所示
1)获取磁盘序列号以及可使用天数
2)获取可使用天数,并与磁盘使用的时间进行对比
3)判断证书是否过期
Claims (3)
1.一种禁止虚拟机使用软件的许可证验证方法,其特征在于:所述的方法包括如下步骤:
步骤1:生成许可证时,将硬盘序列号以及许可证开始生效到失效的间隔天数写入到许可证;
步骤2:软件首次运行时,调用操作系统的接口读取硬盘当时的累计通电时间;此后,每次软件运行时,从许可证中读取硬盘序列号及间隔天数,并根据硬盘序列号查询运行时硬盘的累计通电时间;
步骤3:如果查询的结果为空,表示软件当时在虚拟机中运行,验证不通过,软件自动退出;如果查询结果不为空,则计算运行时硬盘的累计通电时间与初次运行时硬盘的累计通电时间的差值,如果大于许可证的间隔天数,表示许可证已经到期,验证不通过,软件自动退出;否则软件进入正常运行状态。
2.根据权利要求1所述的禁止虚拟机使用软件的许可证验证方法,其特征在于:所述硬盘的累计通电时间在虚拟机中不能获取,可以作为辨识虚拟机与物理机的特征。
3.根据权利要求1或2所述的禁止虚拟机使用软件的许可证验证方法,其特征在于:所述硬盘的累计通电时间在物理机中是一个随时间递增的值,可以作为计算物理机已运行时间的一种手段。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410758184.8A CN104504308B (zh) | 2014-12-11 | 2014-12-11 | 一种禁止虚拟机使用软件的许可证验证方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410758184.8A CN104504308B (zh) | 2014-12-11 | 2014-12-11 | 一种禁止虚拟机使用软件的许可证验证方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104504308A CN104504308A (zh) | 2015-04-08 |
CN104504308B true CN104504308B (zh) | 2017-09-01 |
Family
ID=52945705
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410758184.8A Active CN104504308B (zh) | 2014-12-11 | 2014-12-11 | 一种禁止虚拟机使用软件的许可证验证方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104504308B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107341368B (zh) * | 2017-06-06 | 2019-11-05 | 广州视源电子科技股份有限公司 | 许可证有效时间校验方法及装置 |
CN112149066A (zh) * | 2020-09-23 | 2020-12-29 | 深兰人工智能芯片研究院(江苏)有限公司 | 软件的激活验证方法和装置 |
CN114626025A (zh) * | 2020-12-09 | 2022-06-14 | 台达电子工业股份有限公司 | 于离线环境下使用的软件授权验证方法 |
CN113282371B (zh) * | 2021-05-27 | 2024-07-23 | 杭州迪普科技股份有限公司 | 虚拟化网络设备的性能管理方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101247400A (zh) * | 2008-03-03 | 2008-08-20 | 华为技术有限公司 | 许可证控制方法及管理装置 |
CN102521530A (zh) * | 2011-10-21 | 2012-06-27 | 张国 | 一种许可证回收方法及系统 |
CN103258151A (zh) * | 2012-10-30 | 2013-08-21 | 中国科学院沈阳自动化研究所 | 一种实时授权的软件License控制方法 |
-
2014
- 2014-12-11 CN CN201410758184.8A patent/CN104504308B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101247400A (zh) * | 2008-03-03 | 2008-08-20 | 华为技术有限公司 | 许可证控制方法及管理装置 |
CN102521530A (zh) * | 2011-10-21 | 2012-06-27 | 张国 | 一种许可证回收方法及系统 |
CN103258151A (zh) * | 2012-10-30 | 2013-08-21 | 中国科学院沈阳自动化研究所 | 一种实时授权的软件License控制方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104504308A (zh) | 2015-04-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10866945B2 (en) | User account management via a distributed ledger | |
US11902601B2 (en) | System and techniques for digital data lineage verification | |
TWI667586B (zh) | 用以核對uefi認證變量變化之系統及方法 | |
CN104604204B (zh) | 在同步通信中安全地操控服务器证书错误 | |
US10432622B2 (en) | Securing biometric data through template distribution | |
CN104504308B (zh) | 一种禁止虚拟机使用软件的许可证验证方法 | |
US11601281B2 (en) | Managing user profiles securely in a user environment | |
BR112013009278B1 (pt) | Terminal de usuário e método para impor uma política de uso de aplicativo gerado por servidor | |
US20120260096A1 (en) | Method and system for monitoring a secure document | |
JP2017534951A (ja) | 所有ファクタの証明書を更新するためのシステム及び方法 | |
CN104796412B (zh) | 端到端云服务系统及对其敏感数据的访问方法 | |
CN105706099A (zh) | 软件更新装置及软件更新程序 | |
US20140157368A1 (en) | Software authentication | |
CN112037058B (zh) | 数据验证方法、装置及存储介质 | |
CN104951714B (zh) | 基于系列的设备绑定的方法 | |
CN109086578A (zh) | 一种软件授权使用的方法、设备及存储介质 | |
US11575499B2 (en) | Self auditing blockchain | |
US20090007261A1 (en) | Receiving data in a data store in a server computer system | |
CN104346550A (zh) | 一种信息处理方法以及一种电子设备 | |
US9860230B1 (en) | Systems and methods for digitally signing executables with reputation information | |
EP3365822B1 (en) | Managing application specific feature rights | |
CN106569907A (zh) | 一种系统启动文件的校验及编译方法 | |
CN103685259B (zh) | 账户登录的方法及其装置 | |
US11874752B1 (en) | Methods and systems for facilitating cyber inspection of connected and autonomous electrical vehicles using smart charging stations | |
US9942183B2 (en) | Processing connection request in online service |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP02 | Change in the address of a patent holder | ||
CP02 | Change in the address of a patent holder |
Address after: 523808 19th Floor, Cloud Computing Center, Chinese Academy of Sciences, No. 1 Kehui Road, Songshan Lake Hi-tech Industrial Development Zone, Dongguan City, Guangdong Province Patentee after: G-Cloud Technology Co., Ltd. Address before: 523808 No. 14 Building, Songke Garden, Songshan Lake Science and Technology Industrial Park, Dongguan City, Guangdong Province Patentee before: G-Cloud Technology Co., Ltd. |