一、软件保护
软件保护的概念是站在开发商的角度出发的,它强调的是利用以加密为主的技术手段保护软件不被破解。从理论上说,只要拥有足够的资源和时间,所有的软件保护技术都可以被破解。但是,如果一种保护技术的安全强度达到了让破解者付出比购买软件还要高的成本,这种保护技术就是成功的,值得使用。
常用的软件保护方式主要分为基于硬件的加密方式和基于软件的加密方式。基于硬件的加密方式是指软件的运行要与一个专用的硬件设备关联,目前主要的实现方式是加密锁,也叫加密狗。基于软件的加密方式不需要专用的硬件设备,一般采用与计算机软硬件特征绑定的电子许可证形式。传统的加密锁和电子许可证产品一般并不包括授权管理功能,软件开发商通常需要自己开发初始化工具和授权管理工具。
二、软件授权
软件授权是软件保护概念的延伸和发展。其目标对象同时涵盖了开发商和最终用户两个方面。其目是在保护软件不被盗版的同时,为开发商创造更方便、更灵活的销售模式。
软件授权在实现软件保护技术的基础上,能够提供从软件授权的设计、开发集成、调试,到软件授权的生成、分发、管理一整套完善的解决方案。从传统的软件保护过渡到软件授权,不仅是软件保护技术在互联网时代发展的必然结果,也是开发商降低软件的保护、发行、管理和维护成本,更快响应用户需求和市场的变化的强烈愿望。
三、为什么需要软件授权
越来越多的开发商都不再满足于现有的功能单一的软件保护产品,都希望市场上多一些结合有互联网技术的、授权管理功能丰富的软件保护产品,这是因为:
- 互联网的逐渐普及和日新月异的发展极大地改变了我们工作和生活的方式,软件的保护和授权也应该与互联网技术相结合,以达到及时通讯、方便管理和节省成本的目的。
- 软件的功能及模块越来越多,用户的需求也越来越个性化,而市场的变化更是令人难以预测。这些都要求软件开发商不断创造新的按需销售模式,以获得更多的利润。
- 软件的授权管理最好能与软件开发商现有的ERP/CRM等管理系统集成,做到架构上可扩展、功能上智能化和自动化,以进一步提升企业的管理水平和竞争力
四、软件授权的要素
既然软件授权是软件保护概念的延伸和发展,那么软件授权在实现软件保护这个基本要素的同时,也应具备自身的一些特点。具体来说,软件授权至少要包含以下三个要素:
1、软件加密:
软件授权依然需要使用加密算法作为主要的保护软件的技术手段。与软件保护不同的是,软件授权所需要的加密方案要更灵活,能够满足不同授权需求和业务模式的需要。
2、授权管理:
授权必然要涉及到管理。为每个软件用户提供不同的授权方案并根据需要进行升级,需要一个完整的系统,包括授权的设计、发放、升级、管理和统计等功能。如果说软件保护主要是一个软件应用的客户端的技术,授权管理则是一个同时包含客户端和服务器技术的系统架构。
3、中央服务:
软件授权要求建立中央授权服务系统,以用于授权的设计和发放,并为授权用户提供方便快捷的服务。所有的软件保护和授权工作都要以中央授权系统为核心,以互联网技术为纽带,实现软件保护和授权的统一化、智能化、自动化。
五、软件授权的主要模式
根据授权文件是存在本机还是服务器上——云端,软件授权主要分本地授权和云授权两大类。
1、本地授权
本地授权是指软件的使用许可在客户端,主要为传统的软件保护模式所使用。最常用的两种本地授权形式是前面提到的硬件加密锁和电子许可证。硬件加密锁的优点是授权发放简单、可移动。但是随着互联网的使用越来越普及,也暴露出不少缺点:
- 适用于传统的一次性永久授权,无法实现试用版本和按需购买。
- 硬件的存在带来额外的生产、初始化、物流、安装和维护成本。
- 安装驱动和客户端组件以及额外的硬件设备影响了客户的使用体验。
- 无法实现基于互联网的电子化发行。
- 难以进行升级、跟踪及售后管理。
电子许可证是在获得了计算机的软硬件特征后,以某种机制将授权与该计算机的软硬件特征绑定后发给客户使用。结合了服务器验证的“双因素”电子授权的安全机制,在整体架构的安全性和安全效果上相比加密锁具有更多的优势。
电子许可证在客户端没有硬件,也无需安装驱动和客户端组件,可靠性兼容性好,可实现软件的电子化发行,为开发商节省大量的软件保护和发行成本。但它从本质上仍然属于本地授权方式,不具有下面介绍的“云授权”方式实时授权、云存储、可移动以及超高安全性的特点。
2、云授权
云授权是一种SaaS模式的授权。开发商的软件还是在本地运行,但授权许可始终保存在授权服务器——“云端”。云授权要求客户端软件具备连网条件,可以根据具体的情况要求时刻连网或每隔一个固定的时间连一次网,以便跟踪和管理授权。相比本地授权,云授权的安全级别要更高,这是因为授权的核心机制只存在于服务器上,而服务器与应用软件之间采用了高安全性通讯协议。
云授权的突出优点是:
- 保护开发商对当前产品的投资和技术积累,实现已有产品和技术向云计算模式的平滑过渡。
- 客户端可移动,不与计算机或加密锁绑定,时刻联网验证,超高安全性。
- 实时用户管理和授权管理。
- 软件配置和用户配置的云存储。