完整,可重複的應用分發已實現!
發佈於 2015 年 2 月 11 日,出自F-Droid 致力於建立一個完整的應用程式分發渠道,能夠可重複地從原始碼構建每個 Android 應用程式。儘管這聽起來像是枯燥的細節,它確實帶來了許多實際的益處。首先,這意味著任何人都能驗證他們使用的應用程式是 100% 從原始碼構建的,沒有新增任何其它內容。這就證實了該應用程式是 100% 的自由開源軟體。
它同時驗證應用程式在建置過程中未被植入任何惡意程式碼。正如在 31c3 可重現建置演講中所 示範 的,僅需翻轉單一位元,便足以在應用程式中創造出可用的漏洞利用程式。
F-Droid 專案正以其驗證版發佈系統引領潮流。此系統基於 Guardian Project 的首個完整範例,實現了 Lil’ Debi 的可重複構建。我們從簡單的小工具應用程式 Checkey 著手,因其組件較少(先讓一個運作起來,再處理其餘)。
當您 從
f-droid.org
下載 Checkey 時,您將獲得一個使用官方 Guardian
Project 離線簽署金鑰簽署的
APK 檔案,該金鑰由 f-droid.org 建置。Guardian Project 並未將我們的金鑰副本提供給 f-droid.org,而是
fdroid publish 流程現在會檢查建置配方中的 Binaries:
標籤。若偵測到該標籤,系統將下載對應APK,接著從原始碼重新編譯應用程式,最後透過兩種方式驗證兩者是否一致:一是對 APK
內容執行簡易差異比對,二是確認官方 APK 的簽章能否成功驗證 f-droid.org 編譯的 APK。
既然 Checkey 已經運作起來,現在可以著手讓所有應用程式都採用相同方式進行驗證,從而消除一整類必須擔憂的漏洞利用方式。您可以在 F-Droid 維基的 可重複構建 頁面追蹤這項工作的進度,並在 驗證伺服器 頁面了解其未來的應用方向。
可重複管道中接下來的兩個應用程式是 LEAP 的 Bitmask 與 Guardian Project 的 LocationPrivacy。
