CN1315017C - 一种软件版权保护的方法 - Google Patents

一种软件版权保护的方法 Download PDF

Info

Publication number
CN1315017C
CN1315017C CNB2004100815352A CN200410081535A CN1315017C CN 1315017 C CN1315017 C CN 1315017C CN B2004100815352 A CNB2004100815352 A CN B2004100815352A CN 200410081535 A CN200410081535 A CN 200410081535A CN 1315017 C CN1315017 C CN 1315017C
Authority
CN
China
Prior art keywords
software
user
license
developer
software license
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.)
Expired - Fee Related
Application number
CNB2004100815352A
Other languages
English (en)
Other versions
CN1621992A (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.)
Chengdu century summit Technology Co., Ltd.
Original Assignee
Sichuan University
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 Sichuan University filed Critical Sichuan University
Priority to CNB2004100815352A priority Critical patent/CN1315017C/zh
Publication of CN1621992A publication Critical patent/CN1621992A/zh
Application granted granted Critical
Publication of CN1315017C publication Critical patent/CN1315017C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Abstract

本发明公开了一种软件版权保护的方法,其特征在于通过数字签名技术,对购买软件的用户进行身份认证,保证了软件发行过程的安全性、权威性和不可抵赖性,并且在软件使用过程中,通过验证安装软件的计算机指纹信息、软件许可证有效时间、用户信息等,保证一套软件只能由指定用户在规定时间内在特定的计算机上运行。本发明成本低、无需任何额外硬件,软件版权保护效果好,具有广阔的应用前景。

Description

