开源与美国出口管制
| 来源:微信个人公号“IP法”
| 编辑:贺鑫
| 设计:王福政
| 责编:王皓月
答如下问题:开源能否突破美国出口管制条例的限制?
一个广为流传的观点是根据伯恩斯坦诉美国司法部(Bernstein v. Department of Justice)案,软件源代码属于言论自由的范畴,不能被政府部门管制。但很少有人提到该案的裁决都未生效。因此,伯恩斯坦案并非有法律效力的判例。
在之前的文章中,我们也提到过为何加密技术被视为军事技术或者准军事技术而被严格管制的原因。伯恩斯坦案便是在该背景下发生的。
该案的基本案情为:1990年,丹尼尔·伯恩斯坦(Daniel Bernstein)在加州大学伯克利分校攻读数学博士期间,撰写了有关加密的论文并编写了一种零延迟的私钥加密软件——Snuffle。根据当时美国《国际武器贸易条例》ITAR的规定,加密软件相当于军用物项的“弹药”。为了能够自由地与学术界交流该加密技术,伯恩斯坦于1992年向国务院提出请求,以确认该加密软件的源代码和相关信息是否受ITAR管制。美国国务院认为是的,并且要求伯恩斯坦在将该加密软件的源代码给外国人查看(出口)时获得批准(许可证)。伯恩斯坦认为这构成对其言论的限制,于是在1995年2月提起了诉讼。
该案法律问题在于:美国政府基于ITAR(后为EAR)限制伯恩斯坦出口强加密软件的源代码,是否违反了美国宪法第一修正案规定的言论自由。
1996年底,地方法院的法官认为,禁止出口强加密软件的ITAR在宪法上是模糊的,构成了第一修正案禁止的对言论的限制。
随即,克林顿总统修改了法规,将对非军事加密物项的管制从国务院下的ITAR移交给了商务部下属BIS下的EAR。监管变更后,伯恩斯坦修改了他的诉讼请求。
1997年8月,地方法院的法官裁判,无论由哪个联邦政府机构负责加密物项的管制,加密源代码都受到宪法第一修正案的保护,于是裁决EAR违宪。美国政府针对这一裁决向第九巡回上诉法院提出上诉。
1999年5月,第九巡回上诉法院合议庭的3名法官以2比1维持了地方法院的裁决。但上诉法院并未完全拒绝政府方的理由,例如持反对意见的法官就认为源代码不是言论,而是控制计算机的方法,法院也强调“我们不认为所有软件都属于言论。当然,很多都不是。”
上诉法院作出裁决后,美国司法部请求法院对该案进行全席重审(由11名,而不是3名法官审理),从而撤销了该裁判。
在全席审理之前,美国政府放宽了加密管制法规。因此,该案被发回地方法院。
2002年10月,政府在一次庭审中承诺放弃部分规则,地方法院随后以没有发生实际损失为由驳回了伯恩斯坦的诉请。
综上,不能简单地得出结论认为软件的源代码受到言论自由的保护,所以不能被管制。实际上恰恰相反,软件的源代码只要没有实现可公开获取(publicly available),仍然要受到EAR的管制。换言之,开源软件由于已公布给公众,因此一般不受 EAR 的管制。例外仍然是加密解密代码,此类代码为了不受 EAR 的管制,除了通常的公布外,还需要向工业安全局 BIS 和国家安全局 NSA 发送电子邮件进行报备。因此,(非加密类)开源软件不受 EAR 管制的关键在于开源软件是任何人都可以公开获取的,自然不存在管制的意义,而非在于软件属于言论自由的范畴,因为未公布的源代码仍然可能受到 EAR 的管制。
另外一个广为流传的观点是源代码属于言论自由的范畴(我们已经讨论过这在很大程度上是个伪命题)因此不受管制,而软件产品(目标代码)则受管制。但众所周知的是目标代码都是由源代码生成的,并且该编译过程是一种常规劳动,并不需要天才的火花才能完成。上述观点类似于对凉水进行管制,但是却不管制热水。如果热水可以不受管制地任意获得,那么将热水放置一阵就能得到凉水,对凉水进行管制又有什么意义呢?这是该观点难以自圆其说之处:只管制目标代码却不管制源代码,那么将源代码进行编译就可以得到目标代码并生成软件产品,如何能进行有效管制?
实际上,从 EAR 的具体条文来看,其并未对源代码和目标代码进行区分,是否进行管制的关键仍然在于代码是否可公开获取(publicly available)。因此,开源软件的源代码和二进制目标代码是一视同仁的,一般都不受EAR的管制。但在使用目标代码时,要注意判断目标代码是否有相应的可公开获取的源代码,如果源代码没有开源,那么目标代码不能被认为满足 EAR 所规定的“可公开获取”,因此就会受到管制。