Uscita di Arti 2.0.0, implementazione ufficiale di Tor in linguaggio Rust

Gli sviluppatori del progetto Tor hanno pubblicato il rilascio di Arti 2.0.0, una versione ufficialmente sviluppata degli strumenti Tor, scritta in Rust. L'implementazione è stata dichiarata adatta all'uso da parte degli utenti comuni e offre lo stesso livello di privacy, usabilità e stabilità della versione principale in C. Quando il codice Rust raggiungerà il livello in grado di sostituire completamente la versione in C, gli sviluppatori intendono dare a Arti lo status di implementazione principale di Tor e interrompere gradualmente il supporto della versione in C. Il codice è distribuito sotto le licenze Apache 2.0 e MIT.

Arti viene sviluppato inizialmente come una libreria modulare incorporabile, che può essere utilizzata da diverse applicazioni. Nella progettazione di Arti è stata considerata l'esperienza passata nello sviluppo di Tor, permettendo di evitare noti problemi architetturali dovuti al fatto che l'implementazione in C era inizialmente progettata come un proxy SOCKS e successivamente adattata ad altre esigenze.

Oltre alla modernizzazione dell'architettura, la motivazione per riscrivere Tor in Rust è stata il desiderio di aumentare la sicurezza del codice grazie all'utilizzo di un linguaggio che garantisce un lavoro sicuro con la memoria. Secondo gli sviluppatori di Tor, l'utilizzo del linguaggio Rust senza blocchi "unsafe" permetterà di evitare la comparsa di almeno metà di tutte le vulnerabilità tipiche nel progetto. Inoltre, si prevede che Rust aumenti la velocità di sviluppo grazie all'espressività del linguaggio e alle rigorose garanzie, che consentono di non perdere tempo in controlli doppi e nella scrittura di codice superfluo.

Un cambiamento significativo del numero di versione è stato effettuato in conformità con il modello di versionamento semantico applicato dal progetto ed è legato all'introduzione di modifiche che rompono la compatibilità retroattiva. È stata interrotta la supporto delle impostazioni proxy.socks_port e proxy.dns_port, precedentemente dichiarate obsolete, sostituite dalle impostazioni proxy.socks_listen e proxy.dns_listen. È stato interrotto il supporto per la vecchia sintassi di definizione server delle directory (Directory Authority). Sono stati contrassegnati come sperimentali tutte le interfacce API del pacchetto crate arti, che si prevede di spostare in altri pacchetti crate o di eliminare.

Tra le nuove funzionalità spicca il supporto per un nuovo tipo di socket “inet-auto”, per la assegnazione automatica di una porta TCP non utilizzata per il server RPC. È proseguita l'implementazione di funzionalità per i relay e i server di directory. Per i server di directory, è stata svolta un'opera di gestione dei certificati, aggiungendo la possibilità di caricare, verificare e memorizzare certificati. Per i relay è stata implementata una nuova architettura modulare per la gestione delle catene di nodi, supporto per la creazione di canali di comunicazione con altri relay, supporto per l'elaborazione delle richieste di negoziazione delle connessioni e la possibilità di far funzionare il relay in qualità di server al momento di stabilire una connessione TLS.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster