转自:Linux 基金会

近日 Linux 基金会发了一份白皮书,详细介绍了开源社区该如何了解并遵循与美国出口管制要求及开源加密相关的一般性原则。

以下是白皮书全文:

开源发展的最大优势之一是它实现了跨边界的协作。开源协作透明、公开且能跨越组织边界,促使世界各地的开发人员、学者和工作人员一同成就比个人力量所能造就的更为伟大的开源技术。

开源协作跨越地域界限:聚集世界各国人员和组织,带着他们独特的观点和优势来一同开放协作,并向所有人分享成果。

开源发展是一项全球性活动,必然涉及软件的跨国界分享。一些国家的出口管制法规可能要求开源项目采取额外的措施,来确保遵守当地法律规定的义务。这篇指南将简要地描述美国《出口管制条例》,并讨论该条例如何应用于开源社区发展全球协作。

本文中,“开源”一般指的是任何源码可公开获取的技术 或软件。作为一种创造模式,开源已不仅仅局限于软件技术的 开发。如今,开源还包括了其他广泛的开放技术领域,如硬件设 计、微型处理器指令集架构、规范、数据模型、协议、标准以及 公众以公开模式协作创造的其他技术。

美国的《出口管制条例》

《出口管理条例》(Export Administration Regulations,以下简称“EAR”)是美国联邦政府限制出口的主要条例,由美国商务部(US Department of Commerce)下的产业与安全局 (Bureau of Industry and Security,以下简称“BIS”)发布并定期修订。1 EAR适用于所有“受制于EAR的物品,并可能管制 该等物品的出口、再出口或(境内)转让。

EAR下“出口”的定义较为宽泛。出口不仅包括从美国境内向境 外输送实物产品,还包括其他行为,例如向非美国公民或非美 国合法永久居民传送技术,2 以及向美国境外人员提供用于电 子传输的软件。

从表面看来,EAR似乎为开源社区敲响了警钟,但是好消息是, 公开发布给全世界享用的开源技术是不受制于EAR的。因此, 开源至今仍然是一个最为便利的全球协作的模式。

在接下来的内容中,我们将解析为 何美国的出口管制法规一 般不会对开源模式造成影响,并通过举例的方式说明和讨论为 何开源软件的出口在一般情况下不受制于EAR。接着 ,我们 将探讨在 一定情况下的两个特定事项的范围:第一,包含加密功能的开源软件;第二,实施由神经网络驱动的地理空间分析 训练(neural network-driven geospatial analysis training) 功能的开源软件。最后,我们会提出一些最佳实践建议,供开 源社区在项目实施过程中采纳。

将 EAR 应用于开源软件

EAR界定了某些可能受到出口限制的事项(包括软件和技术)的范围。“ECCNs”(Export Control Classification Numbers)是EAR法下用于物品分类(包括软件和技术)的编 码。有些物品是受制于EAR的, 这代表它们在EAR的管控范 围内,并只能在符合以下条件的前提下出口:无需许可证 就 可出口,适用许可证 例外的情况或者出口方已经获得了出口许可证。

这正是开源技术的优势所在,因为EAR明确豁免了大多数以 开源形式呈现的软件和技术。有一些事项被明确列为“不受制 于”EAR,意味着它们“被置于EAR法规管辖外并不受这些法 规的 约束 。”具体来说,EAR第734.3(b)条规定“下列事项 不受制于EAR:”,其后列明,“如第734.7 条所述的,(i)已经 发布的信息及‘软件’”。

这里指向第734.7条是非常重要的 , 因为该部分规定“已发布”的事项不受到EAR的管辖。具体来 说,EAR第734.7部分规定,

. . .当可被公众获取且无进一步传播限制时,未被归类 为密级事项的“技术”或“软件”属于“ 已发布”,因此不 属于受 EAR 管辖的“技术”或“软件” . .

来自Linux基金会以及与我们合作的项目社区的开源软件均满足 EAR 第734.7条中“已发布”的要求。

