写点什么

源代码审查能否成为国际惯例?

  • 2020-10-10
  • 本文字数:2401 字

    阅读完需:约 8 分钟

源代码审查能否成为国际惯例?

最近听说,TikTok 向澳大利亚政府表示,将允许澳政府官员审查其算法并测试源代码,这也在网上引起了热议。以此为契机,我想站在中国的立场上,谈谈开放源代码审查这件事的来龙去脉,从现状、风险和收益几个方面分析一下,看看它对我们到底是福还是祸。


我们先来看看现状。开放源代码给所在国政府审查这事儿,究竟有行业先例呢,还是无理要求呢?


事实上,早在 2003 年,全球软件业的巨无霸微软,就与中国信息安全测评中心签署了“政府安全计划”,中国也成为全球首批参与此计划的国家之一。2014 年 7 月,微软主动增强了“政府安全计划”,允许签约方访问在北京的“微软技术透明中心”并查看及测试微软产品和服务的源代码。而随着 Windows 10 政府版的落地,更是可以看出这种代码审查的正朝着良性互动的方向发展。在微软的示范作用下,IBM 也通过与世纪互联合作,在中国提供其 Bluemix 云计算平台,并开放其源代码审查。


在中国企业走出去的过程中,这样的代码审查也早有先例。在英国、澳大利亚等国,华为都已经建立了安全评估中心,提供 100%的源代码接受政府的审查,以应对部分持敌意者抛出的“军方背景论”。客观地说,这也是华为在欧洲等地区能够顺利发展壮大的重要原因之一。


在与中国无关的市场上,这样的事而也屡见不鲜。比如,思科、IBM 和 SAP 等欧美科技公司,正接受俄罗斯政府的要求,使其可以获得严格保密的产品源代码,以应对俄罗斯对其从事黑客活动的指控。而俄罗斯的卡巴斯基杀毒软件,也推出了一项全球透明度计划,从 2018 年第一季度开始,将软件源代码提交给更广泛的信息安全社区和其他利益相关者进行独立审查,以表明企业和任何间谍行为无关。


因此,从大背景来看,随着各国政府对信息安全和数据国境越来越重视,向政府开放代码审查,提供数据保护,已经成为不可避免的大趋势。


那么我们再来看看,TikTok 向澳洲政府开放源代码审查,有没有什么严重的风险呢?


首先,TikTok 虽然被称为“海外版抖音”,可是实际上,它们根本就是不同的两款应用。二者的用户和数据,体系也完全不相通,只是产品形态和界面有些相似罢了。根据 TikTok 全球首席安全官罗兰·克劳蒂尔(Roland Cloutier)的说法,TikTok 使用的源代码与中国国内的抖音源代码并不相同。因此,担心开放 TikTok 源码会对国内的抖音产品安全性带来威胁,有点杞人忧天了。


另外,值得特别提醒,这里所说的“开放源代码审查”,只是针对各国的相关政府部门,而非对商业公司或其他机构。在审查的方式上,是有资质的政府人员访问 TikTok 公司在美国洛杉矶的透明与问责中心,或通过虚拟参观的方式来审查算法并测试源代码,而并不能将源代码带走或修改。当然,如果澳洲政府能找个过目不忘的天才,把源代码一行不落地都背下来,回家再原样默写一遍,那算我没说。


其实,就算是真有人能默写出来,也只不过是一项行为艺术罢了。做过互联网的朋友,可能都或多或少有点概念:对这样的内容性产品来说,算法固然重要,但远远不如庞大的用户生态和丰富的数据更有价值。没有了数据,推荐算法毫无用户之地。以为学会源代码就想复制一个 TikTok,也就好比你带上了手套和护牙胶,就跳上拳击台准备和泰森一决雌雄一样可笑。


反而是微软向各国政府开放审查的 Windows 源代码,倒真是他的命根子。多少操作系统秘而不宣的武林秘籍,都可以在代码里一览无余。理论上讲,你只要把代码编译出来,手上就是活色生香刚出炉的 Windows,跟从微软哪里买到的正版,除了少个包装盒以外,没有任何差别。就算不是整体编译,找个高手瞧一瞧内核里的关键代码段,可能也能瞬间解决许多操作系统研发中过不去的坎儿。


于是,微软都还没担心,TikTok 用得着担心么?说句文言,这不是皇上不急太监急么?


所以依我的看法,及时向外国政府开放源代码审查,风险也相当有限,大可不必过于担心。不过,也许或有网友质问我,没有多大风险就要开放么?这不就认怂了么?这倒是问出了我想说的关键:从目前的博弈局面来看,TikTok 开放源代码审查,未必不是一件好事。


这话怎么说的呢?大家要认清这样的现实:在目前全世界的软件和互联网产业中,美国还是一骑绝尘的老大,大多数具有全球影响的软件和网络产品,都还是美国人的天下。虽然微软的 Windows、IBM 等少数企业向中国开放了源代码审查,可是还有很多大家耳熟能详的产品,比如 Office、iOS、Oracle 等等,并没有开放。也就是说,在这些软件和系统中,理论上说,还存在着恶意代码或者留有后门的可能性。


