Utgivelse av NNCP 8.8.0, verktøy for overføring av filer/kommandoer i lagre-og-send-modus

Utgivelsen av Node-to-Node CoPy (NNCP), et sett med verktøy for sikker overføring av filer, e-post og kommandoer for kjøring i lagring-og-send-modus. Støtter drift på POSIX-kompatible operativsystemer. Verktøyene er skrevet i Go og distribuert under GPLv3-lisensen.

Verktøyene er fokusert på å hjelpe til med å bygge små peer-to-peer venn-til-venn-nettverk (dusinvis av noder) med statisk ruting for sikker brann-og-glem filoverføringer, filforespørsler, e-post og kommandoforespørsler. Alle overførte pakker er kryptert (ende-til-ende) og er eksplisitt autentisert med kjente offentlige nøkler fra venner. Onion (som i Tor) kryptering brukes for alle mellompakker. Hver node kan fungere som både en klient og en server og bruke både push- og poll-atferdsmodeller.

Forskjellen mellom NNCP og UUCP og FTN (FidoNet Technology Network)-løsninger, i tillegg til den nevnte krypteringen og autentiseringen, er out-of-the-box-støtten for diskettnettverk og datamaskiner fysisk isolert (luftgapet) fra usikre lokale og offentlige nettverk. NNCP har også enkel integrasjon (på nivå med UUCP) med nåværende e-postservere som Postfix og Exim.

Mulige bruksområder for NNCP inkluderer organisering av sending/mottak av e-post til enheter uten permanent tilkobling til Internett, overføring av filer under forhold med en ustabil nettverksforbindelse, sikker overføring av svært store datamengder på fysiske medier, opprettelse av isolerte dataoverføringsnettverk beskyttet mot MitM-angrep, omgå nettverkssensur og overvåking. Siden dekrypteringsnøkkelen kun er i mottakerens hender, uavhengig av om pakken leveres over nettverket eller gjennom fysiske medier, kan ikke en tredjepart lese innholdet, selv om pakken blir snappet opp. På sin side tillater ikke autentisering av digital signatur å lage en fiktiv melding under dekke av en annen avsender.

Blant innovasjonene til NNCP 8.8.0, sammenlignet med de forrige nyhetene (versjon 5.0.0):

  • I stedet for BLAKE2b-hash, brukes den såkalte MTH: Merkle Tree-based Hashing, som bruker BLAKE3-hash, for å sjekke integriteten til filer. Dette lar deg beregne integriteten til den krypterte delen av pakken rett under nedlasting, uten å kreve at den leses i fremtiden. Dette gir også mulighet for ubegrenset parallellisering av integritetskontroller.
  • Det nye krypterte pakkeformatet er fullstendig strømmevennlig når størrelsen på dataene er ukjent på forhånd. Signaleringen av fullføringen av overføringen, med en autentisert størrelse, går direkte inn i den krypterte strømmen. Tidligere, for å finne ut størrelsen på de overførte dataene, var det nødvendig å lagre dem i en midlertidig fil. Så "nncp-exec"-kommandoen har mistet "-use-tmp"-alternativet da det er helt unødvendig.
  • BLAKE2b KDF- og XOF-funksjonene er erstattet av BLAKE3 for å redusere antall kryptografiske primitiver som brukes og forenkle koden.
  • Det er nå mulig å oppdage andre noder på det lokale nettverket gjennom multicasting til adressen "ff02::4e4e:4350".
  • Multicast-grupper har dukket opp (analogt med FidoNet-ekkokonferanser eller Usenet-nyhetsgrupper), slik at en pakke kan sende data til flere gruppemedlemmer, der hver også videresender pakken til resten av underskriverne. Å lese en multicast-pakke krever kunnskap om nøkkelparet (du må eksplisitt være medlem av gruppen), men videresending kan gjøres av hvilken som helst node.
  • Det er nå støtte for eksplisitt bekreftelse av pakkemottak. Avsenderen kan ikke slette pakken etter sending, og venter til den mottar en spesiell ACK-pakke fra mottakeren.
  • Innebygd støtte for Yggdrasil-overleggsnettverket: online-demoner kan fungere som fullverdige uavhengige nettverksdeltakere, uten å bruke tredjeparts Yggdrasil-implementeringer og uten å jobbe fullt ut med IP-stakken på et virtuelt nettverksgrensesnitt.
  • I stedet for strukturerte strenger (RFC 3339), bruker loggen recfile-oppføringer, som kan brukes med GNU Recutils-verktøyene.
  • Eventuelt kan krypterte pakkehoder lagres i separate filer i "hdr/"-underkatalogen, noe som øker betydelig hastighet på pakkelistehenting på filsystemer med store blokkstørrelser, som ZFS. Tidligere krevde henting av pakkehodet kun lesing av en 128KiB blokk fra disk som standard.
  • Å se etter nye filer kan valgfritt bruke kqueue og inotify kjerneundersystemer, noe som gjør færre systemanrop.
  • Verktøy holder færre åpne filer og lukker og åpner dem sjeldnere. Med et stort antall pakker var det tidligere mulig å kjøre inn i en begrensning på maksimalt antall åpne filer.
  • Mange team begynte å vise fremdriften og hastigheten på operasjoner som nedlasting/opplasting, kopiering og behandling (kasting) pakker.
  • Kommandoen "nncp-file" kan sende ikke bare enkeltfiler, men også kataloger, og lage et pax-arkiv med innholdet i farten.
  • Online-verktøy kan eventuelt umiddelbart påkalle pakkekasting etter at en pakke har blitt lastet ned, uten å kjøre en separat "nncp-toss"-demon.
  • Et online anrop til en annen deltaker kan valgfritt forekomme ikke bare når en tidtaker utløses, men også når en utgående pakke vises i spoolkatalogen.
  • Sikrer operabilitet under NetBSD og OpenBSD OS, i tillegg til tidligere støttede FreeBSD og GNU/Linux.
  • "nncp-daemon" er fullt kompatibel med UCSPI-TCP-grensesnittet. Sammen med muligheten til å logge til en spesifisert filbeskrivelse (for eksempel ved å sette "NNCPLOG=FD:4"), er det helt vennlig å kjøre under daemontools-lignende verktøy.
  • Prosjektmontasjen er fullstendig overført til redo-systemet.

Kilde: opennet.ru

Legg til en kommentar