PĂ€rast ĂŒle kahe aasta arendustööd on avaldatud Yggdrasil protokolli 0.5 viimistletud teostus, mis vĂ”imaldab tavalisel globaalsetel vĂ”rkudel kĂ€itada eraldi detsentraliseeritud privaatset IPv6-vĂ”rku, et kaitsta privaatsust, rakendades lĂ”pp-punktide vahelist krĂŒpteerimist. Yggdrasil vĂ”rgus saab kasutada kĂ”iki olemasolevaid IPv6-toega rakendusi. Teostus on kirjutatud Go keeles ja levitatakse LGPLv3 litsentsi alusel. Toetatud platvormid on Linux, OpenWRT, Windows, macOS, FreeBSD, OpenBSD, VyOS ja Ubiquiti EdgeRouter.
Yggdrasil arendab uut marsruutimise kontseptsiooni, et luua globaalne detsentraliseeritud vĂ”rk, mille sĂ”lmed saavad omavahel ĂŒhenduda nii otse kui ka wi-fi vĂ”i Bluetoothi kaudu mesh-vĂ”rgus, ning suhelda olemasolevate IPv6 vĂ”i IPv4 vĂ”rke (vĂ”rk vĂ”rgu peal). Yggdrasili eripĂ€ra on iseorganiseerumine, mis ei nĂ”ua selget marsruutimise seadistamist â teave marsruutide kohta arvutatakse sĂ”lme asukoha pĂ”hjal vĂ”rgu suhtes teiste sĂ”lmede osas. Seadmed adresseeritakse kaudu tavalise IPv6 aadressi, mis ei muutu sĂ”lme liikumisel (Yggdrasilis on kasutusel kasutamata aadresside vahemik 0200::/7).
Kogu Yggdrasili vĂ”rk kĂ€sitletakse mitte kui eraldiseisvate alamvĂ”rkude kogumina, vaid kui ĂŒhtse struktureeritud puu, millel on ĂŒks "juur", kust igal sĂ”lmel on ĂŒks vanem ja ĂŒks vĂ”i mitu jĂ€rglast. Selline puustruktuur vĂ”imaldab moodustada marsruudi sihtsĂ”lmeni lĂ€htepunktist, kasutades mehhanismi "locator", mis mÀÀrab optimaalse tee juurest sĂ”lmeni. Teave puu kohta jaotatakse sĂ”lmede vahel ning ei hoita tsentraliseeritult.
Traffici analĂŒĂŒsi kaitsmiseks vĂ”rgus kasutatakse otsest krĂŒpteerimist (ĂŒlekande sĂ”lmed ei saa sisu mÀÀrata), kuid anonĂŒĂŒmsust ei garanteerita â Interneti kaudu ĂŒhendust luues vĂ”ivad otsekontaktis olevad vĂ”rgusĂ”lmed mÀÀrata tegeliku IP-aadressi, seetĂ”ttu soovitatakse anonĂŒĂŒmsuse tagamiseks ĂŒhendada sĂ”lmed lĂ€bi Tor vĂ”i I2P.
Kuigi projekt on veel alfa-arenduse faasis, on see juba piisavalt stabiilne igapĂ€evaseks kasutamiseks, kuid ei garanteeri tagasivaatavust versioonide vahel. Yggdrasili kogukond toetab mitmeid teenuseid, sealhulgas Linuxi konteinerite majutamise platvormi. hostingu oma saidid, otsimootor YaCy, suhtlusserver Matrix, IRC-server, DNS, VoIP sĂŒsteem, BitTorrenti jĂ€lgija, ĂŒhenduspunktide kaart, IPFS-i vĂ€rav ja proksi Tor, I2P ja clearneti vĂ”rkude juurde pÀÀsemiseks.
Uues versioonis:
- Lisatud on vĂ”imalus autentida ĂŒhendust peeride vahel parooli abil. Parool mÀÀratakse parameetriga âpassword=â, nĂ€iteks âtls://a.b.c.d:12345?password=123456abcdefâ.
- Lisatud on vÔimalus kasutada peeride vaheliseks suhtluseks QUIC protokolli, mis pÔhineb UDP-l. QUIC-i kasutamiseks tuleb mÀÀrata URI-skeem quic:// direktiivides Listen ja Peers, kuid QUIC-i tugi pole veel nii pÔhjalikult testitud kui TCP ja TLS.
- Lisatud on valik PrivateKeyPath, mis vĂ”imaldab salvestada privaatvĂ”tme PEM-formaadis eraldi pĂ”hikonfiguratsioonifailist. VĂ”tme eraldi faili eksportimiseks vĂ”ib kasutada valikut â-exportkeyâ.
- Onu uusi reititysmalli, joka ei ole yhteensopiva aiempien versioiden kanssa (Yggdrasil 0.5:n solmut eivÀt voi olla vuorovaikutuksessa Yggdrasil 0.4:ÀÀn perustuvien isÀntien kanssa), mutta ratkaisee suurimman osan 0.4-version haarassa esiintyneistÀ vakaus- ja skaalautuvuusongelmista, samalla kun se merkittÀvÀsti vÀhentÀÀ muistinkulutusta ja vÀhentÀÀ liikennettÀ verkkoaktiivisuuden puuttuessa.
Uudessa toteutuksessa yhteyksien ja solmujen jÀljittÀmiseen kÀytetÀÀn Bloom-suodattimen todennÀköisyysrakennetta. Hajautettua hakemistoa (DHT) ei enÀÀ kÀytetÀ reititystietojen ja avoimien avainten sitomisen vaihdossa puumaisessa verkossa.
Paikallisen johdonmukaisuuden yllÀpitÀmiseksi ja riippuvuuden vÀhentÀmiseksi juurisolmuista solmut siirtÀvÀt nyt erikseen tietoa jokaisesta linkistÀ, jota seurataan CRDT-rakenteissa. Reitityksen sijaan kÀytetÀÀn ahneeseen algoritmiin perustuvaa reititystÀ (kyselyt ohjataan lÀhimmÀlle naapurisolmulle).
Ăhenduste ning multikastimise lepingutes kasutatavad formaadid on ĂŒmber töötatud parema skaleeritavuse huvides. Sidumiste töötlemise kood on ĂŒmber kirjutatud usaldusvÀÀrse paari oleku jĂ€lgimise tagamiseks. Iga konfigureeritud paari jaoks on tagatud eraldi jĂ€lgimine korduvate ĂŒhenduste vaheliste intervallide jaoks.
Vigade tuvastamiseks on eraldiseisvate keepalive-pĂ€ringute asemel kasutusele vĂ”etud kinnituste kaudu edastatavad liikluseteated, mis vĂ”imaldavad vĂ€ltida liiklust vĂ”rgu passiivsuse korral (nt vĂ€hendades energiatarbimist mobiilseadmetes, vĂ€listades liikluse tĂŒhikĂ€igul).
Allikas: opennet.ru