大家想想,中国有多少人在用 iPhone 手机?有多少台电脑上装有 Office?有多少银行的核心系统完全依赖 Oracle?而这些软件在背后做了些什么,我们都是一无所知的。所谓防人之心不可无,这样的现状,细想起来还是让人背后有一丝凉意的。


中国虽然有少数几个产品引起了美国人的注意,可是在这样的博弈局面下,其实还是光脚不怕穿鞋的。换句话说,如果中美之间能够达成这样的一种妥协:互相向对方政府开放源代码审查的权利,那么从信息安全的角度来看,受益者当然是中方无疑。


也就是说,开放源代码审查,从大方向上看,是符合中国利益的。虽然上面说的妥协显然不可能顺利达成,但是我们没有理由拒绝局面朝着这个方向发展。所以,反而应该利用好这次契机,在严格的安全保护机制下,向有关政府开放源代码审查的同时,坚决主张对那些在中国拥有大量个人或企业用户的外国软件和网络服务,也用对等的方式向中国政府开放源代码审查权力。


这么看下来,TikTok 开放源代码审查,虽然在网络上一石激起了千层浪,可是冷静下来分析一下,我认为一则不必过于担心,二则很可能反而是个有利的机会。希望国家有关部门利用此次契机行动起来,在此案例的基础上,探索全球通用的软件安全审查模式,用制度化的方式打破跨国巨头们在中国的代码和信息垄断,一劳永逸地解决数字国境上的安全问题。


作者介绍


北冥乘海生,清华大学信息与通信工程博士、《计算广告》作者。


本文转载自知乎


原文链接


源代码审查能否成为国际惯例?


2020-10-10 10:051893

评论

发布
暂无评论
发现更多内容

2021Java最新大厂面试真题,37岁程序员被裁

Java 面试 后端

2021Java网络编程总结篇,三年老Java经验面经

Java 面试 后端

科创人|华映资本章高男:好奇心顽童,趋势焦虑者,反套路投资人

科创人

2021华为Java高级面试题及答案,Java技术成长

Java 面试 后端

个推融合实人认证服务和视觉智能技术,推出青少年网络游戏防沉迷解决方案

个推

AI 人脸识别

2021Java者未来的出路在哪里,怒斩获了30家互联网公司offer

Java 面试 后端

M-SQL:超强的多任务表示学习方法

华为云开发者联盟

sql 自然语言 M-SQL SQL语句 多任务

阿里淘技术带佬新作:设计模式的完美演绎,共计1290页

Java 程序员 架构 面试 计算机

2021一位Java中级程序员的跳槽面经,springmvc源码解析pdf

Java 面试 后端

分布式服务下,消息中间件改造

Java 架构 面试 分布式 后端

Jenkins: 重置管理员密码

吴脑的键客

jenkins

2021Java面试心得,淘汰机制、缓存雪崩

Java 后端

直播回顾 | seL4基金会主席谈物理系统安全工程实践

鉴释

自动驾驶 操作系统 微内核 在线研讨会

2021年Android岗位BAT大厂面试题知识点小结,阿里巴巴安卓面试题答案

android 面试 移动开发

2021年Android工作或更难找,2021Android面经

android 移动开发

2021Java最新大厂面试真题,Java面试宝典pdf

Java 面试 后端

2021Java进阶者的新篇章,做了5年Java

Java 面试 后端

2021京东最新Java面试真题解析,2021Java开发面试解答

Java 面试 后端

百亿级日志流分析实践 | 剖析个推SDK后效分析功能实现原理

个推

消息推送 sdk

2021Java面试心得,Spring的XML解析原理

Java 面试 后端

个推0代码数据可视化实操:基于Tableau的中国奥运数据探索

个推

2021Java高频精选面试题讲解,2021Java大厂面试真题

Java 面试 后端

2021互联网大厂Java面经合集,阿里面试官必问

Java 面试 后端

2021年Android工作或更难找,深入剖析原理

android 面试 移动开发

2021年Android大厂面试,劲爆

android 面试 移动开发

2021Java最新大厂面试真题总结,入职阿里啦

Java 面试 后端

如何用人工智能技术优化 WebRTC 产品(内附具体方案)

融云 RongCloud

2021Java精选面试实战总结整理,Java程序员面试算法宝典

Java 面试 后端

2021Java高级进阶学习资料,StringBoot编程式事务与声明式事务

Java 面试 后端

2021年Android大厂面试,送大厂面经一份

android 面试 移动开发

三维可视化数字能源系统,助力智慧园区高效能源管理

ThingJS数字孪生引擎

大前端 物联网 可视化 数字孪生

源代码审查能否成为国际惯例?_软件工程_北冥乘海生_InfoQ精选文章