加密战争:司法交锋与行业变革
1. 加密政策变革与 Karn 案
1999 年 9 月 16 日,在 Karn 案进入法庭之前,美国政府宣布了加密出口法规的变更。新的加密法规于 2000 年 1 月 14 日开始实施,这些重大变更比草案建议的更加放宽了控制。特别是,增加了无需政府任何形式审查即可无限制出口开源代码的规定,不过仍需进行通知。此时,《应用密码学》软盘可以出口了。Karn 让他的案件因无实际意义而被驳回,他表示:“虽然这确实不如在法庭上真正获胜那么令人满意,但实际上我得到了我想要的一切。”他还反思道:“我认为与六年前半我开始寻求改变时相比,情况已经好多了。”
2. Peter Junger 教授的背景与动机
Peter Junger 自 20 世纪 70 年代初以来一直是俄亥俄州凯斯西储大学的法学教授。他 1933 年出生于怀俄明州,1958 年毕业于哈佛法学院。毕业后,他在纽约从事房地产法工作,直到 1970 年开始教学。他的同事评价他是一个“贪婪且涉猎广泛的读者”,总是有有趣的事情可说。他的著作涵盖从人权到佛教等多个主题,后来还成为了克利夫兰佛教寺庙的主席。
1986 年,Junger 首次教授“计算机与法律”课程,课程大纲涵盖软件、算法、专利、版权法和政府密码学法规。他认为律师有法律和道德义务保护客户的机密,使用电子邮件或其他计算机技术与客户沟通或存储客户信息的律师,在某些情况下在道德上,甚至可能在法律上,需要使用密码学来维护信息的保密性。
3. Junger 遭遇的加密法规困境
1993 年,Junger 用 8086 汇编语言编写了自己的“简单”加密程序,用于向学生演示密码学的工作原理和算法的本质。但他意识到,由于班上经常有外国学生,教授或发布他的加密程序可能会受到国际武器贸易条例(ITAR)的限制。
同年 5 月 7 日,Junger 联系了商务部出口管理局,与 Dale Jensen 交谈。Jensen 告知他需要向国务院申请,以确定商务部还是国务院对他的算法“可出口性”有管辖权,这一决定可能需要两个月时间。Jensen 还说:“你现在进入了官僚主义的世界,而不是常识的世界。”
Junger 随后致电国务院的国防贸易控制办公室(ODTC),与 Gary Oncale 少校通话。Oncale 无法或不愿透露确定管辖权的标准,称每个决定都是“逐案”做出的,没有既定标准。他给了 Junger 一个国家安全局(NSA)的电话号码,但不能透露接听者的姓名。一位未透露身份的 NSA 女性告诉 Junger,她认为在课堂上讨论该程序不会有问题,但将程序发布到互联网上是一个“灰色地带”,可能会有问题。她还表示不能回答假设性问题,并给了他一个通用信息电话号码以供进一步咨询。
1995 年,Junger 再次试图了解如果他在 1996 年 8 月的课程中教授加密程序,该程序是否会受到出口管制。此前,他不得不将非美国/加拿大学生排除在讲堂之外。他还想教授有关 DES、Triple - DES、RSA 和 PGP 的信息。他联系了借调到 ODTC 的 NSA 员工 Karen Hopkinson,但她没有提供该程序是否可豁免 ITAR 的进一步信息。不久后,联邦预算危机导致 ODTC 关闭。此时,Junger 的课程即将开始,他想发行一本配套书籍,为学生在线发布相关软件,并向国内外学生教授加密内容,于是他决定采取新的方法。
4. Junger 提起诉讼及各方观点
1996 年 8 月,Junger 聘请了三位律师 Raymond Vasvari、Kevin Francis O’Neill 和 Gino Scarselli,并将案件提交法庭,寻求一项禁令,允许他“在未事先获得政府许可或批准的情况下,向外国学生和其他外国人教授、发布和披露未分类的加密信息”。
在新闻发布会上,Scarselli 认为:“本案涉及的材料在任何大学图书馆都能找到,但法规对即使是最基本的软件也没有例外,而且我们讨论的不是机密信息。”Vasvari 评论道:“这些法规允许政府规定教授可以和不可以教授的内容,尽管所涉及的材料对国家安全没有威胁。”
Junger 的律师认为,受到质疑的法规是违宪的,因为它们构成了一个明显的过度宽泛和模糊的事先限制系统,侵犯了学术自由、政治言论和结社自由的权利。而且,没有任何证据表明国会授权对美国境内或互联网上自由、非军事的未分类技术和科学信息披露实行许可制度。
电子前沿基金会(EFF)的 John Gilmore 作为技术顾问为 Junger 的法律团队提供帮助。一笔 5000 美元的匿名捐款帮助资助了此案,Junger 和其他捐赠者又增加了捐款,使资金达到约 7000 美元。Junger 的案件是继 Phil Karn 和 Daniel Bernstein 诉讼之后,针对出口法规发起的第三起案件。Karn 和 Bernstein 的律师提供了“大量的帮助和支持”。Bernstein 案和 Junger 案的一个共同特点是都遭到了 Tony Coppolino 的反对,Scarselli 称他是“司法部最好的审判律师之一”。
Junger 的投诉指出,ODTC 决定没有司法审查条款,构成了“出版前注册和许可制度,因此是对言论自由的事先限制,违反了第一修正案”。他的律师认为,第一修正案允许 Junger 教授决定他想教什么、如何教以及教给谁,也保护教授和学生接收和交换信息的权利,因此保护 Junger 教授在无需获得许可的情况下与外国教授、研究人员和学生发布和交换加密信息的权利。
此外,律师还指出 ITAR 过于宽泛和模糊,因为其“书面内容和被告的解释方式令人困惑,原告无法确定哪些加密信息是豁免的”,而且除了大众市场加密软件的出口指南外,没有公开的标准或准则可供他或公众参考,以确定被告批准或拒绝加密信息出口许可的决定依据。
Junger 的团队还提出了第三个论点,即 ITAR 限制了 Junger 的学术自由和政治言论。他们要求法官宣布 ITAR 违反第一和第五修正案(权力分立)而违宪,并请求发出初步和永久禁令,以阻止 ITAR 对 Junger 的执行。他们还提到了 1978 年 OLC 的 John Harmon 撰写的备忘录,其中指出“显然需要国会进一步授权,才能将政府控制扩展到国内和国外对公共加密信息的披露”。同时,他们强调了 OLC 在 1981 年和 1984 年发布的建议,这些建议认为 ITAR 在某些应用中可能过于宽泛,例如应用于与访问美国的外国人讨论理论思想的讲师时。
提交投诉后不久,加利福尼亚州的 Judge Patel 在 Daniel Bernstein 案中裁定源代码构成受第一修正案保护的言论,这增强了 Junger 案的力度。Junger 的律师修改了投诉,请求发出永久禁令,以消除任何人在通过言语、出版或任何其他方式或媒介向他人披露任何未分类的加密信息之前“获得政府许可或批准”的需要。
在新闻发布会上,Junger 借鉴了另一个近期的数字案例来支持加密:“计算机程序和色情内容一样,都是由人类编写和发布的。最高法院最近在 Reno v. ACLU 案中裁定,第一修正案的全面保护适用于网络空间中的色情内容。我很难相信程序员获得的宪法保护不如色情作者。”不久后,Junger 表示:“我很清楚,政府不仅试图限制国外,也试图限制美国国内关于加密软件信息的交流,因为他们不想让我们真正能够使用加密技术来保护我们思想和通信的隐私。这就好像政府要求人们在解释如何制作或使用信封之前获得许可,尽管它并不禁止使用信封本身。毕竟,加密软件只是制作电子信封的一种方式。”
1996 年末,Judge Donald Nugent 代表 Junger 和他的学生发布了初步禁令,他指出:“Junger 教授或他的学生披露加密信息几乎不可能危及美国的国家安全。”Nugent 裁定 ITAR 加密出口法规“构成了一个出版前注册和许可制度,且没有司法审查规定,因此是违反第一修正案的违宪事先限制”。他还补充说,这些法规“过于宽泛和模糊……在适用于原告的行为时,违反了美国宪法的第一和第五修正案”。Nugent 认为,美国境内外国学生和教授接收信息的第一修正案权利也受到了侵犯,ITAR 还侵犯了第一修正案下的结社自由。
Nugent 还指出:“政府没有令人信服的利益来监管所有加密信息,包括私人开发的未分类信息。”他直接针对《武器出口控制法》(AECA)指出,该法“没有授权对美国境内未分类加密信息的披露进行注册或许可,包括在互联网上披露未分类加密信息”。他还表示:“被告要求在美国境内披露加密软件和/或加密技术数据之前进行注册和获得许可,这是在控制美国境内人员之间加密信息的交换,并限制互联网上加密信息的传播。因此,被告实际上采取了一项未经国会授权就限制国内未分类加密信息传播的政策,违反了宪法的权力分立原则。”
1996 年 11 月 15 日,克林顿发布行政命令 13026,将非军事加密的监管从 ITAR 转移到商务部的《出口管理条例》(EAR)。
5. 后续申请与各方观点对比
1997 年 6 月 12 日,Scarselli 代表 Junger 向商务部提交了三份申请,请求对总共 13 个加密程序和其他项目进行商品分类。具体情况如下表所示:
| 申请序号 | 申请内容 | 商务部回应 |
| ---- | ---- | ---- |
| 第一份 | 对 PGP、RSA 的 Perl 实现、RC4 的 C 实现以及 Junger 编写的两个算法(C 语言的 Fiddle 和 8086 汇编语言的 Twiddle)进行分类 | 除 Twiddle 外,其他都需要出口许可证 |
| 第二份 | 对 Junger 的《计算机与法律》一书第一章(电子形式)进行分类,包括创建 Twiddle 可执行版本的说明和 Paul Leyland 的 ANSI C 加密程序 | “非软件”元素未被 EAR 分类,Twiddle 可出口,但软件组件(如 RSA Perl 代码)受出口控制,该章节部分无法发布 |
| 第三份 | 询问五个加密程序(XOR [单字节密钥]、XOR [一次性密码本]、ROT13、RC2 和 RC4)是否可出口 | 商务部无法对算法进行分类,只能对特定软件实现进行分类 |
此外,Scarselli 还询问了在海外发布加密软件链接是否被视为出口,商务部确认这种行为不会违反 EAR。
1997 年 10 月,Junger 和 Scarselli 发布新闻稿,Scarselli 写道:“今年最高法院裁定互联网应享有第一修正案的全面保护,因此仅限制加密软件在互联网和其他电子形式上的发布并不能帮助政府。”他还补充说:“这不是一个涉及复杂计算机科学问题的复杂案件。一旦你认识到计算机程序的编写和发布与其他文本(如数学证明和乐谱)一样,就会清楚这种要求准出版商在发布前申请并获得许可的监管方案是典型的事先限制,是违宪的。”
Junger 提请注意他的诉讼的更广泛影响:“如果政府的功能性论点得到支持,这意味着政府可以压制任何可能以政府不喜欢的方式使用的软件的编写和发布,而且不仅仅是软件。任何能带来愉悦、指导或说服作用的写作都有功能性。政府的功能性论点可能会证明在发布法律表格书、政治宣传册或布道书之前需要获得许可,而正是这种审查制度促使了第一修正案的通过。”
Junger 的投诉请求司法部门宣布 EAR 违宪,并发出永久禁令,防止政府起诉那些出口加密技术的人。
Hunger 和 Coppolino 反思了 Junger 投诉范围的扩大。最初,Junger 只是想教他的课,现在他正在全面挑战出口法规,试图出口更多算法。政府认为,焦点应该放在 Junger 和他的活动上,而不是 EAR 的合宪性:“归根结底,这是一个简单的案件,但原告对事实和法律的陈述使其变得非常复杂。法院一直尊重总统关于哪些商品应受出口控制以保护国家的国家安全和外交政策利益的判断。尽管此案以‘言论自由’的名义提出,但本质上没有不同。强大的加密产品(包括软件)无疑会损害政府在国外的利益,通过出口许可要求来限制这种损害的努力并不违反第一修正案。”他们还重申:“EAR 并不是对包括软件在内的加密产品出口的完全禁止,而是建立了一个许可程序,以便政府能够确定产品的去向、用途以及特定出口是否构成国家安全或外交政策问题。”
政府认为这些法规具有“保护政府在国外利益的合法目的,并且不会影响密码学领域日常发生的广泛讨论”。政府坚持认为密码学更多是功能性而非表达性的:“加密源代码不仅仅是与技术功能‘相关’的技术信息或‘诀窍’,也不是解释密码学理论或‘描述’软件功能的内容。它本身是计算机加密数据所必需的项目。没有底层的源代码软件,计算机就无法进行加密。对于加密软件来说,无论它对某些人有什么信息价值,它不仅是信息性的,而且也是直接功能性的。”
Hunger 和 Coppolino 反对 Junger 使用“发布”一词:“当涉及发布软件程序时,认为互联网只是一种‘发布’思想的方式是非常误导的。原告一直使用‘发布’或‘出版’这个词,但实际上这里涉及的是‘出口’。原告在美国‘发布’软件的权利没有受到限制,同样,他使用互联网发布文章或课程材料、与学生或同事进行学术交流的权利也没有受到限制。这里的狭隘问题涉及实际加密软件的全球传播。原告必须承认,互联网是一种国际通信媒介,通过它发布的项目在全球都可以获取。在互联网上发布软件不仅仅是为了让某人出于信息目的‘阅读’它,实际上,这可能是软件在网上发布最不常见的原因。”
面对政府的观点,Scarselli 在 Junger 的回应中言辞激烈地写道:“被告完全颠倒了事实。享受第一修正案自由是美国人的权利,而不是政府随意给予的福利。”
graph LR
A[Junger 编写加密程序] --> B[咨询法规限制]
B --> C[联系商务部和国务院]
C --> D[寻求司法帮助]
D --> E[法官初步裁决]
E --> F[法规转移监管]
F --> G[提交分类申请]
G --> H[各方观点交锋]
H --> I[法院最终判决]
这个流程图展示了 Junger 从编写加密程序开始,到最终法院判决的整个过程,包括他在这个过程中遇到的各种情况和采取的行动。在后续的博客中,我们将继续探讨法院的最终判决以及这一系列事件对加密行业和言论自由的影响。
加密战争:司法交锋与行业变革
6. 法院判决与各方反应
1998 年 7 月 2 日,Judge James Gwin 发表意见并驳回了此案。Gwin 认为:“法院认为出口法规是符合宪法的,因为加密源代码本质上是功能性的,出口法规并非针对源代码的表达元素,且不涉及软件的学术讨论或印刷形式的软件。”
法院接受了政府的观点,即政府试图限制加密软件的分发,而非加密思想。Gwin 指出,另外两起重大加密出口案件(Bernstein 和 Karn)得出了相互矛盾的判决。他认为 Judge Patel 在 Bernstein 案中裁定任何用语言编写的内容都受第一修正案保护的观点是“不合理的”,他表示:“仅仅因为我们用语言书写并不意味着它就是受保护的‘言论’。决定第一修正案是否保护某事物的是它是否表达了思想。”
Gwin 还认为,Bernstein 案的法院误解了源代码功能性的重要性。他指出:“源代码是‘纯粹功能性的’,这与 Bernstein 案法院所举的指令、手册和食谱的例子不同。与指令、手册或食谱不同,源代码实际上执行它所描述的功能。食谱为厨师提供指令,而源代码就像电话中的嵌入式电路一样,是实际执行加密功能的设备。”
Gwin 表示,虽然源代码“偶尔可能具有交流元素”,但这“不一定能使其获得第一修正案的保护”。他还补充说,源代码的设计目的是功能性的,它被创建并(如果允许)出口是为了执行特定任务,而不是为了交流思想。此外,他驳回了关于法规模糊性的质疑,称法规“相当详细”。
这一判决对数字权利活动家来说是一个重大挫折,此前他们在 Bernstein 案中得到了 Judge Patel 的支持。电子前沿基金会(EFF)的 Shari Steele 评论道:“俄亥俄州(Gwin)法院显然不理解软件的交流性质。”Bernstein 的律师 Cindy Cohn 严厉批评了 Gwin 的判决,她质疑:“支持他结论的证据在哪里?政府没有提交任何关于源代码‘出口’的实证研究,从中我们无法得出源代码‘表达性’的频率。”Cohn 还挑战道:“据我所知,没有任何权威认为我们根据使用某种语言进行交流的人数来决定这种交流是否是言论。”
Cohn 进一步指出:“纸上的软件与电子形式的软件一样具有‘功能性’,只是需要多一个简单的步骤才能使其发挥作用。在 Bernstein 案中,那一页源代码 Snuffle,从打字或扫描并纠正错误到编译,最多只需十分钟。我们的国家安全就依赖于这样的差异吗?”她还强调了 Gwin 判决的更广泛影响:“Gwin 法官不顾证据,认定源代码不常被阅读,因此不应获得第一修正案的保护。结果是,我们有了一个新的受保护程度较低的表达类别,即具有‘功能性’的言论,但‘功能性’这个术语没有明确或可理解的定义。在涉及第一修正案时,所有计算机科学家及其既定的交流方式显然都不算数。如果这一判决成为适用于我们所有人的法律,其更大的影响将是可怕的。从极端角度看,这一判决可能成为一个例外,吞噬了 Reno v. ACLU 案(宪法保护适用于互联网)的规则。如果某事物能‘发挥作用’就意味着它不是言论,那么每个用 HTML 编写的网页都可能被认为不受保护,因为从某种程度上说,每个网页都是一个‘运行中的’计算机程序。当然,任何包含 Java 小程序的网页或其他电子出版物都是一个‘运行中的’程序。”
EFF 主席 Barry Steinhardt 同意 Cohn 的分析,他说:“如果(Gwin 判决)成为全国性的法律,我们在数字时代的广泛表达将得不到第一修正案的保护。”Junger 教授回应说,尽管资金不足,但这个案件“非常重要,我们必须想办法筹集资源提起上诉”。然而,前国家安全局律师 Stewart Baker 认为上级法院不太可能推翻 Gwin 的判决,他说:“这是一个保守的法院,他们倾向于在国家安全问题上尊重政府的意见。法院不愿意在会削弱政府权力的领域发表广泛意见,这需要法官有更多质疑政府的热情,而我认为大多数法官没有这种热情。”
在密码朋克邮件列表上,Ernest Hua 写道:“Gwin 为什么不明白,一旦有人成功声称某一特定类别的源代码不是言论,仅仅因为编译器可以自动将其转换为执行功能的可执行代码,那么任何类型的言论从根本上都容易被归类为功能性的,只要编译器可以将其转换为实际的机器代码。”Hua 还补充说:“Gwin 说加密是一类更具功能性的特殊软件,至少可以说这是一种误解。我不认为任何特定类别的软件必然比其他类别的软件更具或更不具功能性。从功能角度看,所有软件在编译和执行时都是功能性的,仅此而已。”
不过,也有人同意 Judge Gwin 的观点。Ed Gerck 写道:“你上面的 4 条指令源代码目前不是一个设备,它不能执行任何功能。它只有语法,没有‘实现方法’。但是,如果有一台机器可以提供适当的语义(即实际执行 1 - 4 项功能),那么你的源代码就会成为一个设备……在这一点上,Gwin 是正确的。如果源代码能够实际执行功能,那么它就是一个设备。无论需要什么平台,就像电动剃须刀无论当地是否有合适的电源插座都是一个设备一样。”
7. 政府让步与行业反应
尽管司法系统中存在持续的冲突,但政府在 1998 年对全球金融行业做出了出口让步。商务部长 William M. Daley 宣布,经过一次性审查后,任何位长的加密产品都可以无许可证出口到 45 个国家的符合条件的金融机构。Daley 表示:“这些新指南将影响全球近 70%的金融机构的加密出口,包括所有 100 家最大的银行。”
金融行业对取消限制表示欢迎,美国银行家协会的说客 Kawika Daguio 评论道:“我们听到的消息听起来很棒。多年来我们一直认为现有的监管结构能保证我们是负责任的参与者。”金融行业率先获得出口限制的取消并不奇怪,该行业风险高,支撑着美国的全球商业优势,拥有强大且成熟的说客,并且如 Daguio 所强调的,受到严格监管。
然而,更广泛的社区并不认同银行业的热情。游说组织美国计算机隐私协会执行董事 Ed Gillespie 表示:“采取零敲碎打的方式(放宽加密限制)是错误的方向,我们需要全面取消限制。”
8. 上诉情况与最终影响
1998 年 8 月,Junger 的律师提起上诉,他们认为法院“采用了有严重缺陷的分析方法,得出加密源代码的功能性大于表达性的结论,并以此剥夺了源代码(尽管地方法院承认其为一种表达形式)应享有的第一修正案的充分保护”。
1999 年 12 月 17 日,第六巡回上诉法院的一个由三名法官组成的小组进行了口头辩论。Scarselli 表示:“在口头辩论中,很明显上诉法院比地方法院更接受我们的第一修正案论点。”尽管首席法官 Boyce F. Martin 称源代码对他来说是“乱码”。
这一系列围绕加密法规的法律案件和政府政策调整,反映了加密技术发展过程中,行业需求、言论自由与国家安全、政府监管之间的复杂博弈。从 Junger 教授的案件可以看出,加密源代码是否受第一修正案保护的争议核心在于其功能性和表达性的界定。不同法官的不同观点也体现了司法系统在适应新技术带来的法律挑战时的困难。政府在金融行业的让步则显示出在平衡各方利益时的权衡。未来,随着加密技术的不断发展和应用场景的日益广泛,类似的法律和政策争议可能还会继续出现,如何在保障国家安全和促进技术创新、保护公民权利之间找到平衡,将是一个持续的挑战。
以下是该事件的时间线梳理:
|时间|事件|
| ---- | ---- |
|1993 年|Junger 编写加密程序,咨询法规限制|
|1995 年|Junger 再次询问加密程序出口管制情况|
|1996 年 8 月|Junger 提起诉讼|
|1996 年 11 月 15 日|克林顿发布行政命令 13026,将非军事加密监管从 ITAR 转移到 EAR|
|1996 年末|Judge Donald Nugent 发布初步禁令|
|1997 年 6 月 12 日|Scarselli 代表 Junger 向商务部提交分类申请|
|1998 年 7 月 2 日|Judge James Gwin 驳回案件|
|1998 年 8 月|Junger 的律师提起上诉|
|1998 年|政府对金融行业做出出口让步|
|1999 年 12 月 17 日|第六巡回上诉法院进行口头辩论|
graph LR
A[1993 年 Junger 编写程序咨询法规] --> B[1995 年再次询问管制情况]
B --> C[1996 年 8 月提起诉讼]
C --> D[1996 年 11 月法规转移监管]
D --> E[1996 年末发布初步禁令]
E --> F[1997 年 6 月提交分类申请]
F --> G[1998 年 7 月案件被驳回]
G --> H[1998 年 8 月提起上诉]
G --> I[1998 年政府对金融行业让步]
H --> J[1999 年 12 月上诉法院口头辩论]
这个流程图清晰展示了整个事件从开始到上诉阶段的时间顺序和关键节点,有助于我们更直观地理解这一复杂过程的发展脉络。
超级会员免费看

被折叠的 条评论
为什么被折叠?



