為解決 C 語言先天的記憶體安全問題,利用AI將C語言寫的軟體轉化為更安全的Rust程式碼

為解決 C 語言先天的記憶體安全問題,利用AI將C語言寫的軟體轉化為更安全的Rust程式碼

ADVERTISEMENT

Rust 是軟體開發人員格雷頓-霍爾(Graydon Hoare)在 Mozilla 工作時提出的一種語言,現在已成為五角大樓研究機構宣佈的一個複雜轉換項目的官方選擇。

美國國防高等研究計劃署(DARPA)正在啟動一項名為「將所有 C 程式碼轉換為 Rust 程式碼」(TRACTOR)的計畫,這是一項以人工智慧為重點的計畫,旨在大幅實現將 C 程式碼轉換為 Rust 程式碼的自動化。

DARPA 指出,二十多年來,程式界一直在努力解決 C 和 C++ 中的記憶體安全問題,而現在的共識是,本地錯誤尋找工具不足以解決這一關鍵的架構問題。

記憶體安全問題是軟體公司和研究人員披露的最常見的安全漏洞類型。C 語言建立於 20 世紀 70 年代,目前運行著從智慧型手機到太空飛行器和網路協議的所有程式,它允許程式設計師直接操作記憶體分配。

C 語言例程中的程式錯誤或意外行為可能會破壞記憶體,或為駭客提供可入侵整個網路的漏洞。相比之下,Rust 被設計為一種低級通用語言,可執行記憶體安全實踐,確保所有引用都指向有效的記憶體地址。

旨在確保記憶體安全的現代程式語言越來越受歡迎。Rust 是軟體開發人員格雷頓-霍爾(Graydon Hoare)在 Mozilla 工作時提出的一種語言,現在已成為五角大樓研究機構宣佈的一個複雜轉換項目的官方選擇。

為解決 C 語言先天的記憶體安全問題,利用AI將C語言寫的軟體轉化為更安全的Rust程式碼

Rust 有可能消除這類型的安全漏洞,因此正在被各大科技公司的軟體項目迅速採用。像是微軟計畫用 Rust 重寫 Windows 和 Microsoft 365 應用程式的一些核心部分。同樣,Rust 也被內建到 Linux 核心、Chromium 佈局引擎以及全球數百萬人使用的其他關鍵程式碼庫中。

TRACTOR 計畫源於最近的兩個文化轉變:Rust 程式語言的廣泛採用和先進機器學習技術的發展。DARPA 對聊天機器人和其他人工智慧服務使用的大型語言模型特別感興趣,因為它們可以為記憶體安全問題提供新的解決方案。

據 TRACTOR 的項目經理 Dan Wallach 介紹,人工智慧聊天機器人已經可以將"一些 C 程式碼"快速轉換為安全的 Rust 程式碼。不過,生成的程式碼並非完全沒有錯誤(或幻覺)。TRACTOR 的目標是"大幅提高"LLM 自動將 C 程式碼轉換為 Rust 程式碼的能力。

公共部門有相當一部分軟體項目是用傳統語言開發的,DARPA 也非常清楚這個問題。Code Metal 首席執行長彼得-莫拉萊斯(Peter Morales)認為,TRACTOR 是一個很有前途的計畫,可能會對網路安全市場產生重大影響。

不過,莫拉萊斯也說,自動程式碼轉換絕對是一個 DARPA 難以解決的問題,目前並沒有簡單易用的神奇人工智慧解決方案。

 

 

 

 

IFENG
作者

鳳凰網(科技),集綜合資訊、視訊分發、原創內容製作、網路廣播、網路直播、媒體電商等多領域於一身,並於2011年在紐交所上市(紐交所代碼:FENG),成為全球首個從傳統媒體分拆上市的新媒體公司。

使用 Facebook 留言
發表回應
謹慎發言,尊重彼此。按此展開留言規則