苹果的水晶监狱与开源平台的未来

两周前,苹果公司联合创始人Steve Wozniak发起号召,希望苹果公司开放平台,给乐于折腾的用­­­­户提供一个改善苹果公司设备的机会。

EFF支持他的立场:苹果公司产品有许多优点,但它们还是被苹果公司对用户和开发者的种种限制给毁了,特别是iOS。

下面这篇来自EFF的文章将要讲到苹果公司、微软和其他手机开发商对智能手机的各种限制措施,他们为引入这些限制使用的借口,这些限制对于创新的阻碍,为何苹果公司应该率领大家解决这个问题。我们还为智能手机和掌上电脑用户提出了一个应该得到执行的权利法案。

苹果公司的产品特别是iOS设备,就像是个美丽的水晶监狱,系统、硬件和来自苹果公司的条款都是对开发者的阻碍,只有越狱用户才能不受限制。

封闭的iOS

苹果公司用iPhone改变了我们对手机的看法,但苹果公司也引领了「对电脑和软件市场进行限制」的潮流。你买一台iPad,但不越狱的话,很多东西都没法安装。App Store里所有App都需要经过苹果公司审核,而且都没有Root或Administrator权限。

对于不使用官方付款模式的App,苹果公司会从App Store中移除,或者直接拒绝上架,例如WikiLeaks和eBook reader,任何使用“不当代码”的App也会遭受此待遇。虽然近几年随着iPhone发布,这些政策有所改善,苹果公司依然完全控制着用户可用App的范围。不像Android,原生iOS系统用户无法从App Store之外的来源安装程序,不越狱便无法安装需要管理员权限的App。将iPhone网络与PC共享、改变用户界面、安装防火墙、连接OpenVPN以保护数据安全,等等行为,都需要管理员权限。越狱还能帮助网络安全和隐私状况研究者追踪一个App的动向,看它是否有泄漏个人隐私的行为。

iPhone越狱后装的Cydia App Store

越狱后,人们可以通过Cydia安装许多App。另外,苹果公司在App发布前会改动源代码,所以,基于GNU协议的开源程序若无法获得所有作者一致同意,则无法出现在App Store上,这一点导致著名的播放器VLC下架。然而如果你给自己iOS设备越狱了,想用VLC播放视频,从Cydia便能获得它,而且官网有播放器的源代码。

既然越狱那么实用,为何苹果公司不想让客户越狱呢?一个重要原因是App Store的利润,苹果公司从用户的App购买和App内购买中抽成30%,也就是说,一个0.99美元的app卖出去后,开发者获得69.3美分,苹果公司获得29.7美分,封闭的iOS帮助苹果公司垄断软件销售。每周使用Cydia的用户有450万,这给Cydia带来了1000万美元的年度收益,这些收益苹果公司是无法抽成的。这情况有点像传统的软件购买模式,用户选择自己喜欢的商店,甚至可以直接从开发者那儿购买。

Mountain Lion 和Gatekeeper

不幸的是,苹果公司同时正在给Mac OS X添加更多限制。2011年初苹果公司开始启用Mac App Store,销售Mac平台的软件,抽成就和iOS平台一样是30%。据报告称,下一代Mac OS X系统Mountain Lion在安装非官方App时会有红色警报。

Mountain Lion 试图用红色警报让用户远离非官方App

(注: 上面不说“Adium”是因为,那样会有“苹果公司和Adium有仇”的感觉)

幸运的是,这个警告可以关闭。

但苹果公司正在危险的道路上越走越远,让自己的产品越来越封闭。OS X软件开发者会发现,苹果公司 HQ的奇怪想法严重限制着自己行为——如果苹果公司拒绝给Firefox在新的Mac OS上授权,就像拒绝Firefox在iOS上的某个版本一样,Mozilla该如何是好?眼睁睁看着自己的市场份额消失?

有些评论者认为以上对于苹果公司的描述是不公正的,因为所有“认证的开发者”都能给开发的程序签名,签名后的程序在Mountain Lion系统中默认可以安装。我们不敢苟同,以下是理由:

1 Gatekeeper 有三种设置,默认情况是只有来自Mac App Store和认证开发者的程序能安装;

2 要成为认证开发者,每年需要交99美元,并同意苹果公司的两个条款:注册开发者条款、Mac开发者项目许可条例。苹果公司试图让两个条款保密,但事实上,免费软件——就像以上图中的Adium——可能不愿意自己受到这些条款限制;

3 即使认证开发者能给自己程序签名,大部分Mountain Lion用户的默认选项都是“App Store>

