Arti'nin ilk kararlı sürümü, Tor'un Rust'ta resmi uygulaması

Anonim Tor ağının geliştiricileri, Rust'ta yazılmış bir Tor istemcisi geliştiren Arti projesinin ilk kararlı sürümünü (1.0.0) yarattı. 1.0 sürümü, genel kullanıcıların kullanımına uygun olarak işaretlenmiştir ve ana C uygulamasıyla aynı düzeyde gizlilik, kullanılabilirlik ve kararlılık sağlar. Arti işlevselliğinin diğer uygulamalarda kullanılması için sunulan API de stabil hale getirildi. Kod Apache 2.0 ve MIT lisansları altında dağıtılmaktadır.

Başlangıçta SOCKS proxy'si olarak tasarlanan ve daha sonra diğer ihtiyaçlara göre uyarlanan C uygulamasından farklı olarak Arti, başlangıçta çeşitli uygulamalar tarafından kullanılabilen modüler, gömülebilir bir kütüphane biçiminde geliştirildi. Ayrıca yeni bir proje geliştirilirken tüm geçmiş Tor geliştirme deneyimleri dikkate alınır, bu da bilinen mimari sorunları ortadan kaldırır ve projeyi daha modüler ve verimli hale getirir.

Tor'un Rust'ta yeniden yazılmasının nedeni, bellek açısından güvenli bir dil kullanarak daha yüksek düzeyde kod güvenliği elde etme arzusuydu. Tor geliştiricilerine göre, eğer kod "güvenli olmayan" bloklar kullanmıyorsa, proje tarafından izlenen tüm güvenlik açıklarının en az yarısı Rust uygulamasında ortadan kaldırılacaktır. Rust ayrıca, dilin ifade gücü ve çift kontrol ve gereksiz kod yazmakla zaman kaybetmekten kaçınmanıza olanak tanıyan katı garantiler nedeniyle, C kullanmaya göre daha hızlı geliştirme hızlarına ulaşmayı da mümkün kılacaktır.

İlk versiyonun geliştirilmesinin sonuçlarına dayanarak Rust dilinin kullanımı kendini haklı çıkardı. Örneğin, Rust kodunda her aşamada C'deki karşılaştırılabilir geliştirmeden daha az hata yapıldığı fark edildi - geliştirme sürecinde ortaya çıkan hatalar esas olarak mantık ve anlambilimle ilgiliydi. Bazıları tarafından dezavantaj olarak görülen aşırı talepkar Rusc derleyicisi aslında bir lütuf olarak ortaya çıktı, çünkü kod derlenip testleri geçerse doğruluk olasılığı önemli ölçüde artıyor.

Yeni varyant üzerinde çalışmak aynı zamanda geliştirme hızındaki artışı da doğruladı; bunun nedeni yalnızca işlevselliğin mevcut bir şablona göre yeniden oluşturulması değil, aynı zamanda Rust'un daha etkileyici anlambilimi, kullanışlı işlev kitaplıkları ve Rust'un kod güvenliğinin kullanılmasıydı. Yetenekler. Dezavantajlardan biri, ortaya çıkan derlemelerin büyük boyutudur - standart Rust kitaplığı sistemlerde varsayılan olarak sağlanmadığından, indirilmek üzere sunulan paketlere dahil edilmesi gerekir.

1.0 sürümü esas olarak müşteri rolündeki temel çalışmalara odaklanmaktadır. Sürüm 1.1'de, eklenti aktarımı ve engellemeyi atlamak için köprüler için desteğin uygulanması planlanmaktadır. Sürüm 1.2'nin, soğan hizmetlerini ve tıkanıklık kontrol protokolü (RTT Tıkanıklık Kontrolü) ve DDoS saldırılarına karşı koruma gibi ilgili özellikleri desteklemesi bekleniyor. Arti'nin çeşitli programlama dillerinde kodda kullanılmasına yönelik bağlamalar da sunacak olan 2.0 şubesi için C istemcisiyle eşliğin sağlanması planlanıyor.

Önümüzdeki birkaç yıl içinde çalışmalar, röleleri ve dizin sunucularını çalıştırmak için gereken işlevselliğin uygulanmasına odaklanacak. Rust kodu, C versiyonunun tamamen yerini alabilecek bir seviyeye ulaştığında, geliştiriciler Arti'ye Tor'un ana uygulamasının durumunu vermeyi ve C uygulamasını sürdürmeyi durdurmayı planlıyor. Sorunsuz bir geçiş sağlamak için C sürümü aşamalı olarak kullanımdan kaldırılacaktır.

Kaynak: opennet.ru

Yorum ekle