Lëshimi i NNCP 8.8.0, shërbime për transferimin e skedarëve/komandave në modalitetin ruajtja dhe përcjellja

Lëshimi i Node-to-Node CoPy (NNCP), një grup shërbimesh për transferimin e sigurt të skedarëve, postës elektronike dhe komandave për ekzekutim në modalitetin ruajtës-përcjell. Mbështet funksionimin në sistemet operative të pajtueshme me POSIX. Shërbimet janë shkruar në Go dhe shpërndahen nën licencën GPLv3.

Shërbimet janë të përqendruara në ndihmën për të ndërtuar rrjete të vogla shoku-për-shoqërues (dhjetëra nyje) me rrugëzim statik për transferime të sigurta skedarësh të ndezur dhe harruar, kërkesat e skedarëve, email-et dhe kërkesat e komandës. Të gjitha paketat e transmetuara janë të koduara (nga fundi në fund) dhe vërtetohen në mënyrë eksplicite duke përdorur çelësat e njohur publikë të miqve. Enkriptimi i qepës (si në Tor) përdoret për të gjitha paketat e ndërmjetme. Çdo nyje mund të veprojë edhe si klient edhe si server dhe të përdorë modelet e sjelljes push dhe sondazh.

Dallimi midis zgjidhjeve NNCP dhe UUCP dhe FTN (FidoNet Technology Network), përveç enkriptimit dhe vërtetimit të lartpërmendur, është mbështetja jashtë kutisë për rrjetet floppinet dhe kompjuterët fizikisht të izoluar (të izoluar nga ajri) nga lokale dhe publike të pasigurta. rrjeteve. NNCP gjithashtu përmban integrim të lehtë (në të njëjtin nivel me UUCP) me serverët aktualë të postës si Postfix dhe Exim.

Fushat e mundshme të aplikimit për NNCP përfshijnë organizimin e dërgimit/marrjes së postës në pajisje pa lidhje të përhershme me internetin, transferimin e skedarëve në kushtet e një lidhjeje të paqëndrueshme rrjeti, transferimin e sigurt të sasive shumë të mëdha të të dhënave në media fizike, krijimin e rrjeteve të izoluara të transmetimit të të dhënave të mbrojtura nga Sulmet MitM, duke anashkaluar censurën dhe mbikëqyrjen e rrjetit. Meqenëse çelësi i deshifrimit është vetëm në duart e marrësit, pavarësisht nëse paketa dorëzohet përmes rrjetit ose përmes mediave fizike, një palë e tretë nuk mund të lexojë përmbajtjen, edhe nëse paketa është përgjuar. Nga ana tjetër, vërtetimi i nënshkrimit dixhital nuk lejon krijimin e një mesazhi fiktive nën maskën e një dërguesi tjetër.

