成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

美國國防部大刀闊斧,啟動AI項目:將老舊C代碼全部轉換為Rust 原創

發布于 2024-8-6 12:45
瀏覽
1收藏

整理丨諾亞

出品 | 51CTO技術棧(微信號:blog51cto)

為了加快向內存安全編程語言的遷移步伐,美國國防部高級研究計劃局(DARPA)正積極推動一項名為“TRACTOR”的創新項目。TRACTOR,即“TRanslating All C TO Rust”,是一個旨在利用先進的機器學習技術自動將老舊的C代碼轉換為Rust語言的工具。

內存安全問題一直是軟件開發中的老大難,比如常見的緩沖區溢出漏洞,這些隱患常常潛伏在龐大的代碼庫中,成為安全威脅的主要來源。DARPA希望通過TRACTOR這樣的工具,借助AI的力量來簡化這一轉化過程,從而使軟件變得更加堅固可靠。

TRACTOR項目負責人Dan Wallach在一次聲明中描述了這個愿景:“想象一下,你只需訪問任何一家大型語言模型網站,與那里的AI聊天機器人對話,簡單地說一句‘我這兒有些C代碼,能幫我轉換成既安全又符合Rust風格的代碼嗎?’然后復制粘貼代碼給它,通常情況下你就會得到滿意的結果——當然,不能保證百分之百的成功率。”

不過,Wallach也指出了這項工作的核心挑戰:“我們需要大幅提高從C語言到Rust的自動化轉換質量,尤其是對于那些最關鍵和復雜的程序結構。”

1.僅僅依靠漏洞檢測工具遠遠不夠

在過去幾年里,科技巨頭如谷歌和微軟一直公開強調內存安全漏洞帶來的問題,并積極推廣使用除C和C++之外的其他不需要手動管理內存的語言。這種倡導不僅在私營部門產生了影響,也引起了公共部門的關注,后者擁有大量的遺留代碼。

白宮和美國網絡安全與基礎設施安全局(CISA)因此鼓勵采用內存安全的編程語言,主要提倡的是Rust,同時也包括C#、Go、Java、Python和Swift等語言。

盡管如此,C和C++的維護者們提出了異議,他們認為只要嚴格遵循ISO標準,并充分利用現有的測試工具,就能達到與Rust相似的安全水平,而不必徹底重寫所有代碼。

然而,DARPA對此的看法似乎表明了對C和C++的態度已經轉變。

“經過了二十多年的內存安全問題后,軟件工程界普遍認識到,”DARPA的研究機構指出,并引用了國家網絡安全總監辦公室的呼吁,“僅僅依靠漏洞檢測工具是遠遠不夠的。”這表明了轉向更安全的編程實踐的重要性。

2.目前的翻譯工具仍然需要大量的人工干預

Rust語言在2015年首次穩定發布,比C語言出現晚了四十多年,它內置了內存安全性,并且也適合用于低級、性能敏感的系統編程。

Rust語言自2015年首次穩定發布以來,雖然比C語言晚了四十多年,但它內置了內存安全性,并且非常適合用于低級別的、性能敏感的系統編程任務。

Rust語言的特性及其日益增長的受歡迎程度催生了諸如Prossimo這樣的倡議。這是一個由非營利組織Internet Security Research Group發起的項目,旨在通過用Rust重寫關鍵庫和代碼來減少安全風險,其中包括網絡時間協議(NTP)守護進程(ntpd-rs)。

Prossimo項目的執行董事Josh Aas表示:“鑒于互聯網基礎設施中運行著大量C代碼,使用翻譯工具變得極具吸引力。”

Aas還提到:“我們已經在這一領域進行了實驗,例如最近我們將基于C的AV1實現翻譯為Rust。目前的翻譯工具仍然需要大量的人工干預以確保翻譯結果的正確性和符合Rust的習慣性編程風格,但我們希望隨著進一步的投資,這些工具將變得更加高效。”

Code Metal公司的首席執行官Peter Morales則認為DARPA的TRACTOR項目既具有前景又恰逢其時。Code Metal是一家專注于為邊緣硬件轉譯代碼的公司,最近剛籌集了1650萬美元。

“我認為TRACTOR項目在實現上非常可行,我相信它將在網絡安全領域產生重大影響,因為內存安全已成為該領域的重要議題之一。”Morales說道。

當被問及是否同意DARPA所說的軟件社區已經就解決內存安全問題達成共識時,Morales并未完全否定C和C++的價值。

“我認為選擇任何一種語言都涉及權衡,但在內核級別,將一部分代碼遷移到Rust是有意義的。”他補充道。

3.自動代碼轉換仍需直面挑戰

