联系我们

科学网 | 数字化转型的开源之路该怎么走

2021-12-23

开源软件“史上最大漏洞”被发现了。近日,阿里云安全团队在Web服务器软件阿帕奇(Apache)下的开源日志组件Log4j内,发现一个漏洞Log4Shell。这一漏洞的存在可以让网络攻击者无需密码就能访问网络服务器。鉴于Log4j软件被广泛使用,网络安全专家认为,这一漏洞可能是计算机历史上“最大的漏洞”。

自上世纪90年代发展至今,开源已成为信息技术发展的主流趋势。特别是在各行各业数字化转型的当下,开源更成为数字化基础设施的助力之一。然而,开源在发展过程中,也面临着种种风险。如何在发展中防范风险,让我国成为具有国际影响力的开源大国,成为1216~18日由中国计算机学会(CCF)在深圳举办的2021中国计算机大会(CNCC2021)上热议的话题。

大协作时代的大势所趋

开源即开放源代码,兴起于软件行业,现在已开始向硬件方向渗透。在CNCC2021北京分会场举行的以“数字化转型的开源之路”为主题的大会论坛上,北京大学计算机系教授周明辉表示,时至今日,她还会经常对开源进行科普:“什么是开源?开源就是开源软件的版权人在把代码开放出来的同时,提供一个许可证,让用户放心地使用。”

1995年就开始接触开源的小米集团副总裁崔宝秋看来,现在开源运动已经如火如荼,开源的技术也日益成熟,从云计算、大数据到人工智能,从软件到硬件,都在拥抱开源,所以开源已是大势所趋。

我国拥有世界上规模最大的程序员群体,但在全球开源社区里所发挥的影响力却远远不够,甚至被诟病为一个“拿来主义”的开源大国。不过,近年来,这一状况有所改观。作为论坛主持人,中国科学院计算技术研究所副所长包云岗研究员抛出了这样一个问题:“我国最近几年为什么开始非常重视开源?”

中国工程院院士孙凝晖近年来在中科院计算所规划了开源芯片方向,是开源芯片领域的引领者。在他看来,我国其实一直都比较重视开源,不过近年来开源发展确实在加速。之所以如此,与我国当下的产业形势有关。

“开源主要是要打破垄断。”孙凝晖说,“我们无法在垄断的生态链里把我们的企业做大、做强,所以就需要一些手段去打破垄断,去建立更加良好的生态。”

北京大学教授、中国知识产权法研究会副会长张平介绍,开源运动起源于对知识产权制度的反抗。当人类进入信息社会,也就是进入到了一个技术大协作的时代。此时,任何一个主体的创新成果都不足以去支撑某个产品或者某个技术体系,而必须依靠一种相互协同、互相依赖的模式。这是开源运动兴起的另一原因。

中国科学院软件研究所所长赵琛研究员也认为,在大协作时代如果不采用开源的模式,就很难建立起类似信息高铁等数字化基础设施。而且,以软件为例,它的快速迭代和维护是任何一个企业,甚至一个国家都难以支撑和投入的。

在作CNCC2021大会特邀报告时,中国科学院院士、国防科技大学教授王怀民更是将开源总结为一种范式变革。他认为,软件开发从工程范式发展为开源范式,就是为了全面拥抱互联网环境下的不确定性,以开发者社区的自组织模式,形成自主化的规模化创作,以多样性应对不确定性。

风险如何防范?

王怀民介绍,截至目前,开源运动已经取得了相当可观的成就:超过2.3亿个软件版本库,开发语言超过700种。仅GitHub社区,2020年就新增6000万个版本库和120万新用户,总数据量达21TB。而据谷歌统计,全球总共约有1.3亿册藏书,数据量为23TB。“这就是说,开源20年的源代码文明与人类五千年文字文明的数据量相当。”他感叹道。

然而,包云岗指出,虽然前景美好,但实际上开源发展过程中也存在着一些风险,例如类似Log4Shell的漏洞,以及一些技术上的使用限制等。

周明辉认为,从开源项目、开源生态的角度,开源之所以存在风险,主要是因为目前任何一个开源软件在整个软硬件全栈中都只是一个节点。这个节点可能会依赖上游的成百上千,乃至上万的开源软件。而上游开源软件的任何漏洞,如果缺少维护,就会存在很大的风险。“互联网安全历史上最严重的漏洞之一开源套件OpenSSL的‘心脏滴血’(Heartbleed)漏洞,就是因为维护的人很少造成的。”她说。

开源是无国界的,但一些开源社区还是有可能出现不允许某公司去下载开源代码的情况。作为法律界人士,张平建议,此时就可以去质疑这些开源社区协议的合理性。例如,开源促进组织OSI在定义“开放”一词时有14个条件,其中第5个和第6个条件就提到不能歧视任何个人和机构,不能歧视任何技术领域。因此,如果不被允许去某个开源社区下载,那就可以去OSI“维权”,质疑某个社区不是开源社区,某个软件不是开源软件,因为它们已经丧失了“开源”的应有之义。

在崔宝秋看来,开源还面临一个挑战,即一些大公司用开源作为武器,打造出强有力的平台,并奠定了领先的优势,形成了自身强大的生态,而碾压了开源界的其他一些同行。“当一个巨头发展起来后,它强大的生态可能会绑架很多人。这也是一种风险。”崔宝秋说。

“开源技术发展中碎片化的情况会越来越严重,这也是需要关注的一个问题。”赵琛认为,要把碎片化的影响减到最小,需要在一些工具、理念和方法上做好准备。“我们需要提前从技术上做一些考量,进行一些布局来规避它。”

要注意开源的“打法”

怎样才能构建出具有影响力的开源社区?面对包云岗提出的问题,崔宝秋回答:“我坚信开源是软件的未来,但也不是所有东西都是值得拿来开源的。”崔宝秋指出,现在国内很多企业为了开源而开源,为了KPI(绩效考核)而开源,有的则纯粹是为了提升技术品牌、提升个人影响力而开源。在他看来,“开源什么要考虑清楚,否则开源出去以后,不管怎么使劲儿还是会死翘翘的”。

孙凝晖则认为,开源社区要同时面对社会发展中的两大难题,即公平和效率问题。而一个好的开源组织一定要保证能让技术更公平地发展。

就效率而言,如何能让更多人参与协同是个问题。孙凝晖举例说,我国在提高处理器性能方面已经努力了20年,但大部分做芯片的企业还是用的国外的核。而国产芯片的性能和国外相比还有很大差距。

“如果我们能够通过一个好的开源组织或者创新共同体,把华为海思、阿里平头哥、今日头条和中科院计算所以及清华大学的力量合在一起,是否就能在更短的时间内把我国芯片核的水平提高一些?”孙凝晖希望,能有更好的协同机制、更公平的制度设计,让我国的开源组织走得更好。

崔宝秋在开源社区的日常“打法”上做了两点分享,一是要在线上保持社区的活跃度,原则就是要“尽早发布、尽快发布”开源软件版本;二是要在线下定期举办交流活动。在他看来,线下分享会带来很多的人气,会碰撞出创新的火花,而这些是纯线上不可取代的。“如何赢得互相的信任,如何让社区变得更加友好,线下的交流非常重要。”他说。

CNCC2021“数字化转型的开源之路”论坛现场图片来源:CCF

(本文原载于1223日科学网)

诚聘英才
友好链接
业务咨询及参观访问:0755-86576085    0755-86576086    地址:深圳市南山区笃学路9号
国家超级计算深圳中心(深圳云计算中心)  ©2014-2020  粤ICP备10220126号