传统的软件加密技术
传统的软件加密技术主要有加密锁和注册码两种方式。
加密锁是八十年代兴起的加密技术,当时大多数用户都无法联网,加密锁因为即插即用又方便移动而流行起来。早期是并口锁的形式,后来逐渐转变成更加稳定和易用的USB接口形式,核心芯片也经历了逻辑芯片、单片机和智能卡三个阶段。
注册码方式使用的更早,几乎是与商业软件的使用同步出现的,加密的方式是通过对计算机软硬件信息的一个算法变换,软硬件信息包括计算名、用户名、硬盘或网卡等,变换算法根据加密强度的要求有不同的选择,有简单的变换算法、标准对称加密算法和最高安全级别的非对称算法等。早期的计算机因为联网不方便,都是离线注册的方式,如邮件或电话。随着互联网的发展,增加了在线注册的方式,并逐渐成为主流方式。
传统加密方式是以客户端为主的技术,基本上没有或很少有信息化技术的应用,在信息化技术日益盛行的今天,越来越跟不上时代发展的步伐。以常见的光盘带加密锁的盒装软件发行方式为例,它的主要弊端是:
1、 发行成本高,有制作、包装、库存和物流成本,损坏和丢失后的处理也比较麻烦。软件一更新,光盘就没用了,加密锁还要占用计算机接口;
2、 用户体验差,通常试用是一个版本,正式购买是另一个版本。申请试用和正式购买等待的时间比较长,产品的升级也不方便;
3、 无法了解用户信息,因为都是离线使用,开发商无法得到有效的用户信息和软件使用信息,信息化程度低;
4、 防盗版效果差,加密锁被破解后,可以大量复制,无法进行盗版的跟踪和鉴别,因此也无法采取法律手段来限制盗版,破解补救只能更换加密锁,代价高昂;
软件加密方式直接影响到用户对软件的使用体验和享有的服务水平,是除了软件产品本身的功能和质量外,决定用户购买软件的关键因素。一个好的软件加密和发行方式应该包括以下几个主要方面:
1、 软件的试用和正式购买都非常方便;
2、 用户能够方便实现按需购买,并且很容易升级到新版本;
3、 可以实现授权使用信息和用户信息的收集,有助于进行新产品规划、改进销售和提高服务水平。
下面,我们来看一下,信息化时代的软件加密技术应该是什么样的。
通常意义上的信息化包括信息的收集、传输、管理和挖掘四个方面,加密技术的信息化同样包括这四个方面:
1、 信息的收集包括客户端软硬件信息和使用信息的记录;
2、 信息的传输是指客户端与授权服务中心之间的信息通讯,这通常需要采用加密通道技术,以防信息的泄漏和攻击;
3、 信息的管理主要是指授权系统的协同管理,包括授权信息的产生、分类、检索、维护,以及与企业其它管理系统的集成等;
4、 信息的挖掘是指在信息管理的基础上,根据用户的使用情况提炼和总结出有规律性和指导意义的信息,为企业产品规划和营销提供科学依据。
数字化和互联网是实现信息化的两个主要的支撑技术。数字化使信息不受硬件的约束,便于流动;而互联网为信息的便利流动提供了条件,二者结合产生无限可能。
通过网络下载软件,试用满意后再正式购买和使用,这就是基于互联网的软件加密和发行方式,也叫电子化授权。用户通过下载的方式可以在几分钟内获得软件拷贝,并开始试用评估。软件开发商则节省了大量的生产、包装和物流费用,因而可以让利给用户,促进软件的销售。
基于互联网的软件加密方式与传统的加密方式相比,有以下三个优点:
1、 没有硬件,可实现电子化发行和销售,大大提高了用户体验;
2、 网络激活和定期验证保证了软件的安全性;
3、 统一的互联网授权中心记录了用户的激活和使用情况,为企业的信息化管理和决策提供了重要依据。
毫无疑问,为实现软件的快速发行、降低发行成本和提高用户体验,基于互联网的数字化发行是最好的办法,而电子授权则实现数字化发行的最佳方案。
基于电子证书和互联网的SaaS模式的授权系统由客户端和授权中心两部分构成:客户端需要通过API或外壳的方式与开发商的软件进行集成,以实现软件的加密保护;授权中心用于开发商下载客户端模块、产生和管理授权码、验证客户端的激活请求,并在验证通过后发授权文件给客户端。如下图所示:
授权解决方案原理图
电子授权方案允许软件厂商以自动化、可配置、易于管理的方式对试用用户和正式用户发放软件授权许可。电子授权由中央服务器验证和激活,激活过程对软件用户非常方便和友好。对于具备网络连接的客户端来说,一切都在后台自动实现;而企业管理人员可以通过管理界面查看所有的激活请求及结果。
不仅如此,软件开发商可以使用统一的授权管理平台进行软件的发行和授权管理,杜绝的代理商串货和协助盗版等损害软件开发商利益的行为。同时,软件开发商还可以根据收集到的软件注册、激活、验证等信息来改进产品和服务。
软件开发商能否转变软件发行和授权理念,能否以最符合互联网时代特点和贴近用户需求的在线发行方式进行产品营销和服务,将是决定一个软件开发商是在互联网时代是生存还是灭亡的关键因素。使用基于互联网的电子化发行方式是开发商的不二选择。