談及自動代碼轉換的挑戰,Morales表示:“這確實是一個DARPA級別的難題。”在嘗試為不同語言之間的語句轉換制定規則時,面臨的各種特殊情況數量之多令人望而卻步。

TRACTOR項目的負責人Wallach強調,他們的目標是實現高度自動化,但這需要克服一系列復雜的技術挑戰。

“例如,大型語言模型在被要求翻譯代碼時有時能給出驚人的答案,但有時也會產生錯誤的答案,”他解釋道。“另一個挑戰在于,C語言允許代碼對指針執行操作,包括算術運算,而Rust則禁止這類操作。要跨越這個差距,需要的遠不止是簡單的逐字翻譯。”

當被問及DARPA是否有特定的代碼庫打算進行轉換時,Wallach回答說:“我們的目標是對整個龐大的開源代碼世界,以及國防工業基礎中使用的代碼進行轉換。雖然我沒有具體的計劃,但像Linux內核這樣的項目由于存在技術上的限制,目前不適合使用Rust。”

DARPA將于2024年8月26日舉辦一場活動,針對計劃為TRACTOR項目提交提案的人士。參與者可以選擇現場參加或遠程參與。有意參加的人士必須在2024年8月19日前完成注冊。

4.來自開發者的聲音

盡管TRACTOR項目獲得了官方的支持,但在相關的新聞討論中,來自民間的聲音似乎并不像上層那樣信心滿滿。

Reddit技術論壇上,有開發者直言他對此事的感受“十分復雜”。

“一方面,我看到了在關鍵系統中確保內存安全的必要性。另一方面……依靠GPT生成的代碼來進行轉換?真的嗎?那些出于安全原因應該轉向Rust的系統,似乎是不應該使用任何AI生成代碼的那種系統。”

不少人對此有同感。他們認可在關鍵系統中確保內存安全的重要性,也不否認這的確是Rust的主要賣點。但是,他們對于依賴AI(如GPT)生成的代碼來實現這種轉換持保留意見。畢竟AI生成的代碼可能存在不確定性,總是讓人難以完全信任,在這一前提下讓其滿足關鍵系統的安全性要求是非常矛盾的。

還有人給出了更為辛辣戲謔的評論:“當一切都變得一團糟時,就是Rust開發者們大賺特賺的時候。”當那些本不適合被轉換到新語言(如 Rust)的舊代碼或系統被強行要求轉換時,當盲目地使用AI來轉轉換舊代碼時,可能會產生更多的問題而不是解決問題。

這些來自民間的聲音也印證了Stack Overflow不久前發布的2024年開發者調查數據。盡管美國政府不斷呼吁減少對C和C++的依賴,但編程語言的受歡迎程度幾乎沒有變化。調查結果顯示,Rust的使用率從13.5%下降到了12.6%,而C和C++的使用率略有增長。目前沒有跡象表明會有大規模從C或C++向其他語言的遷移。

美國國防部大刀闊斧,啟動AI項目:將老舊C代碼全部轉換為Rust-AI.x社區圖片

參考鏈接:

??https://www.theregister.com/2024/08/03/darpa_c_to_rust/??

??https://devclass.com/2024/08/02/little-sign-of-migration-from-c-or-c-to-rust-in-latest-dev-survey-but-postgresql-is-winning-against-mysql/??

本文轉載自??51CTO技術棧??,作者:諾亞

?著作權歸作者所有,如需轉載,請注明出處,否則將追究法律責任
收藏 1
回復
舉報
回復
相關推薦
主站蜘蛛池模板: 欧美xxxx色视频在线观看免费 | 日韩精品av一区二区三区 | 黄色成人在线网站 | 国产精品自拍av | 国产伦一区二区三区四区 | 能看的av网站| 国产精品精品视频一区二区三区 | 国产日韩精品在线 | 亚洲综合电影 | 精品色| 亚洲第一中文字幕 | 精品国产乱码久久久久久丨区2区 | 波多野结衣二区 | 9191av| 亚洲精品一区二区 | 99色综合 | 极品国产视频 | www在线| 免费黄色特级片 | 九九九视频在线观看 | 精品成人av | www.国产一区 | 日日夜夜天天综合 | 精品精品视频 | 久久爱一区 | xnxx 日本免费| 精品视频导航 | 亚洲视频精品在线 | 国产视频二区 | 国产精品综合网 | 成人精品国产免费网站 | 成人免费毛片片v | 亚洲欧美日韩在线不卡 | 国产精品欧美一区二区三区不卡 | 国产精品久久久久久久久久久久午夜片 | 99视频网站| 中国黄色在线视频 | 欧美日一区二区 | 丁香久久| 国产成人福利在线观看 | 午夜精品网站 |