Eldono de Yggdrasil 0.4, privata reto-efektivigo kuranta super la Interreto

La liberigo de la referenca efektivigo de la protokolo Yggdrasil 0.4 estis publikigita, kiu ebligas al vi disfaldi apartan malcentralizitan privatan IPv6-reton supre de regula tutmonda reto, kiu uzas fin-al-finan ĉifradon por protekti konfidencon. Ĉiuj ekzistantaj aplikoj, kiuj subtenas IPv6, povas esti uzataj por labori per la reto Yggdrasil. La efektivigo estas skribita en Go kaj distribuita sub la LGPLv3-licenco. Linukso, Vindozo, macOS, FreeBSD, OpenBSD kaj Ubiquiti EdgeRouter-platformoj estas subtenataj.

Yggdrasil disvolvas novan vojkoncepton por krei tutmondan malcentralizitan reton, nodojn en kiuj povas konekti rekte unu al la alia en retreĝimo de maŝo (ekzemple, per Wi-Fi aŭ Bluetooth), aŭ interagi tra ekzistantaj IPv6 aŭ IPv4 retoj (reto sur supro de reto). Karakterizaĵo de Yggdrasil estas la mem-organizado de laboro, sen la bezono eksplicite agordi vojigon - informoj pri itineroj estas kalkulitaj surbaze de la loko de la nodo en la reto rilate al aliaj nodoj. Aparatoj estas traktitaj per regula IPv6-adreso, kiu ne ŝanĝiĝas se nodo moviĝas (Yggdrasil uzas la neuzatan adresintervalon 0200::/7).

La tuta Yggdrasil-reto ne estas rigardata kiel kolekto de malsimilaj subretoj, sed kiel ununura strukturita ampleksa arbo kun unu "radiko" kaj ĉiu nodo havanta unu gepatron kaj unu aŭ plurajn infanojn. Tia arba strukturo ebligas al vi konstrui vojon al la celloka nodo, relative al la fonta nodo, uzante la mekanismon "lokilo", kiu determinas la optimuman vojon al la nodo de la radiko.

Arbaj informoj estas distribuitaj inter nodoj kaj ne estas stokitaj centre. Por interŝanĝi vojinformojn, distribuita hashtabelo (DHT) estas uzita, tra kiu nodo povas preni ĉiujn informojn pri la itinero al alia nodo. La reto mem disponigas nur fin-al-finan ĉifradon (transirnodoj ne povas determini la enhavon), sed ne anonimecon (kiam ligite per la Interreto, kunuloj kun kiuj rekta interagado estas efektivigita povas determini la realan IP-adreson, do por anonimeco ĝi estas proponis konekti nodojn per Tor aŭ I2P).

Oni rimarkas, ke kvankam la projekto estas en la alfa-disvolva etapo, ĝi jam estas sufiĉe stabila por ĉiutaga uzo, sed ne garantias retrokongruon inter eldonoj. Por Yggdrasil 0.4, la komunumo subtenas aron da servoj, inkluzive de platformo por gastigi Linuksajn ujojn por gastigado de siaj retejoj, la serĉilon YaCy, Matrix-komunika servilo, IRC-servilo, DNS, VoIP-sistemo, BitTorrent-spurilo, konektpunktomapo, IPFS-enirejo. kaj prokurilo por aliri Tor, I2P kaj clearnet-retojn.

En la nova versio:

  • Nova vojigskemo estis efektivigita kiu ne estas kongrua kun antaŭaj Yggdrasil-eldonoj.
  • Dum establado de TLS-ligoj kun gastigantoj, publika ŝlosilbindado (ŝlosilpinglado) estas implikita. Se ne estis ligado ĉe la konekto, la rezulta ŝlosilo estos asignita al la konekto. Se ligo estis establita, sed la ŝlosilo ne kongruas kun ĝi, la konekto estos malakceptita. TLS kun klavbindado estas difinita kiel la rekomendita metodo por konektiĝi al kunuloj.
  • La kodo por vojigo kaj sesiadministrado estis tute restrukturita kaj reverkita, permesante pliigitan trairon kaj fidindecon, precipe por nodoj kiuj ofte ŝanĝas kunulojn. Kriptografiaj sesioj efektivigas periodan ŝlosilrotacion. Aldonita subteno por Font-vojigo, kiu povas esti uzata por redirekti uzantan IPv6-trafikon. Redisegnita distribuita hashtabelo (DHT) arkitekturo kaj aldonita subteno por DHT-bazita vojigo. La efektivigo de vojaj algoritmoj estis proponita al aparta biblioteko.
  • IPv6 IP-adresoj nun estas generitaj de ed25519 publikaj ŝlosiloj prefere ol ilia X25519 hash, kiu igos ĉiujn internajn IP-ojn ŝanĝiĝi kiam moviĝas al la Yggdrasil 0.4-eldono.
  • Pliaj agordoj estis disponigitaj por serĉi Multicast-kunulojn.

fonto: opennet.ru

Aldoni komenton