以下典型事项(未详尽列举)下不受到 EAR 限制,因为“开源”“ 已发布”:

• 已公开发布的开源软件不受制于EAR

• 已公开发布的开源规格不受制于EAR

• 已公开发布的,说明硬件设计的开源文档不受制于EAR

• 已公开发布的开源软件二进制不受制于EAR

如此可见,“已发布”是关键要素。基于EAR之目的,如果开源技 术不受进一步传播的限制且可被公开获取,那么它将被视为“ 已发布”了的开源事项,并将因此“不受制于”EAR。将“已发布” 的软件和技术纳入受制于EAR限制的范围内将是一项重大的 政策性转变,迄今为止我们尚未知悉任何关于上述政策性转变 的讨论。

可公开获取的软件和技术不受制于出口管制并非美国独有的 政策,欧盟也有相关政策。

另外,与软件、技术和其他在EAR范围内的事项无关的活动也 不受EAR限制,其中包括非技术性协作:有关商务事项的会 议、活动策划、市场营销等类似的其他活动均不受EAR约束, 因为上述事宜超出了EAR管辖范围。

若项目涉及加密技术,则开源社区可能需要多采取其他措施以 满足EAR法下的“已发布”的要求。

加密

EAR下,软件开发者的一个关注焦点便是加密技术。EAR 管理 特定加密软件和技术的出口。“加密软件”的定义非常广泛,并 可能包括仅激活或创设其他软硬件产品的加密功能的软件。对于具备标准加密功能的软件,包括在软件设计文档中呈现的 加密硬件,最为常见的ECCN类别是5D002 。如加密软件在 EAR的管辖范围内,那么为了将其出口到除了加拿大以外的国 家,出口方必须首先确认EAR例外条款在此情况下适用,或申 请并从BIS获取相应的出口许可证。

然而,在考虑EAR例外条款是否适用或出口许可证是否必要 前,首先要考虑的问题是 :该加密软件是否在EAR 的管辖范 围内。属于 ECCN 5D002 的加密源代码如符合以下两个条件,则不在 EAR 的管辖范围内:(1)该源代码是“可公开获取”的,以及 (2)已向 EAR 第742.(b)条所载的电子邮箱地址发送了电子邮件以示通知。

Linux爱好者补充:上面的第 2 点的意思是:要向BIS(产业与安全局)或NSA(国家安全局)发邮件以示通知。邮件内容需要包括可公开获取的源代码的URL地址(或源代码本身)。

上述衡量标准的第一部分要求,即“可公开获取”,指的是在 EAR法下“已发布”的定义,这包括通过在公开的网页上进行发 表(即公开传播)。只要完全公开的开源软件项目达到该标 准,则应当视为通过了衡量标准的第一部分要求:如果项目的 源代码可在互联网上公开获取,则应被视为“可公开获取”。

为满足上述衡量标准的第二部分要求,还需要向两个指定的邮 箱地址发送邮件(一个是BIS的邮箱地址,另外一个是国家安 全局(National Security Agency,简称“NSA”)的邮箱地址) 。邮件内容需要包括可公开获取的源代码的URL地址(或源代 码本身)。如URL或源代码发生任何变更,则需要再次以邮件 形式通知上述邮箱地址。

最后,在通过了上述两项衡量标准后,相应的物件代码也将不 受EAR管辖。

Linux基金会的所有项目源代码,包括加密软件,均可公开获取,我们也已经提供了 上文所要求的电子邮件通知。并在我们的官网上公开了上述电子邮件通知的 内容。所以,L inux 基金会的项目源代码及对应的目标代码均不受 EAR关于加密 的限制。

请注意,上述情况只适用于开源项目本身。修改项目代码或其 衍生产品的下游再分销商在源码并未公开时,仍然需要评估其 是否符合EAR的规定( 如同需评估其出口的其他软件一样)。

