出品 | CSDN(ID:CSDNnews)
Python 作為全球最流行的編程語言之一,支撐着無數開源項目和商業應用。但正因其生態系統龐大而活躍,安全風險也隨之增加,尤其是供應鏈方面的潛在威脅。
為應對這些挑戰,Python 軟件基金會(PSF)此前向美國國家科學基金會(NSF)提交了一份價值 150 萬美元的撥款提案。這也是 PSF 首次嘗試申請政府資助。
然而,事情並未按計劃發展。近日,PSF 在官網、社交平台 Reddit 上宣佈,由於 NSF 提出的附加條件,具體包括 PSF 得承諾不運營任何推進多樣性、公平和包容(DEI)的項目才能獲得撥款。思量之下,PSF 選擇主動撤回原本獲得推薦資助的 NSF 項目提案,並向外界公示。

這一決定立即引發開源社區和技術行業的廣泛關注,尤其是在當前全球科技環境日益複雜的背景下。

為 Python 安全而出現的提案
據 PSF 公告顯示,其提交的提案隸屬於「開源生態系統的安全、保障與隱私」 項目,旨在提升 Python 生態系統的安全性,特別是加強 PyPI(Python 包索引)的供應鏈防護。
這個項目原來是計劃開發一套新的自動化工具,用於主動審查所有上傳至 PyPI 的軟件包,而非目前僅能事後響應的被動機制。這些創新工具將基於已知惡意軟件數據集設計的「功能分析(capability analysis)」方法實現。
除了保護 PyPI 用戶之外,這項工作的成果也可以推廣到其他開源包註冊中心(如 NPM 與 Crates.io),從而提升多個開源生態系統的整體安全水平。
因此,PSF 為申請這項提案也下足了功夫來準備。
據悉,PSF 安全駐站開發者 Seth Larson 擔任首席研究員(PI),PSF 副執行董事 Loren Crary 擔任聯合首席研究員(co-PI),共同領導了多輪提案撰寫與為期數月的評審過程。
「對於我們這樣一個小型團隊來說,應對複雜繁瑣的申請流程是一段陡峭的學習曲線。」PSF 在公告中說道:「我們投入了大量時間與精力,因為我們相信,PSF 的工作方向與該項目高度契合,一旦提案獲批,將能為社區帶來顯著的積極影響。」
在經過數月努力後,PSF 的提案獲得了資助推薦,這得來也非常不易。畢竟,首次申請 NSF 資助的成功率僅為 36%。

150 萬美元資助背後的附加條件
然而,就在 PSF 慶賀這一進程之際,他們也收到了資助附帶的條款與條件,頓感不妙。
附帶條件中有一條規定要求 PSF 確認:「在本次資助期間,不得運營或推廣任何以推動多元化、公平或包容(DEI)為目的的項目,或從事違反聯邦反歧視法的相關活動。」
PSF 的法律顧問還表示,這一限制不僅適用於該筆資助直接支持的安全項目,還適用於 Python 軟件基金會的所有活動。
更嚴重的是,若違反該條款,NSF 有權「追回」已批准並劃撥的資金,這意味着即使資金已經被用於支出,也可能被要求退還。
PSF 坦言,「對我們而言,這將是一個巨大且無法預估的財務風險」。
要知道一直以來,PSF 的使命是推動、保護並發展 Python 編程語言,同時支持並促進一個多元化的國際 Python 開發者社區的成長。多元化、公平與包容(DEI)是 PSF 的核心價值,這一點在其使命聲明中有明確體現。
如果同意 NSF 的要求,雖說一方面會對 Python 安全方面有所裨益,同時也能對 PSF 的預算產生重大影響。據官方透露,PSF 是一個相對小型的組織,年預算約為 500 萬美元,員工僅有 14 人。「若獲得這筆為期兩年、總額 150 萬美元的資助,將成為我們有史以來規模最大的一筆資金支持」。
可是另一方面,這將迫使 PSF 放棄其核心價值和使命。
一邊是發展,一邊是使命,PSF 起初陷入了兩難的境地。

PSF:內部達成一致,主動拒絕
經過內部投票,PSF 內部統一認為,「項目的價值與資金的規模,都不應凌駕於我們的核心價值與支持社區自由發展的使命之上。PSF 董事會最終一致投票,決定撤回本次申請。」
對此,Django 創造者、PSF 董事會成員之一的 Simon Willison 也在個人博客上支持這一決定,其表示:
「對我們來說,這不是可以接受的選項......
即使我們接受並花費了這筆資金,仍存在被要求追回的現實風險。由於資金已經使用,這將對基金會構成生存性風險。
我本人是投票反對接受這筆資助的董事會成員之一——這是一次全票通過但艱難的決定。我為能夠在這樣的董事會服務而感到自豪,因為它能做出如此艱難的決策。」
在全球科技環境日益複雜的今天,如何在資金支持與價值堅持之間找到平衡,是所有開源組織和科技機構需要思考的問題。對此,PSF 呼籲社區成員和支持者提供財政支持,以確保其能夠獨立運營,繼續為全球 Python 開發者社區服務。
當然,PSF 的這一行動也引發了不少 IT 從業者的討論,多數用戶表示大力支持 PSF 的態度:
PSF 拒絕這筆資金是完全正確的。無論如何,那 150 萬美元的預算計劃是如何分配的?社區是否可以不依賴這筆資金,繼續開展這些工具的開發工作?如果資金主要用於基礎設施或雲服務等,對於使用 Python 的許多大公司來說,這點投入微不足道,而目標的重要性卻非常高。


也有網友為此慶幸道,「可悲的是,這可能也是最務實的選擇。如果他們的資助真的被追回,基金會的處境將比原先更糟,而這無疑是一個過於巨大的風險,不值得承擔。」
對此,你怎麼看待 PSF 的這一舉措?