从官方App Store之外下载的程序中确实可能会含有恶意软件,但官方市场需要审核所有程序,审核人员并非没有失误。GNU/Linux的发行版从上世纪九十年代就开始使用安装包签名机制,这是Linux系统安全的主要原因之一。但苹果公司对这个机制可以称得上“乱用”——不让App Store收取30%的利润,就不是安全的。

微软:UEFI和Windows RT

从很多方面来看,Windows平台的生态环境比iOS要开放,人们想装什么就装什么,包括操作系统。对开发者来说,电脑上有多系统是正常的,有很多开发者完全抛弃了Windows。

然而微软并不总是这么好,至少它在移动终端和嵌入式系统上正变得封闭。微软最近宣布,想要获得Windows8硬件认证,电脑的UEFI(可扩展型固件接口,BIOS的替代品)中必须加入“安全启动”选项。“安全启动”开启时,UEFI会用数字签名认证的代码引导系统,这样就消灭了非Windows8的其他操作系统,包括早期Windows。

自由软件社区对此进行了警告,并采用了一些法律手段,于是微软同意“经过Windows8认证的”X86和X86-64架构(注:与下面ARM对应,想删不能删的词)硬件供应商提供关闭“安全启动”选项的地方,让用户能装自己想要的系统。

对于采用ARM架构cpu的Windows电脑,包括Windows RT平板设备,故事剧情就完全不一样了,制造者被禁止“引导非Windows系统”,微软正在抄袭苹果公司模式,不让用户选择其他系统,或是修改现行的系统。

微软计划着限制Windows RT平板设备中需要高权限程序的运行,例如浏览器,唯一能以高权限运行的是IE。Mozilla的顾问Harvey Anderson在官方博客中对此提出了警告:

这为什么会影响用户呢?很简单,因为目前基于ARM架构设计的Windows系统限制了用户的选择,阻碍了竞争和创新。只允许IE用浏览器的高级功能,这是在将所有第三方浏览器驱逐出平台。

微软像苹果公司一样,也在危险的道路上前进着,让用户和开发者对于电脑操作的自由越来越少、无法实现创新。

当这些公司为限制行为做自我辩护时候,最常用的理由是,他们剥夺客户修改系统的自由是为了客户的利益:“如果我们让客户对掌上电脑为所欲为,他们会做傻事的,加以限制能让他们使用得更安全和舒适。”

这是个精心设计的误导,也许有部分用户会觉得AT&T、Sprint、苹果公司或微软设备的原生系统会比其他系统好,这些公司依然应该给用户提供“能像个掌上电脑一样工作”的掌上电脑,为了这个,只要能通过不太复杂的设置离开水晶监狱,就果断离开吧。

给掌上电脑持有者的权利法案

掌上电脑持有者应享有以下四项权利:

1、安装任意程序。 用户不应被限制可安装程序的范围。

2、获得管理员权限(root/superuser/hypervisor/administrator)。 如果客户愿意检查掌上电脑的底层代码、系统对于隐私的保护情况、使用杀毒软件、连接VPN、安装防火墙,或仅仅是修复系统,手机和设备厂商并没有法律依据来阻止他们。

3、安装其他系统。 如果用户想在iPhone上装Linux,在WP手机上装Gecko,或仅仅给Android手机换个版本, 厂商不应阻止他们。使用加密的bootloader对付恶意软件是个好主意,但加密机制应该做到以下两点:(1)允许安装其他系统;(2)为其他系统提供同样的加密措施。

4、清晰的区分硬件警告和软件警告。苹果公司拒绝为越狱用户提供警告,没人要求苹果公司支持越狱或者支持那些软件,那么它拒绝提供警告就是不可饶恕的了——也许有点难以理解,举个例子:用户想修改程序时,苹果公司并不会提示什么,而是直接出现报错屏幕。

为什么要苹果公司做领头羊呢?

苹果公司不是发明“限制用户使用程序种类”文化的公司,只能说苹果公司对于智能手机业的创新是——打造了一个对用户限制同样严格,却实用而成功的平台。

同样,苹果公司也不是第一个试图制造垄断性系统的公司。AT&T不赞成苹果公司对于用户的限制,但AT&T同时销售着承载自家修改的、有高度限制的Android系统的手机,这种行为更恶劣。

苹果公司不是没有智慧和改变这个情况的能力。苹果公司知道开源软件的重要性:若没有它们,苹果公司自己的产品也无法生存。苹果公司无比强势的品牌和领头行业地位意味着,它要在不影响收益的情况下,给开发者便利,给用户良好的使用体验。

苹果公司,听Woz的建议吧,如果不给人们改变或者离开一个系统的机会,它永远无法变得完美。(