國內開源軟件的發展現狀與風險分析
全球開源項目的數量增長迅速,中國開發者與開源項目均實現迅速增長,高質量項目數量同步增多。“十四五”規劃中也提出了支持數字技術開源社區等創新聯合體發展,完善開源知識產權和法律體系,鼓勵企業開放軟件源代碼、硬件設計和應用服務。
中國信通院發布的《開源生態白皮書(2021)》顯示,我國在全球最大開源平臺GitHub上的貢獻者數量已經達到了全球第二,僅次于美國。2020年,GitHub平臺上中國貢獻者數量增加了37%;而在另一個開源平臺Gitee上,中國貢獻者的數量更是增加了50%,總量超過了600萬人。第三方中立的支持開源項目孵化的組織和基金會在國內也開始興起。
隨著“支持數字技術開源社區等創新聯合體發展,完善開源知識產權和法律體系,鼓勵企業開放軟件源代碼、硬件設計和應用服務”被明確寫入國家“十四五”規劃,工信部也于2021年底發布《“十四五”軟件和信息技術服務業發展規劃》,提出“到2025年建設2~3個有國際影響力的開源社區,培育超過10個優質開源項目”的目標,并積極推動開源項目的發展。
中國開源社區的三大特點
我國開源軟件產業相較于歐美發達國家起步相對較晚,在開源社區觸發期、發展期、協作期、結晶期與流行期的5個發展階段中,中國的開源社區平臺大多處于前3個階段,僅有極少數開啟了商業化良性互動。從參與企業類型來看,云計算企業是國內參與開源軟件市場的主體。
目前我國開源社區平臺主要有開發者社區、代碼托管平臺、開源基金會、開源組織。從現狀上看,我國的開源軟件發展時間較短,目前處于起步階段,未來3~5年將迎來高速發展時期,處于發展成熟期的各軟件企業都有望加入到開源陣營中來,為國內的軟件產業發展帶來更強增長動力。
通過中國開源軟件推進聯盟時隔12年發布的兩次開源社區統計分析,可以看出我國開源社區發展逐步呈現兩級分化趨勢,項目型社區的數量有所增加,可是發展后勁不足。關注這些項目型社區,可以發現其轉型分化有3個特點。
第一,部分項目型社區正在試圖直接選擇第三代開源社區(全球開源社區、開源基金會)作為宿主社區,如CNCF基金會下的TiKV項目,Apache基金會下的SkyWalking、Kylin、Pulsar等。此類走國際路線的項目型社區,可以凝聚更多資源,項目可服務全球市場,最終融入全球領先的第三代社區。這一整套國際化路線的門檻較高,需要對語言溝通、開源文化、國際社區規則和管理機制全面了解并熟練運用,這讓很多國內開發者望而卻步。
第二,開源項目由發起公司來主導運營的第二代開源社區,如OpenEuler、Deepin深度操作系統社區、Ubuntu-Kylin等,此類走自主路線的項目社區面臨的最大挑戰是:如何將企業自主與開放共治的社區基因再平衡?這是社區可以獲取外部資源的前提條件,此外還需要有專業的開源治理專家和社區運營團隊,僅以企業的管理理念和模式難以玩轉社區。
第三,開源項目圍繞具體的特定技術生態系統來匯集,如阿里的云棲開發者社區,其雖有多個項目孵化,但核心技術或產品是由單一公司提供,依然屬于第二代開源社區,受發起公司或核心技術企業資助。此類走生態路線的項目社區需要有足夠的資源投入,如果體量不夠,這種模式很難堅持下去,畢竟社區內多個項目客觀上分散了關注度和資源,選擇這條路線的企業需要有“打持久戰”的準備;否則就應該聚焦于一個項目,集中力量,循序漸進。
面臨的風險和挑戰
根據紅帽公司不久前發布的《2022企業開源現狀》市場研究報告,95%的IT領導者認為開源對其公司非常重要,這與去年的90%相比增加了5%。同時,紅帽預測在接下來的兩年里,受訪企業使用開源軟件占總軟件數將上升8%。開源軟件在給全世界的開發者和用戶帶來便利的同時,也帶來了包括技術風險、法律風險和供應鏈風險在內的挑戰。其中開源軟件不斷爆出的安全漏洞、惡意軟件包植入、開源許可證沖突以及開源關鍵組件的瓶頸風險等,已成為全球范圍內亟待解決的共性問題。對于我國而言,還要面對來自美國的開源技術供應商和服務商潛在的技術出口限制風險。因此,中國開發者和用戶應盡早建立全面的開源風險防范體系,以迎接這些挑戰。
技術風險
開源軟件涉及源代碼共享,很多配置信息中也涉及賬號、密碼等敏感信息,如果不對代碼進行審核檢查,可能造成大量敏感信息與數據隨著代碼的共享而泄露。開源軟件公開的源代碼,如果包含對企業數據庫的訪問代碼,則可能導致整個數據庫面臨數據泄露的險,也可能導致企業內部文件與用戶信息的泄露。美國網絡安全公司Snyk發布的《2019年開源安全現狀調查報告》顯示,78%的漏洞存在于間接依賴關系中;37%的開源開發者在持續集成期間沒有實施任何類型的安全測試,54%的開發者沒有對Docker鏡像進行任何安全測試;兩年內應用程序的漏洞數量增長了88%。而新思科技《2021開源安全與風險分析報告》顯示,84%的代碼庫至少含有一個漏洞,近3年漏洞比例逐年增高,60%的已審核代碼庫包含高風險漏洞。從開源網安Source Check工具對熱門開源項目的掃描結果看,53.8%的項目存在超危風險。有鑒于此,開源軟件在部署后需支付較高的維護費用。
法律風險
法律風險主要是知識產權的風險,知識產權主要指版權、專利和商標。開源軟件也是享受知識產權保護的,而很多人誤以為開源軟件是免費軟件。近年來關于開源軟件的知識產權糾紛層出不窮,這是由于大家在享受開源軟件靈活便捷的同時,忽略了它也享有知識產權相關條例的保護。
版權侵權風險主要源于兩個方面:一是開源軟件使用者沒有按照開源許可協議的規定使用軟件;二是貢獻者將自己不具有版權的代碼貢獻到開源社區,使得開源軟件本身存在版權瑕疵。
專利可以享受20年的保護。開源軟件一旦侵犯軟件專利權,不僅要追溯“發行者”的法律責任,還要追溯“使用者”的法律責任。
軟件商標是指軟件生產者為使自己開發、制造的軟件區別于其他軟件產品,而置于軟件包裝表面或軟件運行時屏幕中所顯示的文字、圖形等特殊標志。開源軟件的商標與其他軟件產品一樣,受到商標法的保護。我國商標注冊使用年限為10年,10年之后可以續展,每次續展的時間為10年。
供應鏈風險
開源軟件可能會受地緣政治影響。開源軟件雖然是公開的,可開源平臺和社區是有國界的。在俄烏沖突中,GitHub就限制俄羅斯開發人員使用開源軟件。
三大發展建議
促進開源組織和社區聯合多元化發展
鼓勵開發者社區發展,“產學研”聯合起來交叉賦能,推動中國開源社區等創新聯合體全面發展。
完善開源托管和風控體系
建設開源風控體系,完善開源代碼托管平臺,對我國開源軟件進行知識產權推廣和保護。
構建開源治理體系
針對自發開源企業、開源使用企業建立開源軟件管理體系,第三方組織應制定開源軟件治理的行業標準,通過制定開源軟件管理規則、明確開源軟件檢測方法,建設開源軟件監測平臺,推動開源治理體系建設。