登入  |  English
源碼新聞 分支 LibreSSL 創造者宣稱,OpenSSL 程式碼沒法修了

分支 LibreSSL 創造者宣稱,OpenSSL 程式碼沒法修了

◎本文翻譯自 ars technica,原作者為 Jon brodkin︰
https://arstechnica.com/information-technology/2014/04/openssl-code-beyond-repair-claims-creator-of-libressl-fork/

OpenBSD 創辦人 Theo de Raadt 建立了 OpenSSL 的分支,OpenSSL 就是包含眾所皆知 Heartbleed 安全漏洞的知名開源加密軟體程式庫。儘管被許多世界上最大且最富有公司運用在網站與產品中,OpenSSL 卻飽受缺少資金與程式碼貢獻之苦。

鑑於 OpenSSL 早已運用在數十萬網站伺服器中,分支 OpenSSL 的決定勢必引發爭議。被問到為何要重頭開始,而不協助改善 OpenSSL,de Raadt 表示現存的程式實在太亂了。

在電郵中,de Raadt 對媒體表示,他們的團隊在一周內移除了大半的 OpenSSL 源碼樹。留下的就像剩菜一般。開源模式有賴於能夠讀懂程式碼的人們。清楚明白是一大關鍵。而這並不是一份清晰的程式碼基礎,因為他們的社群顯然不關心清晰度。這個決定並不是我下的,它是自然而然出現的。

LibreSSL 程式碼基礎位於 OpenBSD.org,專案由 OpenBSD 基金會與 OpenBSD 專案提供金援。LibreSSL 有個陽春的網站,而且顯然是故意弄的一點都不吸引人。

該網站表示,這個網頁是費心地設計來惹怒網頁時尚人士,請捐款以停止 Comic Sans 字體與閃爍標籤。在解釋分支決定時,該網站連接到 Twisted Sister 歌曲「絕不忍耐」 (We're not gonna take it) 的 YouTube 影片。

LibreSSL 最初是為 OpenBSD 所建立,在程式碼與資金穩定之後,將支援多種作業系統。OpenBSD 作業系統本身即為在 1995 年創造的 NetBSD 分支。

被問到說 OpenSSL 包含留下的剩菜是什麼意思時,de Raadt 表示有數千行的 VMS 支援。數千行的古老 WIN32 支援。今天,Windows 已經有類似 POSIX 的 API,不再需要針對 sockets 有特別的處置。數千行的 FIPS 支援,更是會幾乎自動地調降密碼。

De Raadt 說,這裡有數千行 API,OpenSSL 團隊早在 12 年前就想揚棄,不過卻依然存在。他說,他的團隊移除了 9 萬行程式碼。即使歷經這些更動,該程式碼依然具備 API 相容性。我們整個 ports tree(有 8700 個應用程式)在這些更動後,還是可以編譯並且運作。

OpenBSD 團隊是在一周前開始投入 LibreSSL。OpenSSL 軟體基金會總裁 Steve Marquess 拒絕對 LibreSSL 表示意見。Marquess 表示還沒有機會了解他們的工作,因此不希望加以評論。

在一篇部落格文章中,Marquess 描述了 OpenSSL 在取得金援與程式碼貢獻上的困境。Marquess 寫到,我在看著你,Fortune 一千大企業。那些把 OpenSSL 納入你的防火牆、應用設備、雲端、財務、安全產品,加以販售獲利或使用來保障你內部架構與通訊的人。那些不必花錢設置自家團隊來撰寫加密程式,只想在不知道如何使用時,向我們索求免費顧問服務的人。以及那些從未動過一根手指貢獻開源社群的人。你自己知道我在講你。

對於 Heartbleed,Marquess 表示,神奇的不是少數過勞自願者看漏了這個臭蟲,而是為何這種錯誤並非經常發生。

可能暴露用戶密碼與保障網站之用的私有加密金鑰的 Heartbleed 漏洞,被一名自願貢獻者意外地加入程式碼中,並且在 2 年內都沒被發現。



您也許有興趣閱讀以下文章:




自由軟體鑄造場電子報 : 第 240 期 AngularJS - 指令

分類: 源碼新聞



評論 

 
0 #1 凍仁翔 2014-05-02 00:31
這樣也好,期許更多熱心人士加入 open source 的行列,天下沒有白吃的午餐啊!
 
 
0 #2 遊手好閒的石頭成 2014-05-05 10:38
我對密碼學沒什麼研究,但我先前 曾經為了一個軟體專案的安全文件 需求,研究過 openssl 的 sod, evp, bio, asn1 等內容。
又因為 openssl 缺近正式文件,我看的文件其實就 是源碼。
openssl的源碼缺乏文件( 註解)、結構混雜、名稱不統一、 難以閱讀(當然也難以維護)。
我真TM認同「openssl 程式碼沒法修了」這句話。
 
 
0 #3 Fanny 2014-05-05 10:40
真的呀~ 想不到OpenSSL 的原碼這麼亂~@@ 都用滿久了勒~