Lansarea NNCP 8.8.0, utilitare pentru transferul de fișiere/comenzi în modul store-and-forward

A avut loc lansarea Node-to-Node CoPy (NNCP), un set de utilitare pentru transferul sigur de fișiere, emailuri și comenzi pentru execuție în modul store-and-forward. Se susține funcționarea pe sisteme de operare compatibile POSIX. Utilitarele sunt scrise în limbajul Go și sunt distribuite sub licența GPLv3.

Utilitarele sunt orientate spre ajutarea la construirea unor rețele peer-to-peer mici (câteva noduri) cu rutare statică pentru transferul sigur de fișiere în modul fire-and-forget, cereri pentru fișiere, emailuri și cereri pentru execuția de comenzi. Toate pachetele transmise sunt criptate (end-to-end) și sunt explicit autentificate prin chei publice cunoscute ale cunoștințelor. Criptarea onion (ca în Tor) este aplicată pentru toate pachetele intermediare. Fiecare nod poate acționa atât ca client, cât și server și să utilizeze atât modelul push, cât și modelul poll de comportament.

Diferența dintre NNCP și soluțiile UUCP și FTN (FidoNet Technology Network), pe lângă criptarea și autentificarea menționate anterior, este suportul nativ pentru rețele floppinet și computere fizic izolate (air-gapped) de rețelele locale și publice nesigure. O caracteristică a NNCP este, de asemenea, integrarea ușoară (la fel ca și UUCP) cu serverele de poștă existente servers, cum ar fi Postfix și Exim.

Printre posibilele domenii de aplicare ale NNCP se numără organizarea trimiterii/primei emailuri pe dispozitive fără o conexiune constantă la internet, transferul de fișiere în condiții de conectivitate instabilă, transferul sigur al unor volume foarte mari de date pe suporturi fizice, crearea unor rețele de transfer de date izolate protejate împotriva atacurilor MitM, ocolirea cenzurii de rețea și a supravegherii. Deoarece cheia pentru decriptare se află doar la destinatar, indiferent de căile de livrare a pachetului prin rețea sau prin suporturi fizice, o terță persoană nu poate citi conținutul, chiar și interceptând expedierea. În schimb, autentificarea prin semnătură digitală nu permite crearea unei expediții fictive sub aparența unui alt expeditor.

Printre noutățile NNCP 8.8.0, comparativ cu știrea anterioară (versiunea 5.0.0):

  • În locul hash-ului BLAKE2b pentru verificarea integrității fișierelor, este utilizat așa-numitul MTH: Hashing bazat pe Arborele Merkle, care folosește hash-ul BLAKE3. Aceasta permite calcularea integrității părții criptate a pachetului chiar în timpul descărcării, fără a necesita citirea ei ulterior. De asemenea, oferă posibilitatea verificării integrității în mod nelimitat în paralel.
  • Noul format de pachete criptate este complet prietenos pentru streaming, atunci când dimensiunea datelor nu este cunoscută dinainte. Semnalizarea finalizării transmiterii, cu dimensiunea autentificată, se face chiar în interiorul fluxului criptat. Anterior, pentru a afla dimensiunea datelor transmise, era necesară salvarea lor într-un fișier temporar. Astfel, opțiunea „-use-tmp” din comanda „nncp-exec” a devenit complet inutilă.
  • Funcțiile KDF și XOF BLAKE2b au fost înlocuite cu BLAKE3 pentru a reduce numărul de primitive criptografice utilizate și a simplifica codul.
  • A apărut posibilitatea de a descoperi alte noduri în rețeaua locală prin difuzare multicast la adresa „ff02::4e4e:4350”.
  • Au apărut grupuri multicast (analogice cu conferințele echo FidoNet sau grupurile de știri Usenet), care permit trimiterea de date către mai mulți membri ai grupului printr-un singur pachet, fiecare retransmițând pachetul celorlalți abonați. Citirea pachetului multicast necesită cunoașterea unei perechi de chei (trebuie să fii explicit membru al grupului), dar retransmiterea poate fi efectuată de orice nod.
  • A fost integrată suportul pentru confirmarea explicită a primirii pachetului. Expeditorul poate să nu șteargă pachetul după trimitere, așteptând recepția unui pachet special ACK de la destinatar.
  • A fost integrat suportul pentru rețeaua overlay Yggdrasil: demonii online pot funcționa ca participanți compleți în rețea, fără a utiliza implementări externe Yggdrasil și fără a interacționa complet cu stiva IP pe o interfață de rețea virtuală.
  • În loc de șiruri structurate (RFC 3339), jurnalul folosește înregistrări recfile, cu care se pot utiliza uneltele GNU Recutils.
  • Opțional, antetele pachetelor criptate pot fi stocate în fișiere separate în subdirectorul „hdr/”, accelerând semnificativ operațiile de obținere a listei de pachete pe sisteme de fișiere cu dimensiuni mari de bloc, cum ar fi ZFS. Anterior, obținerea antetului pachetului necesita în mod implicit citirea de pe disc a întregului bloc de 128KiB.
  • Verificarea existenței de fișiere noi poate folosi opțional subsistemele nucleului kqueue și inotify, reducând numărul apelurilor de sistem.
  • Utilitățile mențin un număr mai mic de fișiere deschise, închid și redeschid mai rar fișierele. La un număr mare de pachete, anterior exista riscul de a atinge limita maximă a fișierelor deschise.
  • Multe comenzi au început să arate progresul și viteza de executare a operațiunilor, cum ar fi descărcarea/încărcarea, copierea și procesarea (toss) pachetelor.
  • Comanda „nncp-file” poate trimite nu doar fișiere individuale, ci și directoare, creând pe loc un arhivă pax cu conținutul acestora.
  • Utilitățile online pot apela opțional imediat procesul de procesare a pachetelor (tossing) după descărcarea reușită a pachetului, fără a lansa un demon separat „nncp-toss”.
  • Apelul online al unei alte entități poate avea loc opțional nu doar ca rezultat al unui eveniment de temporizare, ci și la apariția unui pachet ieșitor în directorul spool.
  • Funcționalitatea este asigurată sub sistemele de operare NetBSD și OpenBSD, pe lângă cele anterior suportate FreeBSD și GNU/Linux.
  • „nncp-daemon” este complet compatibil cu interfața UCSPI-TCP. Împreună cu capacitatea de jurnalizare în descriptorul de fișier specificat (de exemplu, setând „NNCPLOG=FD:4”), este complet prietenos pentru rularea sub utilitare similare cu daemontools.
  • Construirea proiectului a fost complet translatată pe sistemul redo.

Sursa: opennet.ro

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster