CN103995991A - 一种软件版权保护中绑定硬件信息与密钥的方法 - Google Patents
一种软件版权保护中绑定硬件信息与密钥的方法 Download PDFInfo
- Publication number
- CN103995991A CN103995991A CN201410190684.6A CN201410190684A CN103995991A CN 103995991 A CN103995991 A CN 103995991A CN 201410190684 A CN201410190684 A CN 201410190684A CN 103995991 A CN103995991 A CN 103995991A
- Authority
- CN
- China
- Prior art keywords
- user
- server
- key
- client
- hardware information
- 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.)
- Granted
Links
- 230000027455 binding Effects 0.000 title claims abstract description 78
- 238000009739 binding Methods 0.000 title claims abstract description 78
- 238000000034 method Methods 0.000 title claims abstract description 38
- 230000008859 change Effects 0.000 claims description 20
- 230000008569 process Effects 0.000 claims description 9
- 238000003860 storage Methods 0.000 claims description 7
- 238000013475 authorization Methods 0.000 claims description 5
- 238000012544 monitoring process Methods 0.000 claims description 4
- 230000005540 biological transmission Effects 0.000 claims description 3
- 238000004891 communication Methods 0.000 claims description 3
- 238000012986 modification Methods 0.000 claims description 3
- 230000004048 modification Effects 0.000 claims description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 230000002155 anti-virotic effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000000739 chaotic effect Effects 0.000 description 1
- 238000005336 cracking Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000007480 spreading Effects 0.000 description 1
- 238000003892 spreading 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
-
- 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/101—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities
- G06F21/1011—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities to devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/062—Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Computing Systems (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Storage Device Security (AREA)
Abstract
本发明涉及的一种软件版权保护中绑定硬件信息与密钥的方法,其特征在于:由服务器根据用户请求生成用户密钥对;由服务器对用户信息进行验证并实现用户硬件信息与密钥的绑定与管理;若是用户信息合法,则将其硬件信息与密钥进行绑定。
Description
技术领域
本发明涉及基于网络的软件版权保护技术,具体地说是一种软件版权保护中绑定硬件信息与密钥的方法。
背景技术
随着社会的进步,对于知识产权的保护也变得日益重要。而网络和信息技术的高速发展,极大地降低了数字化产品(如软件)等盗版的难度,人们可以随意拷贝使用数字化产品,给知识产权的保护带来了极大的威胁。
在数字化产品的使用过程中,保障版权所有者的权益成为国内外面临的巨大问题和挑战,如何保障版权所有者的权益显得尤为重要。
目前的软件版权保护中绑定硬件信息与密钥方法主要有两种:一是硬加密,二是软加密。
硬加密将要保护的软件与硬件加密锁绑定,一些重要信息,如加密密钥、敏感数据、授权文件、自定义算法等都存储在加密锁中。软加密指不需要额外硬件的软件保护方式,一般采取序列号或许可证文件的授权方式。很多软加密方案采用与机器硬件绑定的方式,但它绑定是机器本身的硬件信息,如CPU、BIOS、硬盘、MAC等,没有增加额外的硬件设备。
以上两种软件保护方法,在进行用户验证的过程中,都用到了绑定硬件信息与密钥的技术。绑定硬件信息与密钥技术主要用在一些软件的安装与使用上,将用户硬件信息如CPU,硬盘,网卡,主板等与密钥绑定,用以限制使用同一密钥的用户数或设备数,从而达到对软件进行保护的目的。其主要应用于收费软件,比如操作***、杀毒软件、数字版权管理***等。
目前使用绑定硬件信息与密钥的方法主要有以下三种:
一、在软件分发时内置密钥,这种方法实质上是对每一个发行的软件内置密钥,在用户安装后,通过网络将用户硬件信息与密钥信息发送至服务器进行注册验证。
上述这种方法的缺点是:
1.对不同用户需要分别进行软件打包,软件升级困难;
2.用户更换软件,需要重新验证硬件信息及密钥;
3.密钥管理复杂混乱,易出现错误。
二、根据硬件信息生成密钥,这种方法是根据用户的硬件信息,直接生成密钥。
这种方法的缺点是:
1.硬件信息生成固定密钥算法存在一定安全隐患,容易给攻击者采用分析程序进行跟踪、反编译等手段进行攻击;
2.用户更换损坏硬件会造成密钥不一致。
三、将密钥内置于硬件,这种方法是在硬件中内置密钥。
这种方法的缺点是:
1.硬件损坏,会造成密钥灭失;
2.软件需要在指定硬件上运行,相当于软硬件捆绑销售。
由于现有技术绑定硬件信息与密钥方法的上述缺点,造成用户绑定硬件信息与密钥过程繁琐,不仅使软件的使用变得困难而导致软件推广受阻,同时也使得合法用户的权益得不到保障。所以发明一种快速高效灵活的绑定硬件信息与密钥的方法是十分有意义的。
发明内容
本发明的目的旨在:提供一种基于网络的绑定硬件与密钥的方法,快速高效灵活地绑定硬件信息与密钥,提高软件保护的用户体验及效率。
本发明的目的是这样实现的:
这种软件版权保护中绑定硬件信息与密钥的方法,其特征在于:由服务器根据用户请求生成用户密钥对;由服务器对用户信息进行验证并实现用户硬件信息与密钥的绑定与管理;若是用户信息合法,则将其硬件信息与密钥进行绑定。
绑定用户硬件信息与密钥步骤如下:
(a)用户在软件提供者处下载软件,并安装;
(b)用户在软件提供者处服务器进行注册;
(c)用户登录,客户端为用户生成一对非对称密钥对私钥A、公钥A;
(d)用户将用户信息、硬件信息、公钥A发送至服务器;
(e)服务器验证用户信息,如果用户信息不合法,服务器则向客户端发送错误信息,提示用户;如果用户信息合法,服务器在数据库中对用户的硬件信息进行查找;若不存在,则表明用户的硬件信息不存在,即用户的硬件未注册,服务器便对用户硬件信息进行注册,生成一对非对称密钥对私钥B、公钥B,并与此硬件信息绑定,存入数据库;若用户的硬件信息存在,即用户的硬件信息已注册,服务器从数据库中读取此硬件信息绑定的私钥B;
(f)服务器使用接收的客户端公钥A,对私钥B进行加密,并发送给用户;
(g)用户接收数据后,使用私钥A进行解密,得到私钥B,存储于本地。
密钥用于软件的版权保护的步骤如下:
(a)用户启动客户端软件,并登录连接服务器;
(b)客户端用户向服务器请求授权文件;
(c)服务器接收用户请求,生成用户授权文件,使用公钥B进行加密;
(d)服务器将加密后的授权文件发送给客户端用户;
(e)客户端用户接收服务器发送的加密的授权文件;
(f)客户端用户使用私钥B解密得到授权文件;
(g)客户端用户读取并验证授权文件,启动客户端软件。
本发明方法详细过程如下:
一.用户下载、安装软件,注册并登录:
(1)用户从服务器下载软件,并安装在本地电脑上;
(2)登录过程如下:
第一步,用户注册,用户可通过服务器网站或客户端软件进行注册。
第二步,发送用户名密码到服务器。
服务器验证用户名密码,若合法,将登录成功信息发送至客户端并提示 用户;若不合法,将登录失败信息发送客户端并提示用户。
二.发送用于通信的非对称密钥:
(1)客户端生成非对称密钥对,并发送公钥至服务器;
(2)服务器收到用户公钥,用其加密与硬件绑定的私钥,并发送至客户端。
上述公钥发送可采用PKI等安全的密钥传递方案。
三.绑定硬件信息与密钥:
(1)用户发送硬件信息至服务器;
(2)服务器收到后,和数据库比对,若存在,进行(4);
(3)服务器生成一对非对称密钥对,与硬件信息绑定,存入服务器;
(4)服务器读取与硬件信息绑定的密钥对中私钥,将其加密后发送至客户端;
(5)客户端解密得到私钥;
四.合法用户启动客户端软件:
(1)用户启动软件,登录客户端软件,连接服务器;
(2)客户端软件将用户信息,用户硬件信息发送至服务器;
(3)客户端用户向服务器请求授权文件,服务器验证用户信息和用户硬件信息;
(4)用户信息和用户硬件信息合法,服务器生成授权文件,并使用绑定硬件信息的密钥对的公钥对授权文件进行加密,得到加密后的授权文件;
(5)服务器将加密后的授权文件发送至客户端用户;
(6)客户端用户接收服务器发送的加密后的授权文件,使用客户端用户存储的与硬件信息绑定的密钥对的私钥进行解密,得到解密后的授权文件;
(7)客户端用户验证授权文件的合法性,合法即成功启动客户端软件。
五.实时监测:
用户在客户端登录后,可以通过网络与服务器进行周期性通信,保持登录状态,同时服务器可以监测用户是否存在硬件更改行为,如手动更改操作***的MAC地址、热插拔逻辑硬盘等。
六.硬件更改:
如果用户更改了硬件,服务器收到更改后的硬件信息,与数据库进行比对,设置一定硬件修改阈值,如没超过硬件信息修改阈值,则提示用户硬件信息修改,需覆盖掉原有硬件信息。若超过硬件信息修改阈值,则提示用户次硬件信息未注册,需要注册次新硬件***信息。
若覆盖原硬件信息,则服务器验证后,在数据库中更新硬件信息;若注册新硬件***,则进行步骤三。注册硬件信息,并绑定硬件信息与密钥。
七.限制同一用户绑定的硬件设备数
服务器设定同一用户所绑定的硬件设备数,用户可以注册多台硬件信息,并分别绑定密钥。当用户在一台新的硬件设备上登录使用客户端软件时,服务器首先检查用户所绑定的硬件设备数是否超出,若超出,则提示用户所绑定硬件设备数超出,无法绑定;若没超出,则服务器生成一对非对称密钥对,并与此硬件绑定。
本发明与国内外现有同类产品的相比,其创造性在于以下几点:
1.提出了一种基于网络的绑定硬件信息与密钥的方法;
2.利用服务器根据用户请求实时生成用户密钥;
3.通过网络实时监测用户硬件信息的改变。
本发明与国内外现有技术的不同点在于:
1.绑定硬件的密钥对由服务器生成管理;
2.用户可实时更新密钥对,提高密钥安全性;
3.用户端硬件更新后容易重新绑定密钥,硬件绑定密钥灵活高效。
本发明的优点是:
1.密钥由服务器生成,防止客户端反编译破解;
2.软件与密钥分离,不用对不同用户进行分别打包;
3.绑定硬件信息与密钥操作容易;
4.硬件更新后的重绑定更容易。
附图说明
图1为本发明绑定硬件信息与密钥的方法流程图;
图2为本发明合法用户启动客户端软件流程图;
图3为硬件更改覆盖原有硬件信息或注册新硬件信息图。
具体实施方式
下面通过具体实施方式对本发明做进一步说明。
这种软件版权保护中绑定硬件信息与密钥的方法,其主要的创意在于:由服务器根据用户请求生成用户密钥对;由服务器对用户信息进行验证并实现用户硬件信息与密钥的绑定与管理;若是用户信息合法,则将其硬件信息与密钥进行绑定。
所述的绑定用户硬件信息与密钥步骤如下:
(a)用户在软件提供者处下载软件,并安装;
(b)用户在软件提供者处服务器进行注册;
(c)用户登录,客户端为用户生成一对非对称密钥对私钥A、公钥A;
(d)用户将用户信息、硬件信息、公钥A发送至服务器;
(e)服务器验证用户信息,如果用户信息不合法,服务器则向客户端发送错误信息,提示用户;如果用户信息合法,服务器在数据库中对用户的硬件信息进行查找;若不存在,则表明用户的硬件信息不存在,即用户的硬件未注册,服务器便对用户硬件信息进行注册,生成一对非对称密钥对私钥B、公钥B,并与此硬件信息绑定,存入数据库;若用户的硬件信息存在,即用户的硬件信息已注册,服务器从数据库中读取此硬件信息绑定的私钥B;
(f)服务器使用接收的客户端公钥A,对私钥B进行加密,并发送给用户;
(g)用户接收数据后,使用私钥A进行解密,得到私钥B,存储于本地。
所述的密钥用于软件的版权保护的步骤如下:
(a)用户启动客户端软件,并登录连接服务器;
(b)客户端用户向服务器请求授权文件;
(c)服务器接收用户请求,生成用户授权文件,使用公钥B进行加密;
(d)服务器将加密后的授权文件发送给客户端用户;
(e)客户端用户接收服务器发送的加密的授权文件;
(f)客户端用户使用私钥B解密得到授权文件;
(g)客户端用户读取并验证授权文件,启动客户端软件。
这种软件版权保护中绑定硬件信息与密钥的方法,其具体操作过程如下:
一.用户下载、安装软件,注册并登录:
(1)用户从服务器下载软件,并安装在本地电脑上;
(2)登录过程如下:
第一步,用户注册,用户可通过服务器网站或客户端软件进行注册;
第二步,发送用户名密码到服务器,由服务器验证用户名密码,若合法将登录成功信息发送至客户端并提示用户;若不合法,将登录失败信息发送客户端并提示用户。
二.发送用于通信的非对称密钥:
(1)客户端生成非对称密钥对,并发送公钥至服务器;
(2)服务器收到用户公钥,用其加密与硬件绑定的私钥,并发送至客户端,所述公钥发送采用PKI安全的密钥传递方案实现;
三.绑定硬件信息与密钥:
(1)用户发送硬件信息至服务器;
(2)服务器收到后和数据库比对,若存在,进行服务器读取与硬件信息绑定的密钥对中私钥,将其加密后发送至客户端;
(3)服务器生成一对非对称密钥对,与硬件信息绑定,存入服务器;
(4)客户端解密得到私钥;
四.合法用户启动客户端软件:
(1)用户启动软件,登录客户端软件,连接服务器;
(2)客户端软件将用户信息,用户硬件信息发送至服务器;
(3)客户端用户向服务器请求授权文件,服务器验证用户信息和用户硬件信息;
(4)用户信息和用户硬件信息合法,服务器生成授权文件,并使用绑定硬件信息的密钥对的公钥对授权文件进行加密,得到加密后的授权文件;
(5)服务器将加密后的授权文件发送至客户端用户;
(6)客户端用户接收服务器发送的加密后的授权文件,使用客户端用户存储的与硬件信息绑定的密钥对的私钥进行解密,得到解密后的授权文件;
(7)客户端用户验证授权文件的合法性,合法即成功启动客户端软件;
五.实时监测:
用户在客户端登录后,可以通过网络与服务器进行周期性通信,保持登录状态,同时服务器可以监测用户是否存在硬件更改行为,如手动更改操作***的MAC地址、热插拔逻辑硬盘;
六.硬件更改:
如果用户更改了硬件,服务器收到更改后的硬件信息,与数据库进行比对,设置一定硬件修改阈值,如没超过硬件信息修改阈值,则提示用户硬件信息修改,需覆盖掉原有硬件信息。若超过硬件信息修改阈值,则提示用户次硬件信息未注册,需要注册次新硬件***信息。
若覆盖原硬件信息,则服务器验证后,在数据库中更新硬件信息;若注册新硬件***,则进行步骤三。注册硬件信息,并绑定硬件信息与密钥;
七.限制同一用户绑定的硬件设备数:
服务器设定同一用户所绑定的硬件设备数,用户可以注册多台硬件信息,并分别绑定密钥。当用户在一台新的硬件设备上登录使用客户端软件时,服务器首先检查用户所绑定的硬件设备数是否超出,若超出,则提示用户所绑定硬件设备数超出,无法绑定;若没超出,则服务器生成一对非对称密钥对,并与此硬件绑定。
实例1:
以软件的版权保护为例。用户在软件提供者处注册,购买软件。购买成功后,下载软件,并安装。用户首次启动客户端软件时,用户登录连接服务器。客户端软件为用户生成一对RSA非对称密钥对私钥A、公钥A;客户端提取用户信息,用户硬件信息,公钥A等数据信息,发送至服务器;服务器在数据库中对合法用户的硬件信息进行查找,若用户硬件信息已注册,则读取出与此用户硬件信息绑定的密钥对的私钥B;若用户硬件信息未注册,则需注册此用户硬件信息,首先检查用户所注册绑定的硬件设备数,若用户所注册绑定的硬件设备数超过服务器所设定的数目,则服务器提示用户所绑定的硬件数目超出限制,若用户所注册绑定的硬件设备没有超出服务器所设定的数目,则服务器生成一对RSA非对称密钥对私钥B、公钥B,并与此硬件信息 绑定,存入数据库;服务器使用客户端用户公钥A对私钥B进行RSA非对称加密,将加密后的私钥B发送给客户端用户;客户端用户得到加密后的私钥B,使用客户端用户私钥A进行RSA解密,得到与硬件信息绑定的私钥B。
使用客户端软件时,用户登录,客户端软件将用户信息,用户硬件信息发送至服务器;客户端用户向服务器请求授权文件;服务器生成授权文件;服务器根据用户信息在数据库中读取出与用户硬件信息绑定的密钥对的公钥B;服务器使用公钥B对授权文件进行RSA非对称加密,并将加密后的授权文件发送至客户端用户;客户端用户接收加密后的授权文件,读取存储与本地的私钥B进行RSA解密,得到解密后的授权文件;客户端用户读取验证解密后的授权文件,成功启动客户端。
实现步骤:
本客户端软件总体上由两个模块组成,用户登录模块和客户端启动模块;用户登录模块用于客户端和服务器之间的连接和通信,客户端启动模块用于启动客户端。用户首次打开客户端,用户登录,服务器生成一对非对称密钥对与用户硬件信息绑定;用户使用客户端软件时,向服务器申请授权文件,服务器加密授权文件发给客户端,客户端解密授权文件并验证授权文件合法性。
服务器端包括验证用户登录信息模块,生成非对称密钥对绑定硬件模块,生成授权文件模块和加密授权文件模块。
一.绑定用户硬件信息与密钥
1.用户注册
用户在软件提供者处服务器端网页或客户端进行注册。
2.用户登录
注册成功后,用户使用注册信息在客户端进行登录。
3.客户端发送信息到服务器
客户端登录连接服务器后,客户端生成一对RSA非对称密钥对公钥A、私钥A,并将用户信息,用户硬件信息,公钥A发送至服务器。
4.服务器生成密钥绑定用户硬件信息
服务器接收到客户端发送的信息,在数据库中查找用户硬件信息,若已注 册,则读取出与硬件信息绑定的密钥对的私钥B;若未注册,则服务器生成一对RSA非对称密钥对公钥B、私钥B,并与硬件信息绑定,存入数据库。
5.服务器加密私钥B发送到客户端
服务器使用接收到的公钥A,用其对与硬件信息绑定的密钥对的私钥B进行RSA非对称加密,得到加密后的私钥B,发送至客户端。
6.客户端解密,得到私钥B
客户端接收到用加密后的私钥B,使用客户端私钥A进行RSA解密,得到解密后的私钥B,存储与本地。
二.合法用户启动客户端软件
1.用户登录
用户注册硬件信息并与密钥绑定后,用户便可使用客户端软件,用户打开客户端,使用注册的用户信息登录,连接服务器。
2.客户端软件申请授权文件;
用户登录,客户端连接上服务器,向服务器发送用户硬件信息,并申请客户端软件的授权文件。
3.服务器生成授权文件;
服务器根据用户的请求,生成客户端软件所需的授权文件。
4.服务器加密授权文件;
服务器提取与用户硬件信息绑定的密钥对的公钥B,使用其对授权文件进行RSA非对称加密;
5.服务器发送授权文件到客户端;
服务器将进行RSA非对称加密后的授权文件发送至客户端;
6.客户端解密授权文件,启动客户端。
客户端接收到服务器发送的加密后的授权文件,使用存储与本地的与硬件信息绑定的私钥B进行RSA解密,得到解密后的授权文件,并验证授权文件,成功启动客户端。
三.用户硬件信息更改
A)用户部分硬件信息更改
用户部分硬件信息更改,如更换硬盘、网卡等,设定一个阈值,将用户的 更改信息与所设定的阈值进行比较,若未超过阈值,服务器则覆盖掉原有的硬件信息,将新的硬件信息与密钥绑定,若超过阈值,则注册新的硬件信息并绑定密钥。
B)用户全部硬件信息更改
用户全部硬件信息更改,如更换电脑,用户登录时提示用户此硬件信息未进行注册,需要注册此硬件,并在服务器段生成密钥绑定此硬件。
四.设定同一用户绑定的硬件设备数
服务器可以限定同一用户所注册的硬件设备数,以防止用户登录信息恶意扩散。
本实例中密钥对的生成,加密均可由openssl完成。
上述仅为本发明的部分优选实施例,本发明并不仅限于实施例的内容。对于本领域中的技术人员来说,在本发明方法范围内可以有各种变化和更改,所作的任何变化和更改,均在本发明保护范围之内。
Claims (4)
1.一种软件版权保护中绑定硬件信息与密钥的方法,其特征在于:由服务器根据用户请求生成用户密钥对;由服务器对用户信息进行验证并实现用户硬件信息与密钥的绑定与管理;若是用户信息合法,则将其硬件信息与密钥进行绑定。
2.如权利要求1所述的一种软件版权保护中绑定硬件信息与密钥的方法,其特征在于:所述的绑定用户硬件信息与密钥步骤如下:
(a)用户在软件提供者处下载软件,并安装;
(b)用户在软件提供者处服务器进行注册;
(c)用户登录,客户端为用户生成一对非对称密钥对私钥A、公钥A;
(d)用户将用户信息、硬件信息、公钥A发送至服务器;
(e)服务器验证用户信息,如果用户信息不合法,服务器则向客户端发送错误信息,提示用户;如果用户信息合法,服务器在数据库中对用户的硬件信息进行查找;若不存在,则表明用户的硬件信息不存在,即用户的硬件未注册,服务器便对用户硬件信息进行注册,生成一对非对称密钥对私钥B、公钥B,并与此硬件信息绑定,存入数据库;若用户的硬件信息存在,即用户的硬件信息已注册,服务器从数据库中读取此硬件信息绑定的私钥B;
(f)服务器使用接收的客户端公钥A,对私钥B进行加密,并发送给用户;
(g)用户接收数据后,使用私钥A进行解密,得到私钥B,存储与于本地。
3.如权利要求1所述的一种软件版权保护中绑定硬件信息与密钥的方法,其特征在于:所述的密钥用于软件的版权保护的步骤如下:
(a)用户启动客户端软件,并登录连接服务器;
(b)客户端用户向服务器请求授权文件;
(c)服务器接收用户请求,生成用户授权文件,使用公钥B进行加密;
(d)服务器将加密后的授权文件发送给客户端用户;
(e)客户端用户接收服务器发送的加密的授权文件;
(f)客户端用户使用私钥B解密得到授权文件;
(g)客户端用户读取并验证授权文件,启动客户端软件。
4.如权利要求1所述的一种软件版权保护中绑定硬件信息与密钥的方法,其具体操作过程如下:
一.用户下载、安装软件,注册并登录:
(1)用户从服务器下载软件,并安装在本地电脑上;
(2)登录过程如下:
第一步,用户注册,用户可通过服务器网站或客户端软件进行注册;
第二步,发送用户名密码到服务器,由服务器验证用户名密码,若合法将登录成功信息发送至客户端并提示用户;若不合法,将登录失败信息发送客户端并提示用户。
二.发送用于通信的非对称密钥:
(1)客户端生成非对称密钥对,并发送公钥至服务器;
(2)服务器收到用户公钥,用其加密与硬件绑定的私钥,并发送至客户端,所述公钥发送采用PKI安全的密钥传递方案实现;
三.绑定硬件信息与密钥:
(1)用户发送硬件信息至服务器;
(2)服务器收到后和数据库比对,若存在,进行服务器读取与硬件信息绑定的密钥对中私钥,将其加密后发送至客户端;
(3)服务器生成一对非对称密钥对,与硬件信息绑定,存入服务器;
(4)客户端解密得到私钥;
四.合法用户启动客户端软件:
(1)用户启动软件,登录客户端软件,连接服务器;
(2)客户端软件将用户信息,用户硬件信息发送至服务器;
(3)客户端用户向服务器请求授权文件,服务器验证用户信息和用户硬件信息;
(4)用户信息和用户硬件信息合法,服务器生成授权文件,并使用绑定硬件信息的密钥对的公钥对授权文件进行加密,得到加密后的授权文件;
(5)服务器将加密后的授权文件发送至客户端用户;
(6)客户端用户接收服务器发送的加密后的授权文件,使用客户端用户 存储的与硬件信息绑定的密钥对的私钥进行解密,得到解密后的授权文件;
(7)客户端用户验证授权文件的合法性,合法即成功启动客户端软件;
五.实时监测:
用户在客户端登录后,可以通过网络与服务器进行周期性通信,保持登录状态,同时服务器可以监测用户是否存在硬件更改行为,如手动更改操作***的MAC地址、热插拔逻辑硬盘;
六.硬件更改:
如果用户更改了硬件,服务器收到更改后的硬件信息,与数据库进行比对,设置一定硬件修改阈值,如没超过硬件信息修改阈值,则提示用户硬件信息修改,需覆盖掉原有硬件信息。若超过硬件信息修改阈值,则提示用户次硬件信息未注册,需要注册次新硬件***信息。
若覆盖原硬件信息,则服务器验证后,在数据库中更新硬件信息;若注册新硬件***,则进行步骤三。注册硬件信息,并绑定硬件信息与密钥;
七.限制同一用户绑定的硬件设备数:
服务器设定同一用户所绑定的硬件设备数,用户可以注册多台硬件信息,并分别绑定密钥。当用户在一台新的硬件设备上登录使用客户端软件时,服务器首先检查用户所绑定的硬件设备数是否超出,若超出,则提示用户所绑定硬件设备数超出,无法绑定;若没超出,则服务器生成一对非对称密钥对,并与此硬件绑定。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410190684.6A CN103995991B (zh) | 2014-05-07 | 2014-05-07 | 一种软件版权保护中绑定硬件信息与密钥的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410190684.6A CN103995991B (zh) | 2014-05-07 | 2014-05-07 | 一种软件版权保护中绑定硬件信息与密钥的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103995991A true CN103995991A (zh) | 2014-08-20 |
CN103995991B CN103995991B (zh) | 2017-02-15 |
Family
ID=51310154
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410190684.6A Expired - Fee Related CN103995991B (zh) | 2014-05-07 | 2014-05-07 | 一种软件版权保护中绑定硬件信息与密钥的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103995991B (zh) |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104361267A (zh) * | 2014-11-19 | 2015-02-18 | 厦门海迈科技股份有限公司 | 基于非对称加密算法的软件授权与保护装置及方法 |
CN104993924A (zh) * | 2015-07-10 | 2015-10-21 | 安徽新华传媒股份有限公司 | 一种数字版权加解密方法 |
CN106446616A (zh) * | 2016-09-14 | 2017-02-22 | 金蝶软件(中国)有限公司 | 一种软件保护方法及装置 |
CN106533663A (zh) * | 2016-11-01 | 2017-03-22 | 广东浪潮大数据研究有限公司 | 数据加密方法、加密方设备及数据解密方法、解密方设备 |
CN106845164A (zh) * | 2017-02-04 | 2017-06-13 | 深圳泰科晶显科技有限公司 | 一种基于网络软件授权方法 |
CN107276998A (zh) * | 2017-06-07 | 2017-10-20 | 广州华多网络科技有限公司 | 一种基于OpenSSL的性能优化方法及装置 |
CN107391971A (zh) * | 2017-06-13 | 2017-11-24 | 北京航天发射技术研究所 | 一种软件许可授权的保护方法 |
CN107784206A (zh) * | 2017-11-10 | 2018-03-09 | 北京深思数盾科技股份有限公司 | 软件保护方法和装置以及软件验证方法和装置 |
CN107798221A (zh) * | 2017-11-16 | 2018-03-13 | 郑州云海信息技术有限公司 | 一种授权机制产生***及方法 |
CN107885979A (zh) * | 2017-11-08 | 2018-04-06 | 江苏国泰新点软件有限公司 | 一种软件免费试用的方法、装置、试用设备及存储介质 |
CN107992760A (zh) * | 2017-12-08 | 2018-05-04 | 深圳创维数字技术有限公司 | 秘钥写入方法、装置、设备及存储介质 |
CN108259424A (zh) * | 2016-12-29 | 2018-07-06 | 北京博瑞彤芸文化传播股份有限公司 | 终端设备的授权验证方法 |
CN109086089A (zh) * | 2018-08-27 | 2018-12-25 | 郑州云海信息技术有限公司 | 一种硬件配置限定的方法、***及设备 |
CN109684790A (zh) * | 2018-12-26 | 2019-04-26 | 佛山市瑞德物联科技有限公司 | 软件启动方法、软件授权验证方法、设备和存储介质 |
CN110210189A (zh) * | 2019-06-11 | 2019-09-06 | 第四范式(北京)技术有限公司 | 软件验证方法、软硬件绑定方法及其可编程器件 |
CN111143784A (zh) * | 2019-12-12 | 2020-05-12 | 合肥大唐存储科技有限公司 | 一种版权保护的实现方法和版权保护存储装置 |
CN111831998A (zh) * | 2020-07-28 | 2020-10-27 | 武汉市测绘研究院 | 一种离线状态下bs应用服务绑定硬件码的身份验证方法 |
CN112765566A (zh) * | 2021-01-06 | 2021-05-07 | 航天信息股份有限公司 | 授权文件安全生成方法及装置 |
CN112966287A (zh) * | 2021-03-30 | 2021-06-15 | 建信金融科技有限责任公司 | 获取用户数据的方法、***、设备和计算机可读介质 |
CN113127814A (zh) * | 2019-12-31 | 2021-07-16 | 杭州海康威视数字技术股份有限公司 | 软件防抄方法、装置、电子设备及可读存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101441692A (zh) * | 2008-11-21 | 2009-05-27 | 北京市研祥兴业国际智能科技有限公司 | 实现计算机硬件和软件绑定的方法 |
CN102479305A (zh) * | 2010-11-29 | 2012-05-30 | 金蝶软件(中国)有限公司 | 软件许可验证的方法及*** |
WO2012070922A1 (en) * | 2010-11-23 | 2012-05-31 | Mimos Berhad | A method of controlling license key generation |
CN103258151A (zh) * | 2012-10-30 | 2013-08-21 | 中国科学院沈阳自动化研究所 | 一种实时授权的软件License控制方法 |
US20130247228A1 (en) * | 2011-11-23 | 2013-09-19 | Beijing Founder Apabi Technology Ltd. | Method, system and server for digital right management |
CN103491097A (zh) * | 2013-09-30 | 2014-01-01 | 华中师范大学 | 基于公钥密码体制的软件授权*** |
-
2014
- 2014-05-07 CN CN201410190684.6A patent/CN103995991B/zh not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101441692A (zh) * | 2008-11-21 | 2009-05-27 | 北京市研祥兴业国际智能科技有限公司 | 实现计算机硬件和软件绑定的方法 |
WO2012070922A1 (en) * | 2010-11-23 | 2012-05-31 | Mimos Berhad | A method of controlling license key generation |
CN102479305A (zh) * | 2010-11-29 | 2012-05-30 | 金蝶软件(中国)有限公司 | 软件许可验证的方法及*** |
US20130247228A1 (en) * | 2011-11-23 | 2013-09-19 | Beijing Founder Apabi Technology Ltd. | Method, system and server for digital right management |
CN103258151A (zh) * | 2012-10-30 | 2013-08-21 | 中国科学院沈阳自动化研究所 | 一种实时授权的软件License控制方法 |
CN103491097A (zh) * | 2013-09-30 | 2014-01-01 | 华中师范大学 | 基于公钥密码体制的软件授权*** |
Cited By (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104361267B (zh) * | 2014-11-19 | 2017-11-07 | 厦门海迈科技股份有限公司 | 基于非对称加密算法的软件授权与保护装置及方法 |
CN104361267A (zh) * | 2014-11-19 | 2015-02-18 | 厦门海迈科技股份有限公司 | 基于非对称加密算法的软件授权与保护装置及方法 |
CN104993924A (zh) * | 2015-07-10 | 2015-10-21 | 安徽新华传媒股份有限公司 | 一种数字版权加解密方法 |
CN106446616A (zh) * | 2016-09-14 | 2017-02-22 | 金蝶软件(中国)有限公司 | 一种软件保护方法及装置 |
CN106533663A (zh) * | 2016-11-01 | 2017-03-22 | 广东浪潮大数据研究有限公司 | 数据加密方法、加密方设备及数据解密方法、解密方设备 |
CN106533663B (zh) * | 2016-11-01 | 2019-06-25 | 广东浪潮大数据研究有限公司 | 数据加密方法、加密方设备及数据解密方法、解密方设备 |
CN108259424A (zh) * | 2016-12-29 | 2018-07-06 | 北京博瑞彤芸文化传播股份有限公司 | 终端设备的授权验证方法 |
CN108259424B (zh) * | 2016-12-29 | 2020-07-14 | 北京博瑞彤芸文化传播股份有限公司 | 终端设备的授权验证方法 |
CN106845164A (zh) * | 2017-02-04 | 2017-06-13 | 深圳泰科晶显科技有限公司 | 一种基于网络软件授权方法 |
CN107276998B (zh) * | 2017-06-07 | 2020-09-18 | 广州华多网络科技有限公司 | 一种基于OpenSSL的性能优化方法及装置 |
CN107276998A (zh) * | 2017-06-07 | 2017-10-20 | 广州华多网络科技有限公司 | 一种基于OpenSSL的性能优化方法及装置 |
CN107391971A (zh) * | 2017-06-13 | 2017-11-24 | 北京航天发射技术研究所 | 一种软件许可授权的保护方法 |
CN107885979A (zh) * | 2017-11-08 | 2018-04-06 | 江苏国泰新点软件有限公司 | 一种软件免费试用的方法、装置、试用设备及存储介质 |
CN107784206A (zh) * | 2017-11-10 | 2018-03-09 | 北京深思数盾科技股份有限公司 | 软件保护方法和装置以及软件验证方法和装置 |
CN107798221A (zh) * | 2017-11-16 | 2018-03-13 | 郑州云海信息技术有限公司 | 一种授权机制产生***及方法 |
CN107992760A (zh) * | 2017-12-08 | 2018-05-04 | 深圳创维数字技术有限公司 | 秘钥写入方法、装置、设备及存储介质 |
CN107992760B (zh) * | 2017-12-08 | 2021-08-13 | 深圳小湃科技有限公司 | 秘钥写入方法、装置、设备及存储介质 |
CN109086089A (zh) * | 2018-08-27 | 2018-12-25 | 郑州云海信息技术有限公司 | 一种硬件配置限定的方法、***及设备 |
CN109684790A (zh) * | 2018-12-26 | 2019-04-26 | 佛山市瑞德物联科技有限公司 | 软件启动方法、软件授权验证方法、设备和存储介质 |
CN110210189A (zh) * | 2019-06-11 | 2019-09-06 | 第四范式(北京)技术有限公司 | 软件验证方法、软硬件绑定方法及其可编程器件 |
CN111143784A (zh) * | 2019-12-12 | 2020-05-12 | 合肥大唐存储科技有限公司 | 一种版权保护的实现方法和版权保护存储装置 |
CN113127814A (zh) * | 2019-12-31 | 2021-07-16 | 杭州海康威视数字技术股份有限公司 | 软件防抄方法、装置、电子设备及可读存储介质 |
CN113127814B (zh) * | 2019-12-31 | 2023-03-14 | 杭州海康威视数字技术股份有限公司 | 软件防抄方法、装置、电子设备及可读存储介质 |
CN111831998A (zh) * | 2020-07-28 | 2020-10-27 | 武汉市测绘研究院 | 一种离线状态下bs应用服务绑定硬件码的身份验证方法 |
CN112765566A (zh) * | 2021-01-06 | 2021-05-07 | 航天信息股份有限公司 | 授权文件安全生成方法及装置 |
CN112966287A (zh) * | 2021-03-30 | 2021-06-15 | 建信金融科技有限责任公司 | 获取用户数据的方法、***、设备和计算机可读介质 |
Also Published As
Publication number | Publication date |
---|---|
CN103995991B (zh) | 2017-02-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103995991B (zh) | 一种软件版权保护中绑定硬件信息与密钥的方法 | |
CN109309565B (zh) | 一种安全认证的方法及装置 | |
CN110784491A (zh) | 一种物联网安全管理*** | |
JP5564453B2 (ja) | 情報処理システム、及び情報処理方法 | |
CN109361508B (zh) | 数据传输方法、电子设备及计算机可读存储介质 | |
WO2016190990A2 (en) | Method, apparatus, and system for cloud-based encryption machine key injection | |
CN104506515A (zh) | 一种固件的保护方法和保护装置 | |
CN103248479A (zh) | 云存储安全***、数据保护以及共享方法 | |
CN101379487A (zh) | 以授权的方式产生权限对象的方法和设备 | |
CN101682628A (zh) | 安全通信 | |
CN102567685B (zh) | 基于非对称公钥密码体系的软件版权保护方法 | |
EP2954448A1 (en) | Provisioning sensitive data into third party network-enabled devices | |
KR101314751B1 (ko) | 디알엠 설치 관리 방법 및 장치 | |
US11811939B2 (en) | Advanced crypto token authentication | |
CN101582896A (zh) | 第三方网络认证***及其认证方法 | |
CN110753344A (zh) | 基于NB-IoT的智能表安全接入*** | |
CN101471915A (zh) | 一种加密方法及加密装置 | |
CN105471901A (zh) | 一种工业信息安全认证*** | |
WO2012122782A1 (zh) | 一种获取解锁码的方法及移动终端 | |
CN104125239A (zh) | 一种基于数据链路加密传输的网络认证方法和*** | |
TWI422241B (zh) | 頻譜授權以及相關的通訊方法和裝置 | |
CN104486322A (zh) | 终端接入认证授权方法及终端接入认证授权*** | |
WO2018033017A1 (zh) | 一种授信的终端状态转换方法和*** | |
CN106713256A (zh) | 一种税控专用计算机软硬件绑定的认证方法 | |
CN105873043B (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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170215 Termination date: 20180507 |
|
CF01 | Termination of patent right due to non-payment of annual fee |