Portál AbcLinuxu, 11. května 2025 16:50

Arti, implementace Toru v Rustu

Příspěvek na blogu Toru představuje projekt Arti. Jedná se o implementaci Toru v programovacím jazyce Rust. Projekt je sponzorován Zcash Open Major Grants (ZOMG).

10.7.2021 17:33 | Ladislav Hagara | Zajímavý projekt


Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře. , Tisk

Vložit další komentář

10.7.2021 22:13 Oheň na střeše
Rozbalit Rozbalit vše Re: Arti, implementace Toru v Rustu
Odpovědět | Sbalit | Link | Blokovat | Admin
Hlavně ať vás nikoho nenapadne to používat, chybí tomu základní funkce, bezpečnost i soukromí:

So far, it's a not-very-secure not-very-complete client.

Don't use Arti for real privacy yet.

Arti doesn't yet run as a relay at all. It doesn't support Tor's anti-censorship features yet, and it can't connect to onion services yet.

Finally, note that today's Arti is missing several key security features for privacy: you shouldn't use it for browsing if you have actual privacy needs at all.

11.7.2021 09:43 rustofil
Rozbalit Rozbalit vše Re: Arti, implementace Toru v Rustu
To je jenom hate speech protože je to napsané v Rustu. Každej ví že Rust nejlepší a nejbezpečnější.
cezz avatar 11.7.2021 12:13 cezz | skóre: 24 | blog: dm6
Rozbalit Rozbalit vše Re: Arti, implementace Toru v Rustu
Z toho co som cital je Arti viac zamerane na to aby sa primarne dal pouzit ako zabudovana kniznica a nie ako SOCKS proxy, co je primarny use case tej originalnej implementacie. Ak tymto sposobom vzniknu viacere aplikacie so vstavanou podporou Tor, tak ta snaha nebude marna.

Ale som zvedavy kam to dotiahnu. Voci tymto re-implementaciam "lebo povodny kod bol prilis komplikovany" som trochu skepticky, casto sa ukaze ze bol na ten "spaghetti" kod dovod.
Computers are not intelligent. They only think they are.
xkucf03 avatar 11.7.2021 14:36 xkucf03 | skóre: 49 | blog: xkucf03
Rozbalit Rozbalit vše Přemýšlet nad návrhem rozhraní, API – pak teprve implementovat
Z toho co som cital je Arti viac zamerane na to aby sa primarne dal pouzit ako zabudovana kniznica a nie ako SOCKS proxy, co je primarny use case tej originalnej implementacie. Ak tymto sposobom vzniknu viacere aplikacie so vstavanou podporou Tor, tak ta snaha nebude marna.

To je určitě fajn, ale tady je základem dobře navržené a stabilní API, na které se budou moci aplikace napojovat. Tím návrhem rozhraní by se mělo začít. Dneska je bohužel stále základem API ve formě céčkovských funkcí, na které se dá napojit prakticky z libovolného jazyka.

A když už to API budou mít, tak mohou upravit původní implementaci, aby ho poskytovala. A současně s tím psát jinou v lepším jazyce.

Na druhou stranu: SOCKS sice znamená, že musím spustit minimálně dva procesy a ty spolu komunikují přes soket (místo toho, aby se jen volaly funkce v rámci jednoho jazyka a procesu), což má nějakou režii, ale zároveň je to krásně univerzální a prakticky nikdy nebude úzkým hrdlem to spojení s místní proxy (Tor nebo podobná síť je řádově pomalejší). Místo Toru pak můžu použít třeba SOCKS proxy poskytovanou SSH klientem nebo čímkoli jiným a ten program nemusím vůbec měnit. Je tam volnější vazba, není tam pevná závislost na jedné konkrétní knihovně (Toru, I2P atd.).

Kdyby byla snaha, tak by šlo skloubit obojí dohromady. Mít jednoduché abstraktní API v podobě céčkovských funkcí a jednou z jeho implementací by byla Tor knihovna (psaná klidně v tom Rustu, D, Go, C++ nebo čemkoli modernějším než C) tzn. běželo by vše v rámci jednoho procesu a jinou implementací toho API by bylo napojení na SOCKS proxy nebo třeba HTTP proxy (CONNECT), což by byl jen tenký adaptér, který by se spojil s jiným procesem reálně poskytujícím tu proxy.

Nevím, jaké diskuse o návrhu probíhali u tohoto projektu a jak dlouho nad tím rozhraním někdo přemýšlel, ale u spousty dnešního softwaru mi přijde, že lidi hned začnou psát kód, aniž by měli pořádně rozmyšlený ten návrh, ale hlavně, že to je v moderním jazyce. (náhodný příklad – podobné věci potkávám každou chvíli)

Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
cezz avatar 11.7.2021 17:09 cezz | skóre: 24 | blog: dm6
Rozbalit Rozbalit vše Re: Přemýšlet nad návrhem rozhraní, API – pak teprve implementovat
Ked sa pozries na roadmap, to stabilne API este nejaku chvilu nebude a ocividne aj na tom planuju popracovat.

Co sa tyka toho SOCKS, myslim, ze hlavny problem je ze tazsie mozes reagovat na nejake zmeny stavu na strane Tor-u, aj to spominaju v tom dokumente a planuju mat pre to nejake API. Neviem ci ta terajsia C kniznica nieco take ma.
Computers are not intelligent. They only think they are.
11.7.2021 12:39 m.
Rozbalit Rozbalit vše Re: Arti, implementace Toru v Rustu
Odpovědět | Sbalit | Link | Blokovat | Admin
Vynalezli jsme kolo, v Rustu.
12.7.2021 21:33 mln
Rozbalit Rozbalit vše Re: Arti, implementace Toru v Rustu
Odpovědět | Sbalit | Link | Blokovat | Admin
Preco takyto bezpecnostny softver ako Tor nenapisu v jednoduchom blbuvzdornejsom lahko debugovatelnom jazyku typu Smalltalk (napr moderny Pharo) ? Ty by mala may bezpecnost omnoho vyssiu prioritu nez rychlost ( C jazyk).

P S. Zivim sa programovanim embedded v C jazyku. Niektori zufali ludia zabijaju cas vytvaranim standardov typu Misra C (v podstate C bez pointerov a pokrocilejsich veci) namiesto toho aby vytvorili kompilatory pre bezpecnejsie jazyky pre mikrokontrolery. Serie ma to, deprimuje ma to. Pharo Smalltalk me vratil chut znova programovat vlastne veci doma pre zabavu.
12.7.2021 21:52 blb
Rozbalit Rozbalit vše Re: Arti, implementace Toru v Rustu
Použils někdy Pharo? Neuvěřitelně pomalé a nenazrané.
Smalltalk je celkově nevhodný pro bezpečnostní věci, kvůli své memory image fičuře. Nemůžeš udělat komplet reset stavu programu, kromě zálohy toho image na disku.
13.7.2021 13:43 jakub
Rozbalit Rozbalit vše Re: Arti, implementace Toru v Rustu
Odpovědět | Sbalit | Link | Blokovat | Admin
Jak poznáš, že někdo něco napsal v rustu? Nijak, řekne ti to.

Založit nové vláknoNahoru


ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.