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.
KĂ«to programe janĂ« tĂ« dizajnuara pĂ«r tĂ« ndihmuar nĂ« ndĂ«rtimin e rrjeteve tĂ« vogla peer-to-peer (dhjetĂ«ra nyje) me rrugĂ«zim statik pĂ«r transferime tĂ« sigurta skedarĂ«sh "ndez dhe harro", kĂ«rkesa pĂ«r skedarĂ«, email dhe kĂ«rkesa pĂ«r ekzekutim komandash. TĂ« gjitha paketat e transmetuara janĂ« tĂ« enkriptuara nga fillimi nĂ« fund dhe autentifikohen nĂ« mĂ«nyrĂ« tĂ« qartĂ« duke pĂ«rdorur çelĂ«sa publikĂ« tĂ« njohur tĂ« kolegĂ«ve. Enkriptimi "onion" (si Tor) zbatohet nĂ« tĂ« gjitha paketat e ndĂ«rmjetme. Ădo nyje mund tĂ« veprojĂ« si klient ose si host. server dhe pĂ«rdorin modelet e sjelljes sĂ« shtytjes dhe tĂ« sondazhit.
NNCP ndryshon nga zgjidhjet UUCP dhe FTN (FidoNet Technology Network), pĂ«rveç enkriptimit dhe autentifikimit tĂ« lartpĂ«rmendur, duke ofruar mbĂ«shtetje tĂ« gatshme pĂ«r rrjetet me disketa dhe kompjuterĂ«t e izoluar fizikisht (me hapĂ«sirĂ« ââajri) nga rrjetet lokale dhe publike tĂ« pasigurta. NNCP gjithashtu ofron integrim tĂ« lehtĂ« (si UUCP) me shĂ«rbimet aktuale tĂ« email-it. serverat, siç janĂ« 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
