Vydání NNCP 8.8.0, nástroje pro přenos souborů/příkazů v režimu store-and-forward

Vydání Node-to-Node CoPy (NNCP), sady nástrojů pro bezpečný přenos souborů, e-mail a příkazy ukládání a předávání. Podporuje práci na operačních systémech kompatibilních s POSIX. Nástroje jsou napsány v jazyce Go a distribuovány pod licencí GPLv3.

Nástroje jsou navrženy tak, aby pomáhaly budovat malé sítě typu peer-to-peer friend-to-friend (desítky uzlů) se statickým směrováním pro bezpečný přenos souborů, žádostí o soubory, e-mailů a požadavků na provádění příkazů. Všechny přenášené pakety jsou šifrovány (end-to-end) a explicitně ověřeny proti známým veřejným klíčům přátel. Cibulové (jako v Tor) šifrování je aplikováno na všechny mezilehlé pakety. Každý uzel může fungovat jako klient i jako server a používat chování push i dotazování.

Rozdílem mezi řešeními NNCP a UUCP a FTN (FidoNet Technology Network) je kromě výše zmíněného šifrování a autentizace podpora přímo z krabice pro floppynetové sítě a počítače, které jsou fyzicky izolované (air-gapped) od nezabezpečených lokálních a veřejných sítí. . NNCP se také vyznačuje snadnou integrací (na stejné úrovni jako UUCP) se současnými poštovními servery, jako jsou Postfix a Exim.

Z možných oblastí použití NNCP je organizace odesílání / přijímání pošty na zařízení bez trvalého připojení k internetu, přenos souborů v podmínkách nestabilního síťového připojení, bezpečný přenos velmi velkého množství dat na fyzických médiích, vytváření izolovaných dat sítě chráněné před útoky MitM, obcházení síťové cenzury a dohledu. Vzhledem k tomu, že dešifrovací klíč je pouze u příjemce, bez ohledu na to, jak je paket doručen po síti nebo prostřednictvím fyzického média, třetí strana nemůže přečíst obsah, a to ani tím, že zachytí odesílání. Autentizace digitálního podpisu zase neumožňuje vytvořit fiktivní zásilku pod rouškou jiného odesílatele.

Mezi inovacemi NNCP 8.8.0 oproti předchozí novince (verze 5.0.0):

  • Namísto hashe BLAKE2b se ke kontrole integrity souborů používá takzvaný hash založený na MTH: Merkle Tree pomocí hashe BLAKE3. To vám umožní vypočítat integritu zašifrované části balíčku přímo během stahování, aniž by bylo nutné jej číst později. Umožňuje také neomezenou paralelizaci kontrol integrity.
  • Nový formát šifrovaných paketů je zcela vhodný pro streamování, když velikost dat není předem známa. Signalizace dokončení přenosu s ověřenou velikostí jde přímo do šifrovaného toku. Dříve bylo pro zjištění velikosti přenášených dat nutné je uložit do dočasného souboru. Takže příkaz "nncp-exec" ztratil možnost "-use-tmp", protože je zcela zbytečná.
  • Funkce BLAKE2b KDF a XOF byly nahrazeny BLAKE3, aby se snížil počet používaných kryptografických primitiv a zjednodušil se kód.
  • Nyní je možné detekovat další uzly v lokální síti pomocí multicastingu na adrese "ff02::4e4e:4350".
  • Objevily se skupiny vícesměrového vysílání (analogické k echo konferencím FidoNet nebo diskusním skupinám Usenet), které umožňovaly jednomu paketu posílat data mnoha členům skupiny, kde každý také předává paket dalším signatářům. Čtení paketu vícesměrového vysílání vyžaduje znalost páru klíčů (musíte být výslovně členem skupiny), ale přenos může provádět kterýkoli uzel.
  • Přidána podpora pro výslovné potvrzení přijetí paketu. Odesílatel se může rozhodnout nevymazat paket poté, co byl odeslán, a čekat na speciální ACK paket, který má být přijat od příjemce.
  • Vestavěná podpora pro překryvnou síť Yggdrasil: online démoni mohou fungovat jako plnohodnotní nezávislí účastníci sítě, bez použití implementací Yggdrasil třetích stran a plnohodnotné práce se zásobníkem IP na rozhraní virtuální sítě.
  • Místo strukturovaných řetězců (RFC 3339) používá protokol položky recfile, které lze použít s nástroji GNU Recutils.
  • Volitelně mohou být zašifrované hlavičky paketů uloženy v samostatných souborech v podadresáři „hdr/“, což výrazně urychluje operace se seznamem paketů na velkých blokových souborových systémech, jako je ZFS. Dříve vyžadovalo načtení hlavičky paketu ve výchozím nastavení pouze 128KiB blok ke čtení z disku.
  • Kontrola nových souborů může volitelně používat kqueue a inotify jádrové subsystémy, čímž se sníží systémová volání.
  • Utility uchovávají méně otevřených souborů, je méně pravděpodobné, že budou uzavřeny a znovu otevřeny. Při velkém počtu balíčků bylo dříve možné narazit na limit maximálního počtu otevřených souborů.
  • Mnoho příkazů začalo ukazovat průběh a rychlost operací, jako je stahování/nahrávání, kopírování a zpracování (přehazování) balíčků.
  • Příkaz "nncp-file" může posílat nejen jednotlivé soubory, ale také adresáře a vytvářet tak archiv pax s jejich obsahem za běhu.
  • Online utility mohou volitelně vyvolat proces zpracování balíčku (hození) ihned po úspěšném stažení balíčku, aniž by spouštěly samostatný démon „nncp-toss“.
  • Online hovor s jiným účastníkem může volitelně proběhnout nejen při spuštění časovače, ale také tehdy, když se v adresáři spool objeví odchozí paket.
  • Kromě dříve podporovaných FreeBSD a GNU/Linux je zajištěna funkčnost pod operačními systémy NetBSD a OpenBSD.
  • "nncp-daemon" je plně kompatibilní s rozhraním UCSPI-TCP. Ve spojení se schopností přihlásit se k určenému deskriptoru souboru (například nastavením "NNCPLOG=FD:4") je zcela přívětivé spouštět pod obslužnými programy podobnými daemontools.
  • Montáž projektu je kompletně převedena do systému redo.

Zdroj: opennet.ru

Přidat komentář