一种软件版权保护的方法
技术领域
本发明涉及一种软件版权保护的方法。具体涉及一种基于数字签名以及计算机指纹信息的软件版权保护方法。
背景技术
目前软件开发商一般通过软件序列号、硬件加密(如加密狗)等方法来保护软件版权。通过软件序列号的方法无法控制软件不被反复的安装,并且也容易被破解,而硬件加密的成本又比较高。因此,软件的版权保护一直是软件开发商面临的一个严峻的问题。
中国专利公开号为CN 1448842A的申请案,是利用网络数据库记录一套软件的使用时间,如果同一软件编号SN有一套以上软件同时运行,说明此软件编号的软件有盗版,则将此编号置为非法,此后该套软件将无法使用。该方法能防止软件被非法拷贝使用,但该方法需要软件开发商购置数据库来存放和维护软件编号SN,并且在网络不通的时候,软件将不能使用。因此该方法成本高,使用不方便,应用范围有很大的局限性。
中国专利公开号为CN 1514375A的申请案,是利用机器的特征码信息以及相应的加密算法,生成被保护软件的使用证书。在一定程度上,该方法能够解决软件版权的保护问题,但该方法缺乏严格的身份认证,缺乏权威性以及不可抵赖性,并且一旦被人盗版后也不能作为法庭上的证据,因此应用范围具有一定的局限性。
发明内容
本发明提出了一种基于数字签名以及计算机指纹信息的软件版权保护方法。本发明的目的是为了提供一种成本低、无需任何额外硬件、保证一套软件只能由指定用户在规定的时间内在特定的计算机上使用的软件版权保护方法。
计算机的硬件都存在一些特定信息,并且这些特定信息是唯一的,如CPU序列号,网卡MAC地址等,因此这些特定信息可做为计算机指纹信息来唯一地表示一台计算机。用户在购买软件时,先用自己的私钥证书对用户名称、要购买的软件名称、软件版本号以及安装该软件的计算机指纹信息进行数字签名后生成用户信息发送给软件开发商。软件开发商收到用户发过来的用户信息后,首先使用用户的公钥证书验证用户信息,然后使用软件开发商自己的私钥证书将该用户信息、软件开发商名称、软件许可证颁发时间和软件许可证失效时间进行数字签名生成软件许可证,最后将该软件许可证和相应的软件一起交给用户使用。
在用户使用软件时,系统首先验证软件许可证,如果软件许可证合法,用户将能继续使用该软件,否则将不能使用该软件。在验证软件许可证合法性时,首先根据软件开发商的公钥证书判断软件许可证是否被篡改,如果被篡改,则该软件许可证非法。接着验证软件许可证的其他信息(包括软件开发商名称、软件使用者名称、软件版本号、软件名称、软件许可证颁发时间、软件许可证失效时间以及安装软件的计算机指纹信息)是否合法,如果合法,则软件许可证合法,否则该软件许可证非法,拒绝软件的使用。
本发明基于公钥密钥理论的安全性,从以下几个方面确保软件发行过程中的安全性,权威性和不可抵赖性:
1)通过用户以及软件开发商的数字证书和数字签名,提供软件购买的权威凭证。
2)在使用时,通过进一步验证用户信息,可进一步保证只有真正的购买者才能使用所购软件。
3)通过对软件所安装的硬件指纹信息,确保软件只能在用户以及软件开法商共同指定的机器上运行。
附图说明
图1为颁发给软件使用者的软件许可证的结构图。
图2为软件许可证生成的过程。
图3为用户生成软件许可证的用户信息部分的步骤。
图4为软件开发商验证用户信息部分的步骤。
图5为软件开发商对软件许可证进行数字签名的步骤。
图6验证软件使用者的软件许可证合法性的步骤。
注意:所有附图中,有阴影的框图表明框图内的数据是密文。
具体实施方式
图1为颁发给软件使用者的软件许可证的结构图。
颁发给软件使用者的软件许可证包括以下几部分:
1)用户信息部分:
a)软件使用者名称
b)购买的软件名称以及软件版本号
c)安装软件的计算机指纹信息
d)用户信息签名数据
2)软件开发商名称
3)软件许可证颁发时间
4)软件许可证失效时间
5)软件许可证签名数据
图2为软件许可证生成的过程。
软件许可证生成的过程如下:
1)用户生成软件许可证的用户信息部分。
2)用户将生成的用户信息部分传递给软件开发商。
3)软件开发商验证用户信息部分。
4)如果用户信息部分验证通过,软件开发商填写软件许可证的软件开发商名称、软件许可证颁发时间和软件许可证失效时间部分,否则返回1),用户重新填写。
5)软件开发商对软件许可证进行数字签名。
6)软件开发商将该软件许可证传递给用户使用。
图3为用户生成软件许可证的用户信息部分的步骤。
用户生成软件许可证的用户信息部分的步骤如下:
1)生成用户信息的部分L,包括用户名称、购买的软件名称、软件版本号和安装该软件的计算机指纹信息。
2)使用摘要算法(如MD2、MD5、SHA-1等),对L进行散列运算,得到一散列值D。
3)使用用户的私钥证书对该散列值D进行数字签名(签名算法可以为RSA、DSA、ECC、DH等),得到签名数据E。
4)将签名数据E加到L的尾部。
图4为软件开发商验证用户信息部分的步骤。
软件开发商验证用户信息部分的步骤如下:
1)使用相应的摘要算法,对用户信息部分的用户名称、购买的软件名称、软件版本号和安装该软件的计算机指纹信息进行相应的散列运算,得到一散列值D。
2)使用用户的公钥证书对用户信息部分的签名数据部分进行相应的验证签名运算,得到一散列值D′。
3)如果D和D′相同,则验证通过,否则不通过。
图5为软件开发商对软件许可证进行数字签名的步骤。
软件开发商对软件许可证进行数字签名的步骤如下:
1)使用摘要算法,对软件许可证中的用户信息部分、软件开发商名称、软件许可证颁发时间和软件许可证失效时间进行散列运算,得到一散列值D。
2)使用软件开发商的私钥证书对该散列值D进行数字签名,得到签名数据E。
3)将签名数据E加到软件许可证的尾部。
图6验证软件使用者的软件许可证合法性的步骤。
验证软件许可证合法性的步骤如下:
1)使用相应的摘要算法,对软件许可证的用户信息部分、软件开发商名称、软件许可证颁发时间和软件许可证失效时间进行散列运算,得到一散列值D。
2)使用软件开发商的公钥证书对软件许可证的签名数据部分进行相应的验证签名运算,得到一散列值D′。
3)比较D和D′是否相同。如果不相同,则可判断该软件许可证不合法(已被篡改),验证失败。如果相同,则继续下面的判断。
4)验证软件开发商名称、软件使用者名称、软件版本号、软件名称、软件许可证是否在授权使用时间内。
5)如果4)的验证不通过,则软件许可证非法,否则继续下面的判断。
6)从正在使用的计算机中提取相应的指纹信息S。
7)如果指纹信息S与许可证中的“安装软件的计算机指纹信息”S′相同,则软件许可证合法,否则软件许可证非法。

