基于web服务和签名证书的软件授权试用方法技术

技术编号:8657627 阅读:186 留言:0更新日期:2013-05-02 01:34
本发明专利技术涉及一种基于web服务和签名证书的软件授权试用方法,该方法包括:客户端加载软件验证模块,软件验证模块检查本地是否存在试用许可数字证书,若是,则启动证书验证步骤,验证该试用许可数字证书的合法性及证书的有效时间;若否,则启动申请注册步骤,向web服务器发送申请注册信息,并从web服务器获取带有开发商私有密钥签名的试用许可数字证书。与现有技术相比,本发明专利技术具有低成本、易实现、管理简单、版权保护理想、且不影响客户全面体验试用软件功能等优点。

【技术实现步骤摘要】

本专利技术涉及一种软件版权保护方法,尤其是涉及一种。
技术介绍
各种应用软件的蓬勃发展,促进了各产业的进步和经济的发展,提高了整个社会的效率,也给人们的生产和生活带来了极大的便利,而应用软件的开发往往需要巨大的资金和时间投入,尤其是需要长期的技术积累,但我国在知识产权保护力度上存在一定欠缺,加上盗版者法律意识的淡薄,导致软件盗版屡有发生,严重损害了开发者的利益,开发商的投资和软件开发工作者的劳动很容易失去尊重和回报,影响开发者的积极性和行业的长期健康发展。因此,从技术上解决软件防盗的想法应运而生,产生了加密锁硬件加密、软件授权书授权、注册码正版验证等很多方式。近年来随着非对称加密算法的技术成熟和推广,软件保护技术方案还加入了采用数字签名加密方式。关于软件保护方面的研究论文和专利非常多,也越来越受到各方关注,但不管是那一种方式,都是在一定程度上增加破解难度防盗版。软件需要发展和进步,一方面软件防盗版成为开发者首要面临的困难与风险,另一方面,软件需要宣传和推广,开发者要将尽可能多的软件功能展示给用户试用选择。许多开发者为了防盗,选择不提供软件试用版本,或者关键功能限制使用,产品宣传采用图片和视频方式,而这种方式毕竟不符合一般商品的销售规则,软件产品比一般商品更具有用户体验要求,没有试用产品的功能和交互习惯,用户无法理性选择,不利于宣传和推广。而另外一些很好的软件,由于不注意盗版问题,采用简单的序列号验证、日期限制、或者注册信息等方式,发布不久即遭到破解,没有给开发者带来合理的回报,让人痛惜。如何让软件最大限度的受到版权保护,又不至于限制软件的宣传推广,是摆在开发者面前的一道难题,传统方式有的采用硬件锁写入版本信息、使用时间限制或者次数限制方式,这种方式的好处是破解难度大,保护效果好,缺陷是成本高,不便于大规模推广。另一种方式是用户发起注册申请,开发商通过申请信息产生加密的授权文件,然后通过邮件等方式,将授权文件交给用户放在指定目录下随程序一起运行,验证程序的合法性。该方式的优点是成本低廉,容易推广,缺陷是技术漏洞多,保护功能脆弱。例如时间限制型授权,只要安装一个系统时间锁定工具即让保护失效。另外还有利用网络授权,用户采用实名或者电话注册申请,开发商人工审批,远程在线口令验证方式,该方式优点是破解风险可控,缺陷是维护成本高。武汉理工大学学报第31卷第6期《软件保护技术的分析及实现》一文中提出用因特网来发布软件的保护方案,从理论上讲具有一定的可行性,但没有讲述申请提交如何实现,是否自动提交。另外没有考虑一个用户注册开发商多个产品的问题,该方案用户信息、软件及版本信息显然不够,没有考虑服务器端的用户及版本管理,存在明显局限性。中国专利公开号为CN 1621992A的申请案,是利用了数字签名及计算机指纹信息授权软件的版权保护方案,该方案主要针对已购买用户的正版授权,但该方案局限性在于没有考虑用户硬件损坏更换的情况,造成的授权失败问题,还有授权过程较复杂,用于时间或者次数限制的软件试用存在显著不足。基于以上问题和原因,找到一种低成本、易于管理的,既能保护软件版权,又便于软件试用和推广宣传的方法非常迫切。
技术实现思路
本专利技术的目的就是为了克服上述现有技术存在的缺陷而提供一种低成本、易实现、管理简单、版权保护理想,且不影响客户全面体验试用软件功能的。本专利技术的目的可以通过以下技术方案来实现:一种,该方法包括:客户端加载软件验证模块,软件验证模块检查本地是否存在试用许可数字证书,若是,则启动证书验证步骤,验证该试用许可数字证书的合法性及证书的有效时间;若否,则启动申请注册步骤,向web服务器发送申请注册信息,并从web服务器获取带有开发商私有密钥签名的试用许可数字证书。所述的申请注册步骤具体包括:(11)软件验证模块判断是否收到申请注册信息,若是,则执行步骤(12),若否,则退出申请;(12)软件验证模块将申请注册信息进行加密,并通过SOAP协议发送给web服务器;(13)web服务器对收到申请注册信息进行解密,判断该申请注册信息是否合法,若是,则web服务器将该申请注册信息保存至客户管理数据库中,并执行步骤(14),若否,则web服务器将注册失败原因反馈给软件验证模块,退出申请;(14)web服务器生成唯一证书编号,用开发商私有密钥签名并生成试用许可数字证书,将试用许可数字证书发送给软件验证模块;(15)软件验证模块收到试用许可数字证书后,在本地备份该证书,若接收失败或者备份过程错误,则发送注册失败消息到web服务器,若成功备份该证书,则发送验证成功消息到web服务器;(16)客户端完成申请注册和软件授权,开始试用软件。所述的申请注册信息包括硬件指纹信息、用户信息、试用软件名称、软件版本和首次注册时间。所述的步骤(12)具体为:(121)软件验证模块提取硬件指纹信息,包括BIOS编号、硬盘序列号和MAC地址;(122)生成随机码信息,将申请注册信息和随机码信息格式化,同时生成一个随机会话密钥,通过该随机会话密钥加密格式化后的信息;(123)提取开发商公开密钥,通过开发商公开密钥加密随机会话密钥,将加密后的信息通过SOAP协议发送给web服务器。所述的步骤(13)中的解密具体为:首先用开发商私有密钥解密随机会话密钥,再用随机会话密钥解密申请注册信息。所述的步骤(13)中的将注册失败原因反馈给软件验证模块具体为:web服务器将注册失败原因的特征值,加上软件验证模块发送的随机码信息,以明文方式直接反馈给软件验证模块。所述的证书验证步骤具体包括:(21)软件验证模块提取硬件指纹信息和本地试用许可数字证书的序列号,并对所有信息进行加密,形成证书验证请求信息,并发送给web服务器;(22)web服务器接收到证书验证请求信息后,对信息进行解密,提取证书序列号、硬件指纹信息、随机码,通过查找序列号和硬件指纹信息确定该试用许可数字证书是否合法,并将特征值加上随机码反馈给软件验证模块;(23)软件验证模块根据返回的随机码,提取特征值,确定是否通过证书合法性验证,若是,则执行步骤(24),若否,则显示不通过原因;(24)软件验证模块将证书编号进行加密,形成证书有效期检查请求信息,并发送给web服务器;(25)web服务器接收到证书有效期检查请求信息后,对信息进行解密,提取证书编号,在客户管理数据库中查找该证书首次注册时间、该证书对应软件版本和软件试用期限,通过对比当前web服务器时间、首次注册时间和试用期限,确定该证书是否过期,并向软件验证模块反馈特征值和随机码;(26)软件验证模块提取特征值,并根据特征值显示验证结果。所述的对信息进行加密具体为:生成随机码信息,将信息与随机码信息进行格式化,并用随机密钥加密格式化后的所有信息,用开发商公开密钥加密该随机会话密钥;所述的对信息进行解密具体为:用开发商私有密钥解密随机会话密钥,再用随机会话密钥解密消息。与现有技术相比,本专利技术具有以下优点:(I)本专利技术利用因特网web服务提供试用软件的授权验证功能,自动为客户提供软件试用的注册和验证服务,为软件的宣传推广提供便利,节省了传统网络注册的人工授权的时间和维护成本。(2)本专利技术采用计算机硬件指纹信息和注册信息的验证方法和证书的数字签名技术保护授本文档来自技高网
...

