Rilis Arti 0.2.0, implementasi resmi Tor in Rust

Pengembang jaringan Tor anonim mempresentasikan rilis proyek Arti 0.2.0, yang mengembangkan klien Tor yang ditulis dalam bahasa Rust. Proyek ini berstatus pengembangan eksperimental; tertinggal dari klien Tor utama di C dalam hal fungsionalitas dan belum siap untuk menggantikannya sepenuhnya. Pada bulan September direncanakan untuk membuat rilis 1.0 dengan stabilisasi API, CLI dan pengaturan, yang akan cocok untuk penggunaan awal oleh pengguna biasa. Di masa depan yang lebih jauh, ketika kode Rust mencapai level yang sepenuhnya dapat menggantikan versi C, pengembang bermaksud memberikan Arti status implementasi utama Tor dan berhenti mempertahankan implementasi C.

Berbeda dengan implementasi C yang pertama kali dirancang sebagai proxy SOCKS dan kemudian disesuaikan dengan kebutuhan lain, Arti pada awalnya dikembangkan dalam bentuk perpustakaan modular yang dapat disematkan yang dapat digunakan oleh berbagai aplikasi. Selain itu, ketika mengembangkan proyek baru, semua pengalaman pengembangan Tor di masa lalu juga diperhitungkan, yang akan menghindari masalah arsitektur yang diketahui dan menjadikan proyek lebih modular dan efisien. Kode ini didistribusikan di bawah lisensi Apache 2.0 dan MIT.

Alasan penulisan ulang Tor di Rust adalah keinginan untuk mencapai tingkat keamanan kode yang lebih tinggi dengan menggunakan bahasa yang menjamin pengoperasian memori yang aman. Menurut pengembang Tor, setidaknya setengah dari semua kerentanan yang dipantau oleh proyek akan dihilangkan dalam implementasi Rust jika kode tersebut tidak menggunakan blok β€œtidak aman”. Rust juga akan memungkinkan untuk mencapai kecepatan pengembangan yang lebih cepat daripada menggunakan C, karena ekspresi bahasanya dan jaminan ketat yang memungkinkan Anda menghindari membuang waktu untuk memeriksa ulang dan menulis kode yang tidak perlu.

Perubahan paling menonjol dalam rilis 0.2.0 melibatkan upaya untuk meningkatkan kinerja dan keandalan. Peningkatan kinerja pada jaringan yang hanya mendukung IPv6. Mengurangi konsumsi memori untuk menyimpan data dari server direktori. Menambahkan opsi dns_port, yang dengannya Anda dapat mengonfigurasi pengiriman permintaan DNS melalui Tor. Kode baru untuk bekerja dengan konfigurasi telah diusulkan. Menambahkan API untuk menentukan aturan isolasi thread dan mengaktifkan hibernasi (menangguhkan pekerjaan untuk klien yang tidak aktif). Dimungkinkan untuk menghubungkan implementasi kode alternatif untuk bekerja dengan server direktori.

Sebelum publikasi rilis 1.0.0, pengembang bermaksud memberikan Arti dukungan penuh untuk bekerja sebagai klien Tor yang menyediakan akses ke Internet (implementasi dukungan untuk layanan bawang ditunda di masa mendatang). Hal ini termasuk mencapai kesetaraan dengan implementasi C mainstream di berbagai bidang seperti kinerja jaringan, beban CPU, dan keandalan, serta memberikan dukungan untuk semua fitur terkait keamanan.

Sumber: opennet.ru

Tambah komentar