Claims (1)

1.一种软件版权保护的方法,其特征在于定义一种颁发给软件使用者的软件许可证的结构,包括用户信息、软件开发商名称、软件许可证颁发时间、软件许可证失效时间及软件许可证签名数据五个部分,其中用户信息部分存放软件使用者名称、软件版本号、软件名称、安装软件的计算机指纹信息及用户信息签名数据五个子项;其软件版权保护方法包括以下步骤:
(1)软件许可证生成的步骤,包括以下步骤:
用户生成软件许可证的用户信息部分的步骤,包括以下步骤:
生成用户信息L的步骤,L包括用户名称、购买的软件名称、软件版本号和安装软件的计算机指纹信息;
使用摘要算法,对L进行散列运算,得到一散列值D的步骤;
使用用户的私钥证书对该散列值D进行数字签名运算,得到签名数据E的步骤;
将签名数据E加到L的尾部的步骤;
用户将生成的用户信息传递给软件开发商的步骤;
软件开发商验证用户信息的步骤,包括以下步骤:
使用摘要算法,对用户信息中的用户名称、购买的软件名称、软件版本号和安装软件的计算机指纹信息进行散列运算,得到一散列值D的步骤;
使用用户的公钥证书对用户信息中的签名数据子项进行验证签名运算,得到一散列值D′的步骤;
验证D和D′是否一致的步骤;
软件开发商填写软件许可证的软件开发商名称、软件许可证颁发时间和软件许可证失效时间部分的步骤;
软件开发商对软件许可证进行数字签名的步骤,包括以下步骤:
使用摘要算法,对软件许可证的用户信息部分、软件开发商名称、软件许可证颁发时间和软件许可证失效时间进行散列运算,得到一散列值D的步骤;
使用软件开发商的私钥证书对该散列值D进行数字签名运算得到签名数据E的步骤;
将签名数据E加到软件许可证的尾部的步骤;
软件开发商将该软件许可证传递给用户使用的步骤;
(2)验证软件许可证合法性的步骤,包括以下步骤:
使用摘要算法,对软件许可证中的部分信息,包括软件使用者名称、软件版本号、软件名称、安装软件的计算机指纹信息、软件开发商名称、软件许可证颁发时间和软件许可证失效时间,进行散列运算,得到一散列值D的步骤;
用软件开发商的公钥证书对软件许可证的签名数据部分进行验证签名运算,得到一散列值D′的步骤;
验证D和D′是否一致的步骤;
验证软件开发商名称、软件使用者名称、软件版本号、软件名称、软件许可证是否在授权使用时间内的步骤;
从正在使用的计算机中提取相应的指纹信息S的步骤;
验证提取到的指纹信息S与许可证中的“安装软件的计算机指纹信息”S′的一致性的步骤。
CNB2004100815352A 2004-12-20 2004-12-20 一种软件版权保护的方法 Expired - Fee Related CN1315017C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2004100815352A CN1315017C (zh) 2004-12-20 2004-12-20 一种软件版权保护的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2004100815352A CN1315017C (zh) 2004-12-20 2004-12-20 一种软件版权保护的方法

Publications (2)

Publication Number Publication Date
CN1621992A CN1621992A (zh) 2005-06-01
CN1315017C true CN1315017C (zh) 2007-05-09

Family

ID=34765749

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004100815352A Expired - Fee Related CN1315017C (zh) 2004-12-20 2004-12-20 一种软件版权保护的方法

Country Status (1)