【技术保护点】
一种基于web服务和签名证书的软件授权试用方法,其特征在于,该方法包括:客户端加载软件验证模块,软件验证模块检查本地是否存在试用许可数字证书,若是,则启动证书验证步骤,验证该试用许可数字证书的合法性及证书的有效时间;若否,则启动申请注册步骤,向web服务器发送申请注册信息,并从web服务器获取带有开发商私有密钥签名的试用许可数字证书。

【技术特征摘要】
1.一种基于web服务和签名证书的软件授权试用方法,其特征在于,该方法包括:客户端加载软件验证模块,软件验证模块检查本地是否存在试用许可数字证书,若是,则启动证书验证步骤,验证该试用许可数字证书的合法性及证书的有效时间;若否,则启动申请注册步骤,向web服务器发送申请注册信息,并从web服务器获取带有开发商私有密钥签名的试用许可数字证书。2.根据权利要求1所述的一种基于web服务和签名证书的软件授权试用方法,其特征在于,所述的申请注册步骤具体包括: (11)软件验证模块判断是否收到申请注册信息,若是,则执行步骤(12),若否,则退出申请; (12)软件验证模块将申请注册信息进行加密,并通过SOAP协议发送给web服务器; (13)web服务器对收到申请注册信息进行解密,判断该申请注册信息是否合法,若是,则web服务器将该申请注册信息保存至客户管理数据库中,并执行步骤(14),若否,则web服务器将注册失败原因反馈给软件验证模块,退出申请; (14)web服务器生成唯一证书编号,用开发商私有密钥签名并生成试用许可数字证书,将试用许可数字证书发送给软件验证模块; (15)软件验证模块收到试用许可数字证书后,在本地备份该证书,若接收失败或者备份过程错误,则发送注册失败消息到web服务器,若成功备份该证书,则发送验证成功消息到web服务器; (16)客户端完成申请注册和软件授权,开始试用软件。3.根据权利要求2所述的一种基于`web服务和签名证书的软件授权试用方法,其特征在于,所述的申请注册信息包括硬件指纹信息、用户信息、试用软件名称、软件版本和首次注册时间。4.根据权利要求3所述的一种基于web服务和签名证书的软件授权试用方法,其特征在于,所述的步骤(12)具体为: (121)软件验证模块提取硬件指纹信息,包括BIOS编号、硬盘序列号和MAC地址; (122)生成随机码信息,将申请注册信息和随机码信息格式化,同时生成一个随机会话密钥,通过该随机会话密钥加密格式化后的信息; (123)提取开发商公开密钥,通过开发商公开密钥加密随机会话密钥,将加密后的信息通过SOA...

【专利技术属性】
技术研发人员:周德成刘新根张杰齐磊彭丹刘学增
申请(专利权)人:上海同岩土木工程科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1