CN112579989B - 网络服务软件反盗版方法 - Google Patents
网络服务软件反盗版方法 Download PDFInfo
- Publication number
- CN112579989B CN112579989B CN202011536156.3A CN202011536156A CN112579989B CN 112579989 B CN112579989 B CN 112579989B CN 202011536156 A CN202011536156 A CN 202011536156A CN 112579989 B CN112579989 B CN 112579989B
- Authority
- CN
- China
- Prior art keywords
- network service
- service software
- software
- maintenance center
- code
- 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
- 238000000034 method Methods 0.000 title claims abstract description 56
- 238000012795 verification Methods 0.000 claims abstract description 17
- 238000012423 maintenance Methods 0.000 claims abstract description 14
- 238000004519 manufacturing process Methods 0.000 claims abstract description 11
- 238000013475 authorization Methods 0.000 claims description 21
- 230000002452 interceptive effect Effects 0.000 claims description 4
- 230000002159 abnormal effect Effects 0.000 claims description 3
- 230000003993 interaction Effects 0.000 description 2
- 238000012544 monitoring process 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
-
- 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/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- 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/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Technology Law (AREA)
- Multimedia (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了网络服务软件反盗版方法。本发明方法通过网络服务软件的生产方法、部分加密方法、运维方法、注册方法、网络服务软件验证方法、终端APP绑定网络服务软件验证方法实现。服务网络服务软件生产时创建初始公私钥对,计算得到序列码,作为特征码和启动密钥。预置特征码和初始私钥后得到发布版软件,将关键部分用启动密钥后替换原来关键部分,作为交付版软件。网络服务软件采集本地服务器的特征信息,加密后发送给运维中心申请注册,运维中心解密后验证合法性,验证通过后成为能够正常工作的发布版网络服务软件。本发明方法实现了服务器溯源、强制在线注册、证书绑定验证以及终端APP反向验证,有效提高了网络服务软件反盗版能力。
Description
技术领域
本发明属于计算机技术领域,具体涉及一种网络服务软件反盗版方法。
背景技术
网络服务软件产品是以商品形式将网络服务器本身出让给客户,由客户自己部署运行,并向其终端用户提供网络服务的一种软件产品形态。网络服务软件的供应商本身不向终端用户提供网络服务,而是将网络服务软件出售给计划向终端用户提供该网络服务软件所具备的服务能力的客户。供应商的收益来自客户购买网络服务软件产品,而客户可以通过向终端用户提供网络服务获得收益。
目前,网络服务软件的盗版问题已经引起众多软件供应商的广泛关注。与传统的应用软件不同,网络服务软件客户数不会太大,但是一款优秀的网络服务软件可能为数以千万计的终端用户提供服务。因此网络服务软件产品通常价格较高,由此也成为软件盗版的热点目标。
目前大多数反盗版方案都是在软件产品注册和发布的阶段对网络服务软件本身的合法性进行验证。考虑到网络服务软件产品具有随时在线、需要专业的运维进行后台支持、终端用户通常使用专门的终端APP等特点。
发明内容
本发明的目的就是提供一种网络服务软件反盗版方法。
本发明方法通过网络服务软件的生产方法、部分加密方法、运维方法、注册方法、网络服务软件验证方法、终端APP绑定网络服务软件验证方法实现。
所述的生产方法具体是:
服务网络服务软件生产时,首先为当前产品创建初始公私钥对(PKt,SKt),然后生成产品描述码PD=[V,T,N,R];其中,V是当前软件产品的版本号,T是软件生产商运维系统的时统提供的当前时间戳,N是当前软件产品的编号,R为预留字段;以上所有字段的长度不可变;
然后,利用安全杂凑算法H计算产品的序列码SN=H(k|PD|k);其中,k为产品发布主密钥,由软件生产商安全持有并维护;取序列码SN的前l1个比特进行编码,作为当前产品的特征码s,取后l2个比特作为产品的启动密钥k0;l1+l2=l,l为序列码SN长度;
将待编译的网络服务软件源码中的特征码占位字符串用特征码s替换,同时在源码中预置当前产品的初始私钥SKt,编译网络服务软件源码后得到正式的发布版网络服务软件。
所述的部分加密方法具体是:
针对选取的发布版网络服务软件中独立的关键部分P,利用对称加密算法C用启动密钥k0加密得到P′,并替换P,作为交付版网络服务软件;交付版网络服务软件以及特征码s、产品描述码PD、初始公钥PKt、数字信封E(PKt,k0)由运维中心统一保存,数字信封E(PKt,k0)表示用PKt对k0进行公钥加密。
所述的运维方法具体是:
运维中心在销售确认并正确采集客户信息后,将准备销售给客户的交付版网络服务软件所对应特征码s、产品描述码PD以及客户信息入库存档,运维中心将自己的公钥PK嵌入交付版网络服务软件中,然后将交付版网络服务软件安装部署到客户服务器或交给客户自行部署;
网络服务软件首次运行时,在软件版权声明中显示该版本的特征码s,用户确认后,网络服务软件转到注册过程。
所述的注册方法具体是:
网络服务软件采集本地服务器的特征信息f,通过安全杂凑算法H计算摘要α=H(f|s|t),其中t是服务器当前的本地时间戳;网络服务软件将f,s,t,通过PK加密后发送给运维中心注册申请,表示用SKt对α进行签名;运维中心收到注册申请后,用自己的私钥SK解密,得到f,s,t,然后验证时间戳和签名的合法性:若时间戳超时或签名错误则验证失败,断开连接,拒绝注册;若验证通过,则运维中心为网络服务软件生成工作授权证书;运维中心将用户的数字信封E(PKt,k0)和工作授权证书发送给网络服务软件;网络服务软件收到工作授权证书后,用初始私钥SKt解密得E(PKt,k0)到启动密钥k0,然后用k0解密P′恢复被加密的关键部分P,得到可以正常工作的发布版网络服务软件。
所述的网络服务软件验证方法具体是:
在网络服务软件获得授权并正常工作后,所有与运维中心的交互消息都需要附加特征码s,运维中心随机检测与网络服务软件之间交互消息中的特征码s的正确性,如果检测到s不正确,则进入警示状态。
所述的终端APP绑定网络服务软件验证方法具体是:
网络服务软件对应的终端APP注册加入或重新登录网络服务软件时,服务器向终端APP出示自己的工作授权证书;终端APP利用预置的运维中心的证书公钥验证网络服务软件工作授权证书的有效性,如果验证不通过,则终端APP拒绝加入该服务器,同时向运维中心提交异常报告;终端APP定期连接运维中心,连接时向运维中心提交其当前所登录的网络服务软件的授权证书副本和IP地址。
本发明方法实现了服务器溯源、强制在线注册、证书绑定验证以及终端APP反向验证,有效提高了网络服务软件反盗版能力。
具体实施方式
网络服务软件反盗版方法,该方法适用场景:软件供应商生产网络服务软件产品以及专用终端APP;软件供应商同时构建运维中心,负责产品的销售、注册、监测及售后服务。生产过程与运维过程分离,生产过程可以批量预产并提交运维中心,也可以由运维中心获取客户需求后,采取订单式生产。
该方法通过网络服务软件的生产方法、部分加密方法、运维方法、注册方法、网络服务软件验证方法、终端APP绑定网络服务软件验证方法实现。
生产方法具体是:
服务网络服务软件生产时,首先为当前产品创建初始公私钥对(PKt,SKt),然后生成产品描述码PD=[V,T,N,R];其中,V是当前软件产品的版本号,T是软件生产商运维系统的时统提供的当前时间戳,N是当前软件产品的编号,R为预留字段;以上所有字段的长度不可变,每个字段的具体长度根据实际应用情况确定。
然后,利用安全杂凑算法H计算产品的序列码SN=H(k|PD|k);其中,k为产品发布主密钥,由软件生产商安全持有并维护,主密钥可(定期或按版本)更新。序列码SN长度为256比特,取其前60个比特进行BASE32编码,得到长度为12字节的字符串,记为XXXX-XXXX-XXXX,该字符串作为当前产品的特征码s,取SN尾部的128比特作为产品的启动密钥k0。
软件生产商将待编译的网络服务软件源码中的特征码占位字符串用特征码s替换,同时在源码中预置当前产品的初始私钥SKt,然后编译网络服务软件源码,得到正式的发布版网络服务软件。
部分加密方法具体是:
软件生产商针对选取的发布版网络服务软件中独立的关键部分P,利用对称加密算法C用启动密钥k0加密得到P′,并替换P,作为交付版网络服务软件。代码P在网络服务软件注册成功之前不会使用,但是会影响网络服务软件注册成功后某些重要功能的正常运行。交付版网络服务软件以及特征码s、产品描述码PD、初始公钥PKt、数字信封E(PKt,k0)由运维中心统一保存,数字信封E(PKt,k0)表示用PKt对k0进行公钥加密。
运维方法具体是:
运维中心在销售确认并正确采集客户信息后,将准备销售给客户的交付版网络服务软件所对应特征码s、产品描述码PD以及客户信息入库存档,运维中心将自己的公钥PK嵌入交付版网络服务软件中,然后将交付版网络服务软件安装部署到客户服务器或交给客户自行部署。
网络服务软件首次运行时,在软件版权声明中显示该版本的特征码s,用户确认后,网络服务软件转到注册过程。
注册方法具体是:
网络服务软件采集本地服务器的特征信息f(包括:服务器CPU序列号、BIOS序列号、硬盘序列号、网络适配器的MAC地址、部署的IP地址等),然后通过安全杂凑算法H计算摘要α=H(f|s|t),其中t是服务器当前的本地时间戳;网络服务软件将f,s,t,通过PK加密后发送给运维中心注册申请,表示用SKt对α进行签名。
运维中心收到注册申请后,用自己的私钥SK解密,得到f,s,t,然后验证时间戳和签名的合法性:若时间戳超时或签名错误则验证失败,断开连接,拒绝注册;若验证通过,则运维中心为网络服务软件生成工作授权证书,该工作授权证书中包含授权时间、授权用户数量、客户的注册信息等。运维中心将用户的数字信封E(PKt,k0)和工作授权证书发送给网络服务软件。
网络服务软件收到工作授权证书后,用初始私钥SKt解密得E(PKt,k0)到启动密钥k0,然后用k0解密P′恢复被加密的关键部分P,得到可以正常工作的发布版网络服务软件。
网络服务软件验证方法具体是:
为了对网络服务软件的合法性进行持续监测,在网络服务软件获得授权并正常工作后,所有与运维中心的交互消息中,需要附加特征码s,运维中心随机检测与网络服务软件之间交互消息中的特征码s的正确性,如果检测到s不正确,则进入警示状态。
终端APP绑定网络服务软件验证方法具体是:
网络服务软件对应的终端APP注册加入或重新登录网络服务软件时,服务器向终端APP出示自己的工作授权证书。
终端APP利用预置的运维中心的证书公钥验证网络服务软件工作授权证书的有效性,如果验证不通过,则终端APP拒绝加入该服务器,同时向运维中心提交异常报告。由于终端APP的更新周期较短,所以其预置公钥以及验证算法被破解的可能性较小。
终端APP定期连接运维中心,连接时向运维中心提交其当前所登录的网络服务软件的授权证书副本和IP地址等信息。
Claims (3)
1.网络服务软件反盗版方法,该方法通过网络服务软件的生产方法、部分加密方法、运维方法、注册方法、网络服务软件验证方法和终端APP绑定网络服务软件验证方法实现,其特征在于:
所述的生产方法具体是:
网络服务软件生产时,首先为当前产品创建初始公私钥对(PKt,SKt),然后生成产品描述码PD=[V,T,N,R];其中,V是当前软件产品的版本号,T是软件生产商运维系统的时统提供的当前时间戳,N是当前软件产品的编号,R为预留字段;以上所有字段的长度不可变;
然后,利用安全杂凑算法H计算产品的序列码SN=H(k|PD|k);其中,k为产品发布主密钥,由软件生产商安全持有并维护;取序列码SN的前l1个比特进行编码,作为当前产品的特征码s,取后l2个比特作为产品的启动密钥k0;l1+l2=l,l为序列码SN长度;
将待编译的网络服务软件源码中的特征码占位字符串用特征码s替换,同时在源码中预置当前产品的初始私钥SKt,编译网络服务软件源码后得到正式的发布版网络服务软件;
所述的部分加密方法具体是:
针对选取的发布版网络服务软件中独立的关键部分P,利用对称加密算法C用启动密钥k0加密得到P′,并替换P,作为交付版网络服务软件;交付版网络服务软件以及特征码s、产品描述码PD、初始公钥PKt、数字信封E(PKt,k0)由运维中心统一保存,数字信封E(PKt,k0)表示用PKt对k0进行公钥加密;
所述的运维方法具体是:
运维中心在销售确认并正确采集客户信息后,将准备销售给客户的交付版网络服务软件所对应特征码s、产品描述码PD以及客户信息入库存档,运维中心将自己的公钥PK嵌入交付版网络服务软件中,然后将交付版网络服务软件安装部署到客户服务器或交给客户自行部署;
网络服务软件首次运行时,在软件版权声明中显示该版本的特征码s,用户确认后,网络服务软件转到注册过程;
所述的注册方法具体是:
网络服务软件采集本地服务器的特征信息f,通过安全杂凑算法H计算摘要α=H(f|s|t),其中t是服务器当前的本地时间戳;网络服务软件将通过PK加密后发送给运维中心注册申请,表示用SKt对α进行签名;运维中心收到注册申请后,用自己的私钥SK解密,得到然后验证时间戳和签名的合法性:若时间戳超时或签名错误则验证失败,断开连接,拒绝注册;若验证通过,则运维中心为网络服务软件生成工作授权证书;运维中心将用户的数字信封E(PKt,k0)和工作授权证书发送给网络服务软件;网络服务软件收到工作授权证书后,用初始私钥SKt解密E(PKt,k0)得到启动密钥k0,然后用k0解密P′恢复被加密的关键部分P,得到可以正常工作的发布版网络服务软件;
所述的网络服务软件验证方法具体是:
在网络服务软件获得授权并正常工作后,所有与运维中心的交互消息都需要附加特征码s,运维中心随机检测与网络服务软件之间交互消息中的特征码s的正确性,如果检测到s不正确,则进入警示状态;
所述的终端APP绑定网络服务软件验证方法具体是:
网络服务软件对应的终端APP注册加入或重新登录网络服务软件时,服务器向终端APP出示自己的工作授权证书;终端APP利用预置的运维中心的证书公钥验证网络服务软件工作授权证书的有效性,如果验证不通过,则终端APP拒绝加入该服务器,同时向运维中心提交异常报告;终端APP定期连接运维中心,连接时向运维中心提交其当前所登录的网络服务软件的授权证书副本和IP地址。
2.如权利要求1所述的网络服务软件反盗版方法,其特征在于:所述的特征信息f包括服务器CPU序列号、BIOS序列号、硬盘序列号、网络适配器的MAC地址和部署的IP地址。
3.如权利要求1所述的网络服务软件反盗版方法,其特征在于:所述的工作授权证书包含授权时间、授权用户数量和客户的注册信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011536156.3A CN112579989B (zh) | 2020-12-23 | 2020-12-23 | 网络服务软件反盗版方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011536156.3A CN112579989B (zh) | 2020-12-23 | 2020-12-23 | 网络服务软件反盗版方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112579989A CN112579989A (zh) | 2021-03-30 |
CN112579989B true CN112579989B (zh) | 2022-06-24 |
Family
ID=75138955
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011536156.3A Active CN112579989B (zh) | 2020-12-23 | 2020-12-23 | 网络服务软件反盗版方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112579989B (zh) |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1897005A (zh) * | 2006-05-23 | 2007-01-17 | 施霖 | 一种用于防止软件运行在非授权计算机上的保护装置 |
WO2009061171A2 (en) * | 2007-11-09 | 2009-05-14 | Mimos Berhad | Secure software licensing control mechanism |
WO2010139258A1 (zh) * | 2009-06-01 | 2010-12-09 | Xue Ming | 一种软件版权保护方法、设备和系统 |
CN102271130A (zh) * | 2011-07-22 | 2011-12-07 | 四川长虹电器股份有限公司 | 实现软件安全交付及分发的方法 |
CN103078858A (zh) * | 2012-12-31 | 2013-05-01 | 上海同岩土木工程科技有限公司 | 基于web服务和签名证书的软件授权试用方法 |
CN103491097A (zh) * | 2013-09-30 | 2014-01-01 | 华中师范大学 | 基于公钥密码体制的软件授权系统 |
CN106529218A (zh) * | 2016-10-28 | 2017-03-22 | 杭州华三通信技术有限公司 | 一种应用校验方法和装置 |
CN109639680A (zh) * | 2018-12-14 | 2019-04-16 | 杭州安司源科技有限公司 | 一种三元对等的即时通信身份认证和权限控制方法 |
CN110826030A (zh) * | 2019-11-08 | 2020-02-21 | 湖南长城医疗科技有限公司 | 一种自助软件和相关模块授权使用方法 |
CN110866226A (zh) * | 2019-11-15 | 2020-03-06 | 中博信息技术研究院有限公司 | 一种基于加密技术的java应用软件版权保护方法 |
CN111708991A (zh) * | 2020-06-17 | 2020-09-25 | 腾讯科技(深圳)有限公司 | 服务的授权方法、装置、计算机设备和存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7742992B2 (en) * | 2002-02-05 | 2010-06-22 | Pace Anti-Piracy | Delivery of a secure software license for a software product and a toolset for creating the software product |
-
2020
- 2020-12-23 CN CN202011536156.3A patent/CN112579989B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1897005A (zh) * | 2006-05-23 | 2007-01-17 | 施霖 | 一种用于防止软件运行在非授权计算机上的保护装置 |
WO2009061171A2 (en) * | 2007-11-09 | 2009-05-14 | Mimos Berhad | Secure software licensing control mechanism |
WO2010139258A1 (zh) * | 2009-06-01 | 2010-12-09 | Xue Ming | 一种软件版权保护方法、设备和系统 |
CN102271130A (zh) * | 2011-07-22 | 2011-12-07 | 四川长虹电器股份有限公司 | 实现软件安全交付及分发的方法 |
CN103078858A (zh) * | 2012-12-31 | 2013-05-01 | 上海同岩土木工程科技有限公司 | 基于web服务和签名证书的软件授权试用方法 |
CN103491097A (zh) * | 2013-09-30 | 2014-01-01 | 华中师范大学 | 基于公钥密码体制的软件授权系统 |
CN106529218A (zh) * | 2016-10-28 | 2017-03-22 | 杭州华三通信技术有限公司 | 一种应用校验方法和装置 |
CN109639680A (zh) * | 2018-12-14 | 2019-04-16 | 杭州安司源科技有限公司 | 一种三元对等的即时通信身份认证和权限控制方法 |
CN110826030A (zh) * | 2019-11-08 | 2020-02-21 | 湖南长城医疗科技有限公司 | 一种自助软件和相关模块授权使用方法 |
CN110866226A (zh) * | 2019-11-15 | 2020-03-06 | 中博信息技术研究院有限公司 | 一种基于加密技术的java应用软件版权保护方法 |
CN111708991A (zh) * | 2020-06-17 | 2020-09-25 | 腾讯科技(深圳)有限公司 | 服务的授权方法、装置、计算机设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112579989A (zh) | 2021-03-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6986063B2 (en) | Method for monitoring software using encryption including digital signatures/certificates | |
US6799277B2 (en) | System and method for monitoring software | |
US7003107B2 (en) | Hybrid stream cipher | |
US7216368B2 (en) | Information processing apparatus for watermarking digital content | |
US7496756B2 (en) | Content usage-right management system and management method | |
US7426639B2 (en) | Information processing apparatus and method for managing grouped devices in an encrypted environment | |
US20070044159A1 (en) | Information processing apparatus | |
US20060291650A1 (en) | State-varying hybrid stream cipher | |
CN103491098A (zh) | 基于公钥密码体制的软件授权方法 | |
CN101145906A (zh) | 对单向网络中的接收终端进行合法性认证的方法及系统 | |
EP1403839A1 (en) | Data originality validating method and system | |
JP5204553B2 (ja) | グループ従属端末、グループ管理端末、サーバ、鍵更新システム及びその鍵更新方法 | |
KR20020034974A (ko) | 컨텐츠 배신방법, 이에 이용하는 서버, 단말 및 컴퓨터프로그램 | |
CN112579989B (zh) | 网络服务软件反盗版方法 | |
US20030182236A1 (en) | Information processor | |
CN108235152B (zh) | Drm应用系统和drm私有数据的传递方法 | |
US20030144958A1 (en) | Computer network based secure peer-to-peer file distribution system | |
JP2009251977A (ja) | ソフトウェアインストールシステム | |
US20140013453A1 (en) | Duplication judgment device and duplication management system | |
KR20030038995A (ko) | 소프트웨어 불법복제 방지 시스템 및 방법 | |
WO1998033296A1 (en) | Distribution system with authentication | |
CN101808100A (zh) | 一种解决信息安全设备远程升级重放性的方法和系统 | |
CN113221074B (zh) | 一种离线授权方法 | |
JP2003087237A (ja) | コンテンツ利用管理システム、コンテンツ利用管理方法、および情報処理装置、並びにコンピュータ・プログラム | |
JP5677194B2 (ja) | コンテンツ販売管理装置及びコンテンツ販売システム及びコンピュータプログラム及びコンテンツ販売管理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |