加密锁 vs. 云授权
一、加密锁的现状与不足
在中国,加密锁仍然是占主导地位的软件保护方式。近30年来,计算机硬件不知更新了多少代,软件技术也从上世纪90年代起进入了互联网时代,而加密锁保护方式却一直没有改变,顶多从原先的并口锁进化到USB锁,这是为什么呢?
这是因为,30年来,软件的盗版依然存在,人们却没有找到应对盗版更好的办法。另外,传统的观念认为,加密锁具有安全强度高、软件授权可随加密锁移动使用优点。实际上,相比这两个“优点”,加密锁保护方式的缺点更多:
- 使用成本高,不仅有硬件成本,还有初始化、物流、管理和维护成本。
- 兼容性差,加密锁一般都需要安装驱动程序,经常会碰到使用不了的情况。
- 无法方便实现“先试后买”和“按需购买”。
- 无法实现软件的电子化发行。
- 在互联网极为流行的今天,仍然无法有效地跟踪和管理软件的授权。
- 一旦被破解,就可以大量复制,无法补救。
- 容易丢失和损坏。
软件行业正在从传统的光盘套装、一次性授权付费,向在线托管、租赁使用、按需付费型转变。在所有的媒体都在大肆宣传SaaS的今天,有没有一种可以替代加密锁的、成本更低、使用更方便、用户体验更愉快的软件保护方式呢?
云计算时代的到来,带来了一种新的基于云计算方式的软件保护和授权方式——云授权。这种授权方式不仅适用于管理、制造等行业软件,也适用于股票、群发和游戏类新兴的、在线工作的软件。
二、云授权的定义
云授权是针对传统的客户端许可证授权而言的,它的准确定义是:云授权是一种云计算模式的授权,开发商的软件还是在客户端运行,但软件运行时需要的授权许可、关键数据和配置数据必须联网从授权服务器——“云端”——获得。
云授权要求客户端软件具备连网条件,可以根据具体的情况要求客户端时刻连网认证或每隔一个固定的时间连网认证一次。
三、云授权的两种模式
时刻联网认证的云授权是强云授权模式。在这种模式下,即使客户端软件没有任何操作,其后台程序也会与授权服务器保持心跳连接,来检查客户端的身份是否合法、授权是否有效,以及授权是否有更新需要升级等。强云授权模式的优点是,客户端具有移动性,在任意一个终端上都能找回相同的运行环境,但同一时刻只允许一个客户端使用。
每隔一个固定的时间连网认证一次的云授权是弱云授权模式。该模式适用于那些不具备长期联网条件的用户。连网认证的周期可以根据需要设置为几天到几个月不等。因为弱云授权模式的客户端可以在长时间不连网的情况下使用授权,所以,这种模式的授权需要同时和客户端机器绑定,以防止软件的非法传播。到了认证周期时,客户端需要连接授权服务器进行认证,以激活下一个认证周期内软件的使用许可。如果服务器上的授权内容有更改,比如授权功能模块的增加或减少、授权时间的延长或缩短等,也会在认证时同步到客户端。
相比传统的客户端许可证授权,云授权不仅安全性更高,而且使用、管理和维护也更加方便。
四、云授权的安全性
时刻连网认证的云授权,因客户端没有任何许可文件,而且客户端与授权服务的通信采用的是随机会话密般,黑客无法使用“记录重发”攻击,只能从客户端或服务器端来寻找突破口。而客户端安全库一般都集成有防反编译、防反调试、代码混淆和随机路执行等技术,破解难度非常大。授权服务器通常也都设有防火墙和完善的入侵检测技术,任何非法的访问和异常情况都可以监测得到,黑客也很难获得充分的时间和环境去破解授权服务器上的程序或者非法获得授权服务器上的数据。
周期性连网认证的云授权,因客户端授权文件与机器硬件特征绑定,黑客可能会伪造一台硬件特征相同的机器来非法运行软件。但到了认证周期时,授权服务器可以根据认证记录来判断是否有非法的机器在使用合法的授权。这是因为:
- 并不是所有的机器硬件特征都用来绑定,可以用未用作绑定的硬件信息来判断认证的客户端机器是否合法。
- 如果同一授权码在一个认证周期内有多次认证记录,则可以断定该授权码被非法使用。对非法使用的授权码,可以在立即禁用,在下一次认证时,所有使用这个授权码的客户端许可文件都会被同步更新成无效,从而防止了该授权码的非法扩散使用。
五、云授权的易用性
因为云授权是连网使用的,所以客户端软件的激活、授权内容更新后的同步、授权丢失后的自动找回都是自动完成的,无须用户参与。开发商可以将软件的更新和授权的更新结合起来,只让合法的用户得到软件和授权的更新,非法用户无法更新软件,或者即使可以更新软件,却无法更新的授权,从而无法使用软件或无法使用软件的新功能。
六、云授权的优点
- 保护开发商对当前产品的投资和技术积累,实现已有的产品和技术向未来的云计算模式的平滑过渡。
- 可以方便地实现软件的“先试后买”和“按需购买”,降低用户使用门槛,为软件开发商创造更多的赢利模式。
- 可以与企业内部的其他管理系统集成,既方便了产品和用户的管理,又降低了软件保护、授权、发行和维护成本。
- 安全强度高,并可实现授权的跟踪和破解补救。
- 基于互联网的软件保护、授权和发行方式,已成为软件行业的一个不可阻挡的趋势。我们可以预见,在不久的将来,云授权必然会取代传统的加密锁授权,成为软件保护和授权的主要方式。