近年來(lái),本土互聯(lián)網(wǎng)產(chǎn)業(yè)和軟件產(chǎn)業(yè)蓬勃發(fā)展,雖然取得了不少成績(jī),但在基礎(chǔ)軟件方面往往習(xí)慣于依賴開(kāi)源,普遍對(duì)Linux、OpenStack、MySQL、Ceph等開(kāi)源軟件有所依賴。過(guò)度依賴開(kāi)源軟件不僅會(huì)導(dǎo)致軟件產(chǎn)品同質(zhì)化,還會(huì)增加知識(shí)產(chǎn)權(quán)風(fēng)險(xiǎn)和安全風(fēng)險(xiǎn),必須予以重視。
國(guó)內(nèi)外開(kāi)源軟件發(fā)展情況
開(kāi)源軟件的發(fā)展得益于互聯(lián)網(wǎng)技術(shù)的發(fā)展,隨著云計(jì)算、移動(dòng)互聯(lián)網(wǎng)的發(fā)展,OpenStack、k8s、Ceph等開(kāi)源技術(shù)紛至沓來(lái)。這些開(kāi)源項(xiàng)目催生了ASF、OIF、CNCF等基金會(huì),致力于開(kāi)源項(xiàng)目的孵化和運(yùn)營(yíng)。隨著開(kāi)源軟件托管和協(xié)助平臺(tái)的普及,開(kāi)源全球化協(xié)作和共創(chuàng)的溝通成本急劇下降,開(kāi)源項(xiàng)目數(shù)量持續(xù)提升,據(jù)測(cè)算,2026年全球開(kāi)源項(xiàng)目數(shù)量將超過(guò)3億。
近年來(lái),國(guó)內(nèi)開(kāi)源項(xiàng)目爆發(fā)式增長(zhǎng)。根據(jù)中國(guó)信通院發(fā)布的《開(kāi)源生態(tài)白皮書(shū)(2021)》,中國(guó)在全球最大開(kāi)源平臺(tái)GitHub上的貢獻(xiàn)者數(shù)量已經(jīng)達(dá)到了全球第二。2020年,GitHub平臺(tái)上中國(guó)貢獻(xiàn)者的數(shù)量增加了37%。Gitee2020年度報(bào)告數(shù)據(jù)指出,我國(guó)在Gitee平臺(tái)上開(kāi)源項(xiàng)目增長(zhǎng)率達(dá)192%,達(dá)到了1500萬(wàn),是2013年至2018年Gitee平臺(tái)開(kāi)源項(xiàng)目的總和。
誠(chéng)然,近年來(lái)我國(guó)開(kāi)源項(xiàng)目爆發(fā)式增長(zhǎng),部分開(kāi)源社區(qū)活躍度跨越式提升,但我國(guó)開(kāi)源社區(qū)活躍度整體與全球仍存在差距,尤其在Issue、PR指標(biāo)等方面存在較大差距。很多重點(diǎn)領(lǐng)域開(kāi)源技術(shù)與項(xiàng)目發(fā)展還處于追趕階段,國(guó)內(nèi)云計(jì)算一般基于OpenStack,開(kāi)源國(guó)產(chǎn)存儲(chǔ)則高度依賴Ceph,諸多國(guó)產(chǎn)瀏覽器往往基于Chrome。
開(kāi)源的本質(zhì)是開(kāi)放和共享,當(dāng)然也要遵循必要的協(xié)議。從開(kāi)源社區(qū)獲取代碼,同時(shí)對(duì)開(kāi)源社區(qū)有所回饋,實(shí)現(xiàn)“從開(kāi)源中來(lái),到開(kāi)源中去”。充分利用開(kāi)源模式加強(qiáng)技術(shù)創(chuàng)新應(yīng)用本身并沒(méi)有問(wèn)題,紅帽等大企業(yè)都是這里面的佼佼者。目前國(guó)內(nèi)情況是,開(kāi)源項(xiàng)目在龐大的市場(chǎng)和熱錢的追捧下變了味道,被行業(yè)戲稱“國(guó)外一開(kāi)源,國(guó)內(nèi)就自主”。相當(dāng)一部分公司從開(kāi)源社區(qū)拿來(lái)東西編改加以優(yōu)化,就開(kāi)始標(biāo)榜“完全自主知識(shí)產(chǎn)權(quán)”、“自主研發(fā)”,變成了“民族驕傲”和“新銳國(guó)貨”,在資本的推波助瀾下?lián)u身一變成為行業(yè)獨(dú)角獸,甚至上市套現(xiàn)。這種亂象導(dǎo)致軟件產(chǎn)品同質(zhì)化嚴(yán)重,原本可以用來(lái)哺育國(guó)產(chǎn)軟件茁壯成長(zhǎng)的資源被低端產(chǎn)品無(wú)序競(jìng)爭(zhēng)白白消耗掉。
(紅芯瀏覽器基于Chrome卻標(biāo)榜自主研發(fā)成為丑聞)
開(kāi)源軟件存在知識(shí)產(chǎn)權(quán)風(fēng)險(xiǎn)
雖然一些廠商把開(kāi)源代碼改頭換面后鼓吹自主,但這并不意味著拿開(kāi)源代碼就完全不存在知識(shí)產(chǎn)權(quán)風(fēng)險(xiǎn)。
近年來(lái),開(kāi)源知識(shí)產(chǎn)權(quán)相關(guān)法律判例逐漸增多。美國(guó)Jacobsen 訴Katzer 案件就是涉及開(kāi)源許可證維權(quán)成功的案例。由于 Katzer 刪除了許可通知,Jacobsen主張Katzer 違反了開(kāi)源許可證。最終 Jacobsen 獲得勝利并與Katzer 達(dá)成和解。無(wú)獨(dú)有偶,“不亂買”案件確認(rèn)了開(kāi)源許可證在我國(guó)具備法律效力。本案中和開(kāi)源許可證相關(guān)的爭(zhēng)議點(diǎn)在于原告網(wǎng)站的前端代碼中使用了 GPL 許可協(xié)議下的開(kāi)源代碼,該GPL許可協(xié)議是否約束后端代碼。該案在最高法院知識(shí)產(chǎn)權(quán)庭終審,詳盡分析了本案中 GPL 協(xié)議約束的代碼范圍。
事實(shí)上,開(kāi)源知識(shí)產(chǎn)權(quán)風(fēng)險(xiǎn)問(wèn)題是相對(duì)隱蔽的。開(kāi)源知識(shí)產(chǎn)區(qū)風(fēng)險(xiǎn)主要集中在四個(gè)方面:
一是版權(quán)侵權(quán)風(fēng)險(xiǎn),不遵守開(kāi)源許可協(xié)議,導(dǎo)致版權(quán)侵權(quán);
二是專利侵權(quán)風(fēng)險(xiǎn),開(kāi)源軟件中包含諸多軟件專利,使用開(kāi)源軟件未得到軟件專利權(quán)人的專利許可,從而導(dǎo)致專利侵權(quán);
三是商標(biāo)侵權(quán)風(fēng)險(xiǎn),未經(jīng)許可使用開(kāi)源軟件的商標(biāo);
四是許可證沖突。
根據(jù)新思科技《2021開(kāi)源安全與風(fēng)險(xiǎn)分析報(bào)告》統(tǒng)計(jì),2020 年審計(jì)的代碼庫(kù)中,65%的代碼庫(kù)包含存在許可證沖突的開(kāi)源組件,通常涉及“GNU通用公共許可證”。版權(quán)侵犯風(fēng)險(xiǎn)與商標(biāo)侵權(quán)風(fēng)險(xiǎn)較易規(guī)避,而專利侵權(quán)風(fēng)險(xiǎn)與許可證沖突則較難規(guī)避。
總之,拿開(kāi)源軟件改改就稱自主的做法是不靠譜的。部分企業(yè)將開(kāi)源軟件拿來(lái)就用,既無(wú)能力,也無(wú)時(shí)間精力去思考知識(shí)產(chǎn)權(quán)問(wèn)題,這些開(kāi)源軟件的知識(shí)產(chǎn)權(quán)風(fēng)險(xiǎn)不容小覷。
開(kāi)源軟件存在安全風(fēng)險(xiǎn)
開(kāi)源軟件安全風(fēng)險(xiǎn)主要包括安全漏洞風(fēng)險(xiǎn)和供應(yīng)鏈風(fēng)險(xiǎn)。
軟件都是人寫(xiě)的,而人都會(huì)犯錯(cuò),開(kāi)源軟件中必然存在bug,存在安全性或功能性漏洞。開(kāi)源軟件涉及源代碼共享,很多配置信息中會(huì)涉及賬號(hào)密碼等敏感信息,如果不對(duì)代碼進(jìn)行審核檢查,可能會(huì)造成大量敏感信息與數(shù)據(jù)隨著代碼的共享而泄露。開(kāi)源軟件公開(kāi)的源代碼,如果包含對(duì)企業(yè)數(shù)據(jù)庫(kù)的訪問(wèn)代碼,則可能導(dǎo)致整個(gè)數(shù)據(jù)庫(kù)面臨數(shù)據(jù)泄露的危險(xiǎn),也可能導(dǎo)致企業(yè)內(nèi)部文件與用戶信息的泄露。
據(jù)美國(guó)網(wǎng)絡(luò)安全公司Snyk發(fā)布的《2019年開(kāi)源安全現(xiàn)狀調(diào)查報(bào)告》顯示,78%的漏洞存在于間接依賴關(guān)系中;37%的開(kāi)源開(kāi)發(fā)者在持續(xù)集成期間沒(méi)有實(shí)施任何類型的安全測(cè)試,54%的開(kāi)發(fā)者沒(méi)有對(duì) Docker鏡像進(jìn)行任何安全測(cè)試;兩年內(nèi)應(yīng)用程序的漏洞數(shù)量增長(zhǎng)了88%。據(jù)新思科技《2021開(kāi)源安全與風(fēng)險(xiǎn)分析報(bào)告》顯示,84%的代碼庫(kù)至少含有一個(gè)漏洞,近三年漏洞比例逐年增高,60%的已審核代碼庫(kù)包含高風(fēng)險(xiǎn)漏洞。據(jù)開(kāi)源網(wǎng)安Source Check工具對(duì)熱門開(kāi)源項(xiàng)目的掃描結(jié)果看,53.8%的項(xiàng)目存在超危風(fēng)險(xiǎn)。
有鑒于此,開(kāi)源軟件在部署后需支付較高的維護(hù)費(fèi)用。特別在金融、電信、能源、交通、醫(yī)療等關(guān)鍵領(lǐng)域,更需要專業(yè)的運(yùn)維團(tuán)隊(duì)和及時(shí)售后技術(shù)支持,一旦因?yàn)槁┒匆l(fā)上層應(yīng)用出現(xiàn)問(wèn)題,出現(xiàn)的損失則是天文數(shù)字。正是因此,中國(guó)人民銀行等五部門就公開(kāi)了關(guān)于規(guī)范金融業(yè)開(kāi)源技術(shù)應(yīng)用與發(fā)展的意見(jiàn),指明了在使用開(kāi)源軟件中投入維護(hù)的利害性。
供應(yīng)鏈風(fēng)險(xiǎn)指開(kāi)源軟件可能會(huì)受地緣政治影響。雖然技術(shù)本身是無(wú)屬性的,但開(kāi)源平臺(tái)和社區(qū)是有國(guó)界的。在俄烏沖突中,GitHub就限制俄羅斯開(kāi)發(fā)人員使用開(kāi)源軟件。GitHub CEO 發(fā)文表示,會(huì)確保全球開(kāi)發(fā)者的正常訪問(wèn),但同時(shí)也會(huì)遵守政府提出的出口管制和貿(mào)易法規(guī),其中包括嚴(yán)格限制俄羅斯獲得其維持侵略性軍事能力所需的技術(shù)。西方主導(dǎo)的開(kāi)源社區(qū)可以直接對(duì)待俄羅斯,也就可以把同樣的招數(shù)用在我國(guó)身上。
結(jié)語(yǔ)
受國(guó)際環(huán)境影響,我們應(yīng)當(dāng)加快自主創(chuàng)新,在政府國(guó)企事業(yè)單位和金融、交通、教育、醫(yī)療等關(guān)鍵行業(yè)完成IT設(shè)施的核心技術(shù)和底層軟、硬件的國(guó)產(chǎn)化,在存儲(chǔ)、數(shù)據(jù)庫(kù)等各方面,必須掌握核心技術(shù)和代碼,必須具備自我迭代更新能力。
對(duì)于開(kāi)源軟件,可以借力,但不可依賴,更不能濫用。必須加強(qiáng)中國(guó)自主開(kāi)源生態(tài)建設(shè)和開(kāi)源軟件安全生態(tài)建設(shè),摒棄過(guò)去“短、平、快”的模式,構(gòu)建開(kāi)源社區(qū)、廠商、開(kāi)發(fā)者、開(kāi)源公司都能受益的商業(yè)模式。
現(xiàn)在國(guó)內(nèi)也開(kāi)始重視開(kāi)源社區(qū),也自建了一些開(kāi)源社區(qū),然而,羅馬不是一天建成的,國(guó)外發(fā)展了很多年建成了巨大的知識(shí)庫(kù),中國(guó)剛剛開(kāi)始,也許再過(guò)30年才能真正脫離國(guó)外社區(qū)自成體系。但在這以前,決不能將依賴西方開(kāi)源社區(qū)開(kāi)發(fā)的軟件等同于自主研發(fā)。只有通過(guò)自主研發(fā)掌握核心技術(shù),才能不被卡脖子,即使有一天GitHub停止服務(wù),也完全可以在中國(guó)“另起爐灶”。