Ndër risitë e NNCP 8.8.0, krahasuar me lajmet e mëparshme (versioni 5.0.0):

  • Në vend të hash-it BLAKE2b, i ashtuquajturi MTH: Merkle Tree-based Hashing, i cili përdor hash-in BLAKE3, përdoret për të kontrolluar integritetin e skedarëve. Kjo ju lejon të llogaritni integritetin e pjesës së koduar të paketës menjëherë gjatë shkarkimit, pa kërkuar që ajo të lexohet në të ardhmen. Kjo gjithashtu lejon paralelizimin e pakufizuar të kontrolleve të integritetit.
  • Formati i ri i paketës së koduar është plotësisht i përshtatshëm për transmetimin kur madhësia e të dhënave nuk dihet paraprakisht. Sinjalizimi i përfundimit të transferimit, me një madhësi të vërtetuar, shkon direkt brenda rrymës së koduar. Më parë, për të zbuluar madhësinë e të dhënave të transferuara, ishte e nevojshme t'i ruani ato në një skedar të përkohshëm. Pra komanda “nncp-exec” ka humbur opsionin “-use-tmp” pasi është krejtësisht i panevojshëm.
  • Funksionet BLAKE2b KDF dhe XOF janë zëvendësuar nga BLAKE3 për të zvogëluar numrin e primitivëve kriptografikë të përdorur dhe për të thjeshtuar kodin.
  • Tani është e mundur të zbulohen nyje të tjera në rrjetin lokal përmes multicasting në adresën "ff02::4e4e:4350".
  • Janë shfaqur grupe multicast (analoge me konferencat e jehonës së FidoNet ose grupet e lajmeve Usenet), duke lejuar që një paketë të dërgojë të dhëna tek anëtarët e shumtë të grupit, ku secili gjithashtu transmeton paketën tek pjesa tjetër e nënshkruesve. Leximi i një pakete multicast kërkon njohuri për çiftin e çelësave (duhet të jeni në mënyrë eksplicite një anëtar i grupit), por transmetimi mund të bëhet nga çdo nyje.
  • Tani ka mbështetje për konfirmimin e qartë të marrjes së paketës. Dërguesi mund të mos e fshijë paketën pas dërgimit, duke pritur derisa të marrë një paketë të veçantë ACK nga marrësi.
  • Mbështetje e integruar për rrjetin e mbivendosjes Yggdrasil: demonët në internet mund të veprojnë si pjesëmarrës të pavarur të rrjetit të plotë, pa përdorur implementime të palëve të treta të Yggdrasil dhe pa punuar plotësisht me pirgun IP në një ndërfaqe rrjeti virtual.
  • Në vend të vargjeve të strukturuara (RFC 3339), regjistri përdor hyrjet e riprodhimit, të cilat mund të përdoren me shërbimet e GNU Recutils.
  • Opsionale, kokat e paketave të koduara mund të ruhen në skedarë të veçantë në nëndirektorinë "hdr/", duke përshpejtuar ndjeshëm operacionet e rikthimit të listës së paketave në sistemet e skedarëve me madhësi të mëdha blloku, si ZFS. Më parë, marrja e kokës së paketës kërkonte leximin e vetëm një blloku 128 KiB nga disku si parazgjedhje.
  • Kontrollimi për skedarë të rinj mund të përdorë opsionalisht kqueue dhe të inotifikuar nënsistemet e kernelit, duke bërë më pak thirrje të sistemit.
  • Shërbimet mbajnë më pak skedarë të hapur dhe i mbyllin dhe i rihapin ato më rrallë. Me një numër të madh paketash, më parë ishte e mundur të gjendej në një kufizim në numrin maksimal të skedarëve të hapur.
  • Shumë ekipe filluan të tregojnë përparimin dhe shpejtësinë e operacioneve të tilla si shkarkimi/ngarkimi, kopjimi dhe përpunimi (hedhja) e paketave.
  • Komanda "nncp-file" mund të dërgojë jo vetëm skedarë të vetëm, por edhe drejtori, duke krijuar një arkiv pax me përmbajtjen e tyre në fluturim.
  • Shërbimet online në mënyrë opsionale mund të thërrasin menjëherë hedhjen e paketave pasi një paketë të jetë shkarkuar me sukses, pa ekzekutuar një demon të veçantë "nncp-toss".
  • Një telefonatë në internet me një pjesëmarrës tjetër mund të ndodhë në mënyrë opsionale jo vetëm kur aktivizohet një kohëmatës, por edhe kur një paketë dalëse shfaqet në drejtorinë e bobinës.
  • Siguron funksionim nën NetBSD dhe OpenBSD OS, përveç FreeBSD dhe GNU/Linux të mbështetur më parë.
  • "nncp-daemon" është plotësisht i pajtueshëm me ndërfaqen UCSPI-TCP. Së bashku me aftësinë për të hyrë në një përshkrues skedari të caktuar (për shembull duke vendosur "NNCPLOG=FD:4"), është plotësisht miqësor të ekzekutohet nën programe të ngjashme me daemontools.
  • Asambleja e projektit është transferuar plotësisht në sistemin e ribërjes.

Burimi: opennet.ru

Shto një koment