幾個月前,我們在博客上評論了Rust 上的 Tor 項目開發者的意圖,因為在過去的幾年裡,許多重要的開源項目都開始關注這種編程語言,並且隨著時間的推移,它已經開始獲得很多相關性。
現在,正如我們提到的 Tor 匿名網絡的開發人員,這些 揭曉 通過博客文章推出 Arti 項目的第一個 beta 版本 0.1.0 它開發了一個用 Rust 編寫的 Tor 客戶端。
關於阿蒂
對於那些不了解這個項目的人,我可以告訴你 與 C 實現不同, 最初被設計為 SOCKS 代理,後來適應其他需求, Arti 最初是作為模塊化插件庫開發的 可以被多個應用程序使用。
另外,在開發新項目時, 考慮到所有過去的 Tor 開發經驗, 這將避免已知的架構問題並使項目更加模塊化和高效。 該代碼根據 Apache 2.0 和 MIT 許可證分發。
用 Rust 重寫 Tor 的原因是希望實現更高級別的安全性 使用內存安全語言編寫代碼。 根據 Tor 開發人員的說法,如果代碼不使用“不安全”塊,則該項目跟踪的所有漏洞中至少有一半將在 Rust 實現中被刪除。
Rust 還將使您能夠實現比 C 更快的開發速度,因為該語言的表達能力和強大的保護措施可以讓您避免在雙重檢查和編寫不必要的代碼上浪費時間。
Arti 0.1.0 的主要創新
0.1.0版本的變化中, 高級 API 具有基本的穩定性 以及準備與其他項目進行實驗集成的庫。
在這些變化中,提到了 添加 API 來實例化 TorClient, 包括首次使用時在後台編譯和初始化(引導)的能力。 此外,還添加了一個新的用於錯誤處理的高級 API。
今天,我們已經達到了 0.1.0 里程碑:這意味著我們現在認為 Arti 的高級 API 是“基本穩定”的,並準備好實驗性集成到其他項目中。 (我們不承諾任何 API 中斷,但我們不會無緣無故地中斷我們的高級 API。) 計劃於 1.0.0 月推出的 XNUMX 里程碑將代表更強大的 API 承諾。
在1.0.0版本發布之前,開發者打算提供Arti 全力支持 Tor 客戶端工作 它提供了對 Internet 的訪問(對洋蔥服務的支持已被推遲到未來)。
計劃將其包含在內以實現與 C 語言中的主要實現的同等性。 網絡性能、負載和 CPU 可靠性等領域,以及確保支持所有安全相關功能。
需要再次提及的是,該項目處於實驗開發狀態,落後於主要C語言Tor客戶端的功能,並且尚未準備好完全取代它。
計劃於 1.0 月發布 XNUMX 版本,其中包含 API、CLI 和配置穩定性,足以滿足普通用戶的初次使用。
在更遙遠的未來,當 Rust 代碼達到能夠完全取代 C 版本的水平時,開發人員打算讓 Arti 成為 Tor 的主要實現,並停止支持 C 實現。
我們依靠用戶和志願者來發現我們軟件的問題並提出改進方向。 儘管 Arti 尚未準備好用於生產,但您可以嘗試將其作為 SOCKS 代理(如果您願意從源代碼編譯)和嵌入式庫(如果您不介意 API 不穩定)。
終於 如果您有興趣了解更多信息 關於這個新版本,您可以查看詳細信息 在下面的鏈接中。