神经网络驱动的地理空间分析训练 

BIS在2020年1月6日宣布了一项新的EAR规定,并自宣布之日 起立即生效。该规定设立了EAR针对一种专门为了训练深度卷 识神经网络(Deep Convolutional Neural Network)自动分 析地理空间图像和点云(point cloud)能力的特殊地理空间图 像软件的管控权。该规定阐明“点云”是指由坐标系统界定的数 据点集合,又称数码表面模型。虽然规定自发布之日立即生 效,但它仍有待 公开意见征求并可能继续扩充或被修订。但无 论如何,如果软件是可公开获取的(如开源软件),那么如上文 所述,它将不受 EAR的管辖。

一些对新规定的公开解读可能在暗示该规定整体上对地理空 间图像软件,或甚至人工智能/机器学习软件施加了广泛的限 制。但事实并非如此。

这条规定的适用范围实际上显得很狭窄。它只适用于具体包括 上述所有方面的事项。此外, 任何一项软件同时还必须包括 以下所有功能,才受 这条新EAR规定的管辖:

1. 提供图形用户界面,使用户能够从地理空间图像和点云中 识别物体(例如,车辆、房屋等),以便提取物体的阳性和 阴性样本(positive and negative samples);

2. 通过对阳性样本进行尺度、颜色和旋转归一化来减少像素 变化范围;

3. 训练深度卷积神经网络从阳性样本和阴性样本中探测到 物体;和

4. 利用训练好的深度卷积神经网络,将阳性样本的旋转模式 与地理空间图像中物体的旋转模式进行匹配进而识别地 理空间图像中的物体。

如软件不具备上述列出的所有方面和功能,那么该软件则似乎 不受 该条新规定(目前版本)的管辖。上述要求更像 是针对由 商业解决方案提供商提供的解决方案,而不是 针对开源项目。特别是,训练要求不仅需要一个软件项目,并且还需要阳性和 阴性的训练数据集,这种对数据集的具体要求可能只适用实施 特定的神经网络。

现有的一些可公开获取的开源项目可能具备这些功能。然而, 即使现在要创建一个新的项目,只要该项目是一个可公开获取 的开源项目,那么它就不会受 EAR的管辖。

开源软件社区的最佳实践

以下是一些我们了解到或者尝试过的可能对所有开源社区有所 助益的一些实践经验。

公开化和公众化 

我们经常用“公开”这个词来形容许多事情:开源许可、公开和 透明的讨论、公开的社区、公共智库里储存的可公开获取的源 代码。对于开源社区来说,“公开”似乎是显而易见的做法,但我 们对社区也提供一些建议。

首先,社区需要努力 维持他们技术交流的开放性与公开性。私 人交流在社区中经常出现 ,对此我们建议将社区决策和结果 向公众公开。信息的公开透明对我们项目来说很重要,因为技 术或技术信息的私下交换可能不符合EAR中“可公开获取”的 标准。

安全系统缺陷披露的过程中涉及到的信息交换会引起问题。对 此,我们建议最好可在缺陷修复后公开项目交流内容,而不仅 限于 向保密披露清单里的各方提供。

交流技术思想和知识,进行技术辩论是开源社区的标志,其中 最前沿的是最佳的技术解决方案。在公开场合进行这些交流有 时可能会让人难以接受,但是我们那些严格遵守该原则的社区 往往也是在建立透明度和可信赖性方面最为成功的社区。尽管 可能会有分歧,但每个人都知道这个讨论是公开和透明的。当 然公开和开放协作 有很多益处,而不仅限于其能 够符合EAR 的要求。

提供加密的通知

如果 你的开源软件项目实施或使用了ECCN5002项下的加密 功能,那么根据EAR的要求,你需要向BIS和NSA提供加密通 知。EAR第742.15(b)(2) 条 列举了以下这些要求:

• 发送电邮至crypt@bis.doc.gov及enc@nsa.gov。

