Keluaran Arti 0.2.0, pelaksanaan rasmi Tor dalam Rust

Pembangun rangkaian Tor tanpa nama membentangkan keluaran projek Arti 0.2.0, yang membangunkan klien Tor yang ditulis dalam bahasa Rust. Projek ini mempunyai status pembangunan percubaan; ia ketinggalan di belakang klien Tor utama dalam C dari segi fungsi dan belum bersedia untuk menggantikannya sepenuhnya. Pada bulan September ia dirancang untuk mencipta keluaran 1.0 dengan penstabilan API, CLI dan tetapan, yang akan sesuai untuk kegunaan awal oleh pengguna biasa. Pada masa hadapan yang lebih jauh, apabila kod Rust mencapai tahap yang boleh menggantikan sepenuhnya versi C, pembangun berhasrat untuk memberikan Arti status pelaksanaan utama Tor dan berhenti mengekalkan pelaksanaan C.

Tidak seperti pelaksanaan C, yang mula-mula direka bentuk sebagai proksi SOCKS dan kemudian disesuaikan dengan keperluan lain, Arti pada mulanya dibangunkan dalam bentuk perpustakaan boleh terbenam modular yang boleh digunakan oleh pelbagai aplikasi. Di samping itu, apabila membangunkan projek baharu, semua pengalaman pembangunan Tor yang lalu diambil kira, yang akan mengelakkan masalah seni bina yang diketahui dan menjadikan projek itu lebih modular dan cekap. Kod itu diedarkan di bawah lesen Apache 2.0 dan MIT.

Sebab untuk menulis semula Tor dalam Rust adalah keinginan untuk mencapai tahap keselamatan kod yang lebih tinggi dengan menggunakan bahasa yang memastikan operasi selamat dengan memori. Menurut pembangun Tor, sekurang-kurangnya separuh daripada semua kelemahan yang dipantau oleh projek akan dihapuskan dalam pelaksanaan Rust jika kod itu tidak menggunakan blok "tidak selamat". Karat juga akan memungkinkan untuk mencapai kelajuan pembangunan yang lebih pantas daripada menggunakan C, disebabkan oleh ekspresi bahasa dan jaminan ketat yang membolehkan anda mengelak daripada membuang masa untuk menyemak dua kali dan menulis kod yang tidak perlu.

Perubahan yang paling ketara dalam keluaran 0.2.0 melibatkan kerja untuk meningkatkan prestasi dan kebolehpercayaan. Prestasi yang dipertingkatkan pada rangkaian yang hanya menyokong IPv6. Mengurangkan penggunaan memori untuk menyimpan data daripada pelayan direktori. Menambahkan pilihan dns_port, yang mana anda boleh mengkonfigurasi penghantaran permintaan DNS melalui Tor. Kod baharu untuk bekerja dengan konfigurasi telah dicadangkan. Menambahkan API untuk menentukan peraturan pengasingan benang dan mendayakan hibernasi (menggantung kerja untuk pelanggan yang tidak aktif). Ia adalah mungkin untuk menyambung pelaksanaan kod alternatif untuk bekerja dengan pelayan direktori.

Sebelum penerbitan keluaran 1.0.0, pembangun berhasrat untuk menyediakan Arti dengan sokongan penuh untuk bekerja sebagai pelanggan Tor yang menyediakan akses kepada Internet (pelaksanaan sokongan untuk perkhidmatan bawang ditangguhkan untuk masa hadapan). Ini termasuk mencapai pariti dengan pelaksanaan C arus perdana dalam bidang seperti prestasi rangkaian, beban CPU dan kebolehpercayaan, serta menyediakan sokongan untuk semua ciri berkaitan keselamatan.

Sumber: opennet.ru

Tambah komen