通过防止他人利用你的工作,可以防止你的竞争对手超过你,从而达到试图主宰某种类型软件发展的结果是一个很强大的方法。
关于这种情况,也许是最明显的例子,就是美国加密技术的出口管制。在上世纪九十年代的大部分时间里,从美国出口功能强大的加密技术(“强密码”)—至少在纸面上—在某些方面甚至比实际的军火出口都受到更严格的控制。自那时起,加密出口管制已有点松动,但相关的法律依然是不切合实际的。
这种立法的意图是很明显。自从二十世纪第二次世界大战结束以来,美国政府很可能拥有了全球领先的加密技术,并且加密技术在美国学术界的发展也是处于飞速状态。在这种情况下,美国国会几乎是不可避免的得出结论是必须通过有效的加密技术出口限制方面的法律让美国政府控制加密技术,以防止被世界其它地方(部分原因是因为美国政府破译密码往往正是从他们开始的)获得。
不幸的是作为政府的执行者—以及美国那些对安全感兴趣的研究和开发者—我们发现,这种政策的实际结果是导致了很多最有价值的工作离开了美国。正是由于美国信息安全政策导致的黑暗时代,NetBSD项目的分支OpenBSD项目为了回避出口管制的法律,不得不将大量的源代码印刷出来,以书籍的形式传送出去。该代码不得不费力地在加拿大重新输入计算机中,这样的话,项目的创始人才能在法律容许的范围内进行这样一个和安全以及加密有关的开放源代码重点项目的运做。
很多本来希望来美国(或留在美国)开始决定离开美国到其它地方(尤其是加拿大和英国)进行工作和学习。创新信息安全技术开始从美国离开的后果,以及最终的结果很可能就是,世界其他地方的赶上美国加密技术的速度比本来预计的更快。因为强大的加密技术进口到美国是完全合法的,所以许多最优秀研究员特别喜欢工作在美国以外的地区,但美国如何和海外某人分享技术却会导致法律方面的问题。
正如我在前面已经指出,尽管关于强密码出口限制的法律已经进行了修改,但依然是不理想的。好像是为了弥补法律放宽对加密技术出口的限制,美国政府现在更严格控制发给要进行信息安全有关问题研究的人学生签证。由于试图管制技术离开国家导致完全意想不到的后果出现,政府现在选择的方法是直接控制国内信息安全研究的发展。好东西对于所有进行信息安全和开发的人来说都是感兴趣的,美国政府找了一条新途径来让自己陷入控制不了专业知识的问题之中。
美国政府的反例并不是惹人注目的。加拿大相对宽松的法律吸大量原来希望前往美国进行安全软件研究的人员,当然,实际情况是更大程度上是美国政策的副作用而不是加拿大的独特条件,吸引到安全研究人员。与政府相比,商业中反例更容易寻找。
今天我选择的例子是谷歌。选择的原因不仅仅是因为我在最近几个月发表了关于谷歌软件开发的文章(谷歌发布了另一个开源安全工具:RatProxy、Keyczar,它会对谷歌浏览器Chrome的安全带来什么样的影响),而且是因为从谷歌在线安全日志的文章中来看,该公司的安全策略似乎是吸引开发者发布有用的高品质安全软件以达到尽可能广泛使用的目的。事实上,在与其他许多公司(其中一些人可能使用了GNU通用公共许可类型的原因,是与其它开源许可类型相比它更受到欢迎)相比,谷歌发布的这种工具采用的是自由拷贝copyfree的许可类型,这使得几乎所有人都可以方便地使用该软件。反过来,就象我在《正确选择安全软件的授权模式》一文中指出的一样,这将让安全意识得到提高并促进整个行业的发展。
更重要的是,这种参与可以改善谷歌软件的质量,并是显示谷歌本身对安全认识的优秀营销手段。这种营销不仅有利于说服人们使用谷歌的服务,从而扩大客户群,而且还可以限制竞争对手的发展。通过将内部安全技术公开,谷歌软件技术发展的水平将迅速得到提高。
我猜想下面这样的情况应该是毫不令人奇怪的:
· 主要是由完全不了解互联网的人组成的国会,实际上完全不了解他们的行为方式可能会导致意想不到的后果。
· 谷歌公司,其难以置信的增长取决于一个复杂系统(互联网)的性能的某些突发性发展,将可以证明是有能力发展一个进化的复杂系统(举例来说软件开发的就业市场)。
最后,从关于上面关于安全技术共享政策的例子可以得出一个单独的教训。这个教训是:
开放式的发展可以吸引了更多的发展人才,从而导致更快的发展。封闭式的发展只会让人才流失到别的地方去。
封闭式的发展类似于一个锁着的房间。你可以保证拥有安全技术的安全,但就在保护它的同时,世界其他地方的(人数与你相比至少数百万比一的比例)
将专注于超越你的技术。锁着的房间仅仅会让你自己的技术停滞,世界其他地方的同类技术依旧在飞速发展。
换句话说,一个握着的手不可能用来举起喝水的杯子,不管这个杯子离手有多近。