• 邮件应该包括含有可公开获取加密源代码的网站地址,或 源代码本身。一般来说,我们预计开源项目会选择第一种 方式。

• 如果 你提供的是网站地址,那么每次更换网站地址时, 你都必须通过电子邮件通知他们,但是 你不需要通知他们 有关源代码本身的更新或者变更。

• 如果 你提供的是源代码副本,那么每当加密功能 存在更 新或者变更后, 你都必须把最新的源代码提供给他们。

正如Linux基金会的通知所展现, 15 以下我们建议的其他一些 最佳实践方案:

为了加强透明度和展现合规性,

将传给BIS和NSA的通知 公开化。这也有助于解决下游用户对社区是否发送了通知 的疑惑。通过公开通知的方式, 你可以避免这些困扰。

• 附加联系方式和负责项目的法人实体的名称(如适用)。

• 设计一个保留中期至长期证据的系统 ,以证明发送给BIS 和NSA的通知电邮实际上已经送达 。最好不要仅依靠“ 已发送”邮箱记录,以避免将来发生问题, 和规避该个人 无法再访问该“已发送”邮箱 的风险。

如果 你不确定 你的开源软件是否使用加密功能,或将来是否 可能涉及这种功能,那么为确保万无一失, 你也可以考虑 向 相关部门发送此类通知 。

确保相应的加密源代码是能够公开获取的 

如果 你以目标代码形式公开分享加密软件,那么 你应确保该 软件的源代码也是可公开获取的 。

项目的维护者,也是最熟悉项目代码的人群,应该审查并确认 加密功能是否以二进制或目标代码形式分发的。如果是,那么 应该先考虑上述操作是否必要。在大多数情况下,以源代码形 式分发可能是最佳的方案 - 不仅基于出口合规的考虑,并且 此种方案有助于下游用户摈弃对“黑盒子”二进制的依赖,并且 可以轻松地从源代码处自主研发。

如果必须以二进制或目标代码形式分发加密软件,那么就必须 确定相应的源代码是可公开获取的。最容易的方式就是自主将该加密软件版本的源代码公开,作为项目本身的源代码。(事实上 , 取决于适用的开源许可内容,从遵守开源许可的 角度来说可能 必 须这样做,或者至少 有 所助益!)

除人工审核外,还有一些性能不等的扫描工具, 可以扫描源 代码并探测加密功能的应用。没有一种自动扫描工具能够完美 地检测出所有的应用,但这些工具可能有助于识别大型代码库 中的加密软件。

PDF:

https://www.linuxfoundation.org/wp-content/uploads/2020/07/UnderstandingOpenSourceTechnologyandUSExportControls_Whitepaper_070220.pdf

精彩推荐
一百期Java面试题汇总SpringBoot内容聚合IntelliJ IDEA内容聚合Mybatis内容聚合欢迎长按下图关注公众号后端技术精选

