Rust at Scale: An Added Layer of Security for WhatsApp
Hacker News
Meta's engineering blog details how WhatsApp is leveraging the Rust programming language to enhance its security infrastructure, particularly for handling sensitive data and mitigating potential vulnerabilities at scale.
Meta 近期分享了 WhatsApp 如何在大規模環境下導入 Rust 語言,以提升其媒體處理庫 Wamedia 的安全性與效能。這項工程涉及將原本超過 16 萬行的 C++ 程式碼重構為約 9 萬行的 Rust 程式碼,並宣稱這是目前全球規模最大的 Rust 函式庫部署案例,覆蓋超過 30 億使用者。
社群觀點
Hacker News 的討論首先聚焦於「全球最大規模部署」的說法。部分開發者質疑此頭銜的準確性,指出 Android 系統本身已大量採用 Rust,且其裝機量可能不亞於 WhatsApp;同時,Chromium 瀏覽器也整合了多個 Rust 函式庫,如處理字體與圖片編碼的組件,其影響力同樣遍及全球。此外,關於 WhatsApp 是否仍在使用 Signal 的 libsignal 函式庫也引發討論,有留言指出 WhatsApp 早期確實整合了 C 語言版本的 libsignal,但目前的 Wamedia 顯然是 Meta 自行研發的成果。
在技術實踐層面,社群對 Meta 採用的「差異化模糊測試」驗證策略表示高度讚賞。開發者認為,重寫舊有系統最困難的挑戰不在於撰寫新語言,而是在於如何維持與舊系統「臭蟲級別」的相容性。由於現實世界中的媒體檔案往往不符合規範,若 Rust 解析器過於嚴謹,反而會導致原本在 C++ 版本能正常開啟的檔案失效。透過讓新舊版本並行運作並比對輸出結果,Meta 成功在不破壞使用者體驗的前提下完成遷移,這種漸進式的驗證被視為比「砍掉重練」更具參考價值的工程實踐。