Country Link
CN (1) CN1315017C (zh)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100435162C (zh) * 2006-04-18 2008-11-19 北京大学 数字产品中指纹的构造和验证方法及数字产品发行系统
CN102054135B (zh) * 2009-11-06 2013-07-10 北大方正集团有限公司 一种软件授权的方法和装置
CN102479305A (zh) * 2010-11-29 2012-05-30 金蝶软件(中国)有限公司 软件许可验证的方法及系统
CN102289630B (zh) * 2011-07-29 2016-09-07 天津同阳科技发展有限公司 一种用于cems系统的版权保护方法
CN103065072B (zh) * 2011-10-21 2016-08-03 北京大学 提高Java软件破解难度的方法及装置、版权验证方法
CN102541733B (zh) * 2011-12-26 2015-10-07 成都三零瑞通移动通信有限公司 一种Android下的软件快速扫描方法
CN102855439B (zh) * 2012-07-26 2018-05-01 深圳市赛格导航科技股份有限公司 一种执行文件自校验方法及装置
CN103078858B (zh) * 2012-12-31 2015-08-26 上海同岩土木工程科技有限公司 基于web服务和签名证书的软件授权试用方法
CN104217359A (zh) * 2013-05-30 2014-12-17 华为终端有限公司 一种软件的转售方法、装置和系统
CN103812857A (zh) * 2013-11-08 2014-05-21 汉柏科技有限公司 一种实现唯一性许可的方法
CN103793633A (zh) * 2014-02-14 2014-05-14 宇龙计算机通信科技(深圳)有限公司 一种sdk校验方法及装置
CN104504327B (zh) * 2014-12-31 2018-04-24 株洲南车时代电气股份有限公司 一种软件的配属方法及装置
CN105553668B (zh) * 2015-12-21 2018-09-04 北京飞杰信息技术有限公司 通过验证授权时间来验证用户授权证书的方法及系统
CN106529217B (zh) * 2016-10-28 2019-09-10 华胜信泰信息产业发展有限公司 软件许可证生成方法及装置
CN108259424B (zh) * 2016-12-29 2020-07-14 北京博瑞彤芸文化传播股份有限公司 终端设备的授权验证方法
CN106874714A (zh) * 2017-02-15 2017-06-20 湖南长城银河科技有限公司 一种软件授权方法
CN107180169A (zh) * 2017-06-12 2017-09-19 郑州云海信息技术有限公司 一种软件激活方法及装置
CN107423584B (zh) * 2017-07-27 2019-06-11 北京深思数盾科技股份有限公司 应用软件的运行方法、装置、终端和计算机可读存储介质
CN109190333A (zh) * 2018-08-22 2019-01-11 山东超越数控电子股份有限公司 一种高强度软件保护方法
CN109391633B (zh) * 2018-12-13 2021-06-01 青岛理工大学 一种安全的ip分发方法
CN109840398A (zh) * 2019-02-14 2019-06-04 北京儒博科技有限公司 软件授权方法、装置、设备及存储介质
CN113268716A (zh) * 2020-02-17 2021-08-17 杭州海康威视数字技术股份有限公司 一种应用的授权验证系统、方法、装置及存储介质
CN113704700A (zh) * 2020-05-22 2021-11-26 网神信息技术(北京)股份有限公司 软件授权的方法、装置、系统、电子设备和介质
CN111625783A (zh) * 2020-05-26 2020-09-04 郑州轻工业大学 基于多级加密的软件授权管理系统
CN112000933B (zh) * 2020-08-24 2022-12-02 平安国际智慧城市科技股份有限公司 应用软件的激活方法、装置、电子设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1339207A (zh) * 1998-12-16 2002-03-06 斯麦脱信托有限公司 实现数字签名的方法和系统
CN1448842A (zh) * 2002-03-31 2003-10-15 任东海 基于网络数据库的软件版权保护方法
CN1458595A (zh) * 2003-05-26 2003-11-26 邵军利 应用软件版权保护及操作权限管理系统和方法
CN1514375A (zh) * 2003-07-21 2004-07-21 蒋正华 一种软件保护方法
CN1521982A (zh) * 2003-01-28 2004-08-18 华为技术有限公司 一种提高键入-散列法运算速度的方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1339207A (zh) * 1998-12-16 2002-03-06 斯麦脱信托有限公司 实现数字签名的方法和系统
CN1448842A (zh) * 2002-03-31 2003-10-15 任东海 基于网络数据库的软件版权保护方法
CN1521982A (zh) * 2003-01-28 2004-08-18 华为技术有限公司 一种提高键入-散列法运算速度的方法
CN1458595A (zh) * 2003-05-26 2003-11-26 邵军利 应用软件版权保护及操作权限管理系统和方法
CN1514375A (zh) * 2003-07-21 2004-07-21 蒋正华 一种软件保护方法