重磅!Linux基金会白皮书:开源软件技术不受美国出口管制相关推荐

  1. LVS(Linux Virtual Server,Linux虚拟服务器)开源软件创始人——章文嵩

    章文嵩是技术专家,也是LVS(Linux Virtual Server,Linux虚拟服务器)开源软件创始人,曾经是TelTel公司的首席科学家,ChinaCluster的共同创办人.他对自己的看法是 ...

  2. Linux专家警告开源软件日益吸引黑客

    Linux expert warns of open source's growing appeal to hackers Linux专家警告开源软件日益吸引黑客 <purple endurer ...

  3. 微软加入Linux基金会共建开源生态,并对谷歌加入.NET社区的举措表示欢迎

    纽约 - 2016年11月16日 - 在周三的年度性Connect();开发者大会上,微软公司公布了一系列产品与合作,以此为基础帮助开发者打造智能的跨平台应用和服务,进而强化微软在Azure云平台方面 ...

  4. Linux 基金会发布《软件物料清单和网络安全准备度现状》报告

     聚焦源代码安全,网罗国内外最新资讯! 编译:代码卫士 专栏·供应链安全 数字化时代,软件无处不在.软件如同社会中的"虚拟人",已经成为支撑社会正常运转的最基本元素之一,软件的安全 ...

  5. Linux基金会:开源就业的最新趋势和最需要的技能

    据Linux基金会最新发布的就业报告显示,尽管当前经济不景气和病毒肆虐,开源仍然是中小企业和大型企业的主要软件开发环境. Linux基金会执行董事Jim Zemlin说:"对我们所有人来说, ...

  6. 开源人才缺口持续扩大,Linux基金会揭秘开源就业真相

    在数字化转型的过程中,越来越多的企业意识到开源的重要性,因此寻找有经验的开源人才对于这些公司而言可谓是迫在眉睫,原本在疫情爆发前就已经存在的人才缺口持续扩大.除此之外,越来越多的开发者反映了自己在开源 ...

  7. Linux基金会亚太区开源领导力论坛完满结束 LFAPAC感谢中国社区的支持!

    由于疫情的关系,自 2020 年起,全球的经济.生活.工作环境等也有极大的改变和限制.不论是中国内地,港澳台地区,以至于其他的国家,大家也持续了几年的在线上工作和会议模式.我们非常兴奋,在疫情持续受控 ...

  8. Ubuntu Linux 操作系统-清华大学开源软件镜像站下载

    Ubuntu 是一个由全球化的专业开发团队建造的操作系统.它包含了所有您需要的应用程序:浏览器.Office 套件.多媒体程序.即时消息等.Ubuntu 是一个 Windows 和 Office 的开 ...

  9. Linux下通过开源软件fail2ban进行远程登录防护

    一.通过开源软件fail2ban实现防暴力破解: Fail2ban程序可以监视系统日志,匹配日志错误信息执行相应的屏蔽动作,可以通过发送e-mail通知系统管理员     fail2ban就是防暴力破 ...

最新文章

  1. java comparable接口作用_Java 中 Comparable 接口的意义和用法
  2. Weka 开发[1]-Instances类
  3. Spring 如何在一个事务中开启另一个事务?
  4. HTML(5)+CSS(3)--那些不知道但重要的知识!
  5. html5 填充下拉框,Html5添加实现Bootstrap下拉列表框鼠标滑过时打开的插件教程
  6. 网易云推出了一组程序猿の真实写照【文末有彩蛋】
  7. boost::hana::hash用法的测试程序
  8. scrapy爬虫框架windows下的安装问题
  9. python做股票分析_利用Python进行股票投资组合分析(调试)
  10. C++:求五位学生的总成绩以及平均成绩
  11. 磁共振立体定向仪行业调研报告 - 市场现状分析与发展前景预测(2021-2027年)
  12. 易被忽视的贝叶斯概率
  13. Windows server 2003网络服务之搭建服务器群集
  14. geopandas读取shp
  15. Scrapy爬取多层级网页内容的方式
  16. 卸载creative cloud
  17. RapidMiner简单入门教程——入门必看超详细
  18. ensp:静态路由配置和ospf动态路由配置
  19. gps定位器更换平台指令-GPS定位器接入平台指令
  20. 网页脚本输入这么简单

热门文章

  1. 笔记本正常联网,浏览器无法访问网页问题
  2. 如何编写软件架构文档
  3. [Swift]LeetCode61. 旋转链表 | Rotate List
  4. 投影幕布选购避坑指南!
  5. DWZ (JUI) 教程 修正 Tab 选项卡多次加载
  6. 邢台学院计算机应用技术专业,邢台学院有哪些专业和院系、什么专业比较好
  7. USART_FLAG_RXNE与USART_IT_RXNE区别
  8. Visio与Word中的字体对应关系
  9. 分析:全球千亿美元市值IT企业榜单及点评
  10. cytoscape3.2.0 java_【看图说话】Cytoscape的“傻瓜式”教程