Arti รุ่นเบต้ารุ่นแรก ซึ่งเป็นการใช้งาน Tor ใน Rust

นักพัฒนาเครือข่าย Tor ที่ไม่ระบุชื่อนำเสนอโครงการ Arti รุ่นเบต้าแรก (0.1.0) ซึ่งพัฒนาไคลเอนต์ Tor ที่เขียนด้วยภาษา Rust โครงการนี้มีสถานะเป็นการพัฒนาแบบทดลอง ซึ่งล้าหลังการทำงานของไคลเอนต์ Tor หลักในภาษา C และยังไม่พร้อมที่จะแทนที่อย่างสมบูรณ์ ในเดือนกันยายน มีการวางแผนที่จะสร้างเวอร์ชัน 1.0 พร้อมความเสถียรของ API, CLI และการตั้งค่า ซึ่งจะเหมาะสำหรับการใช้งานครั้งแรกโดยผู้ใช้ทั่วไป ในอนาคตอันไกลโพ้น เมื่อโค้ด Rust ถึงระดับที่สามารถแทนที่เวอร์ชัน C ได้อย่างสมบูรณ์ นักพัฒนาตั้งใจที่จะให้สถานะของ Arti ในการใช้งานหลักของ Tor และหยุดการบำรุงรักษาการใช้งาน C

แตกต่างจากการใช้งาน C ซึ่งได้รับการออกแบบครั้งแรกเป็นพร็อกซี SOCKS จากนั้นปรับแต่งให้เหมาะกับความต้องการอื่นๆ Arti ได้รับการพัฒนาในช่วงแรกในรูปแบบของไลบรารีแบบฝังตัวแบบโมดูลาร์ที่สามารถใช้งานได้โดยแอปพลิเคชันต่างๆ นอกจากนี้ เมื่อพัฒนาโปรเจ็กต์ใหม่ ประสบการณ์การพัฒนา Tor ที่ผ่านมาทั้งหมดจะถูกนำมาพิจารณาด้วย ซึ่งจะหลีกเลี่ยงปัญหาทางสถาปัตยกรรมที่ทราบ และทำให้โปรเจ็กต์เป็นแบบแยกส่วนและมีประสิทธิภาพมากขึ้น รหัสนี้เผยแพร่ภายใต้ลิขสิทธิ์ Apache 2.0 และ MIT

เหตุผลในการเขียน Tor ใหม่ใน Rust คือความปรารถนาที่จะบรรลุระดับความปลอดภัยของโค้ดที่สูงขึ้นโดยใช้ภาษาที่รับรองการทำงานที่ปลอดภัยด้วยหน่วยความจำ ตามที่นักพัฒนาของ Tor กล่าวไว้ อย่างน้อยครึ่งหนึ่งของช่องโหว่ทั้งหมดที่โปรเจ็กต์ตรวจสอบจะถูกกำจัดในการใช้งานแบบ Rust หากโค้ดไม่ได้ใช้บล็อกที่ "ไม่ปลอดภัย" นอกจากนี้ Rust ยังช่วยให้พัฒนาได้เร็วกว่าการใช้ C เนื่องจากภาษามีความชัดเจนและการรับประกันที่เข้มงวดซึ่งช่วยให้คุณหลีกเลี่ยงการเสียเวลาในการตรวจสอบซ้ำและเขียนโค้ดที่ไม่จำเป็น

ท่ามกลางการเปลี่ยนแปลงในรุ่น 0.1.0 มีการรักษาเสถียรภาพขั้นพื้นฐานของ API ระดับสูง และการทำให้ไลบรารีพร้อมสำหรับการบูรณาการการทดลองกับโปรเจ็กต์อื่น ๆ ท่ามกลางการเปลี่ยนแปลงต่างๆ มีการกล่าวถึงการเพิ่ม API สำหรับการสร้างอินสแตนซ์ TorClient รวมถึงความสามารถในการสร้างและเริ่มต้น (บูตสแตรป) ในเบื้องหลังเมื่อใช้งานครั้งแรก นอกจากนี้ ยังมีการเพิ่ม API ระดับสูงใหม่สำหรับการจัดการข้อผิดพลาดอีกด้วย

ก่อนที่จะเผยแพร่รุ่น 1.0.0 นักพัฒนาตั้งใจที่จะให้การสนับสนุน Arti อย่างเต็มที่สำหรับการทำงานเป็นไคลเอนต์ Tor ที่ให้การเข้าถึงอินเทอร์เน็ต (การดำเนินการสนับสนุนสำหรับบริการหัวหอมจะถูกเลื่อนออกไปในอนาคต) ซึ่งรวมถึงการบรรลุความเท่าเทียมกับการใช้งาน C กระแสหลักในด้านต่างๆ เช่น ประสิทธิภาพเครือข่าย โหลด CPU และความน่าเชื่อถือ รวมถึงการให้การสนับสนุนคุณสมบัติที่เกี่ยวข้องกับความปลอดภัยทั้งหมด

ที่มา: opennet.ru

เพิ่มความคิดเห็น