Also Published As

Publication number Publication date
CN1621992A (zh) 2005-06-01

Similar Documents

Publication Publication Date Title
CN1315017C (zh) 一种软件版权保护的方法
CN100342296C (zh) 基于可信计算模块芯片实现计算机软件防盗版的方法
CN102780699B (zh) 认证服务器软件版权保护方法和系统
CN101039186A (zh) 系统日志的安全审计方法
US9520990B2 (en) System and method for software protection and secure software distribution
CN100338905C (zh) 具有硬件适应性的数字内容与硬件绑定的方法
CN1992594A (zh) 一种适用于流媒体系统的url扩展方法
CN1926493A (zh) 用于将证书链接到签名文件的方法和系统
CN1574727A (zh) 防止程序篡改的方法、升级混淆程序的方法及装置
CN102314578A (zh) 一种实现软件保护的系统及方法
AU2003219022A1 (en) A method of protecting the integrity of a computer program
CN1929381A (zh) 一种基于网络的软件保护方法
CN101075866A (zh) 一种互联网信息的上报方法和系统
CN1694395A (zh) 数据鉴定方法和基于代理的系统
CN101067839A (zh) 互联网作业软件系统防盗版方法
CN1234078C (zh) 一种elf文件格式的代码签名验证方法
CN101042721A (zh) 使用临时许可临时访问内容的方法和设备
CN110032835A (zh) 一种防止软件复制与迁移的软加密技术
CN112733090A (zh) 一种软件授权证书的制作方法、验证方法及装置
CN1516836A (zh) 软件安全认证信道
CN1204088A (zh) 保护软件的计算机系统和一种保护软件的方法
CN1199110C (zh) 一种软件保护方法
CN100343775C (zh) 一种许可证文件生成方法及软件产品保护方法和系统
WO2009061171A3 (en) Secure software licensing control mechanism
CN112000933B (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
ASS Succession or assignment of patent right

Owner name: SICHUAN GREAT TECHNOLOGY CO., LTD.

Free format text: FORMER OWNER: SICHUAN UNIVERSITY

Effective date: 20100513

COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 610065 NO.24, SOUTH 1ST SECTION, 1ST RING ROAD, CHENGDU CITY, SICHUAN PROVINCE TO: 610041 2/F, COMPLEX BUILDING (FACING THE STREET), CHENGDU KEHUA MIDDLE ROAD PRIMARY SCHOOL, NO.2, CHANGSHOU ROAD, WUHOU DISTRICT, CHENGDU CITY

TR01 Transfer of patent right

Effective date of registration: 20100513

Address after: 610041, Wuhou District, Changshou Road, Chengdu No. 2 Chengdu KELONG Road Primary School Street building two floor

Patentee after: Sichuan Gerite Technology Co., Ltd.

Address before: 610065 Sichuan, Chengdu, South Ring Road, No. 1, No. 24

Patentee before: Sichuan University

ASS Succession or assignment of patent right

Owner name: CHENGDU GLOBAL CAPSHEAF TECHNOLOGY CO., LTD.

Free format text: FORMER OWNER: SICHUAN GREAT TECHNOLOGY CO., LTD.

Effective date: 20130402

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 610041 CHENGDU, SICHUAN PROVINCE TO: 610000 CHENGDU, SICHUAN PROVINCE

TR01 Transfer of patent right

Effective date of registration: 20130402

Address after: 610000 C-411 Asia Pacific Plaza, KELONG North Road, Sichuan, Chengdu

Patentee after: Chengdu century summit Technology Co., Ltd.

Address before: 610041, Wuhou District, Changshou Road, Chengdu No. 2 Chengdu KELONG Road Primary School Street building two floor

Patentee before: Sichuan Gerite Technology Co., Ltd.

DD01 Delivery of document by public notice

Addressee: Wang Zhengtao

Document name: Notification of Passing Examination on Formalities

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20070509

Termination date: 20151220

EXPY Termination of patent right or utility model