Издание на NNCP 8.8.0, алатки за пренос на датотеки/наредби во режим за складирање и препраќање

Објавување на Node-to-Node CoPy (NNCP), збир на алатки за безбедно пренесување датотеки, е-пошта и команди за извршување во режимот складирање и проследување. Поддржува работа на оперативни системи компатибилни со POSIX. Услужните програми се напишани во Go и се дистрибуираат под лиценцата GPLv3.

Овие алатки се дизајнирани да помогнат во градењето мали мрежи peer-to-peer пријател-до-пријател (десетици јазли) со статичко рутирање за безбеден пренос на датотеки „запали и заборави“, барања за датотеки, е-пошта и барања за извршување на команди. Сите пренесени пакети се шифрирани од крај до крај и експлицитно се автентицираат со помош на познати јавни клучеви на врсниците. Onion енкрипција (како Tor) се применува на сите посреднички пакети. Секој јазол може да дејствува како клиент или како домаќин. сервер и да користат модели на однесување при притискање и анкетирање.

NNCP се разликува од решенијата UUCP и FTN (FidoNet Technology Network), покрај претходно споменатото енкрипција и автентикација, со тоа што обезбедува поддршка веднаш по купувањето за флопи мрежи и компјутери физички изолирани (воздушни отвори) од небезбедни локални и јавни мрежи. NNCP, исто така, има лесна интеграција (како UUCP) со тековните е-пошта услуги. сервери, како што се Postfix и Exim.

Можни области на примена за NNCP вклучуваат организирање испраќање/примање пошта до уреди без постојана врска на интернет, пренос на датотеки во услови на нестабилна мрежна врска, безбедно пренесување на многу големи количини на податоци на физички медиуми, создавање изолирани мрежи за пренос на податоци заштитени од MitM напаѓа, заобиколувајќи ја мрежната цензура и надзор. Бидејќи клучот за дешифрирање е само во рацете на примачот, без разлика дали пакетот се доставува преку мрежа или преку физички медиуми, трето лице не може да ја прочита содржината, дури и ако пакетот е пресретнат. За возврат, автентикацијата на дигитален потпис не дозволува создавање на фиктивна порака под маската на друг испраќач.

Меѓу иновациите на NNCP 8.8.0, во споредба со претходните вести (верзија 5.0.0):

  • Наместо хашот BLAKE2b, таканаречениот MTH: Merkle Tree-based Hashing, кој го користи хашот BLAKE3, се користи за проверка на интегритетот на датотеките. Ова ви овозможува да го пресметате интегритетот на шифрираниот дел од пакетот веднаш за време на преземањето, без да барате негово читање во иднина. Ова, исто така, овозможува неограничена паралелизација на проверките на интегритетот.
  • Новиот шифриран формат на пакети е целосно погоден за стриминг кога големината на податоците е однапред непозната. Сигнализацијата за завршување на преносот, со автентицирана големина, оди директно во шифрираниот поток. Претходно, за да се дознае големината на пренесените податоци, неопходно беше да се зачуваат во привремена датотека. Така, командата „nncp-exec“ ја изгуби опцијата „-use-tmp“ бидејќи е целосно непотребна.
  • Функциите BLAKE2b KDF и XOF се заменети со BLAKE3 за да се намали бројот на користени криптографски примитиви и да се поедностави кодот.
  • Сега е можно да се детектираат други јазли на локалната мрежа преку мултикастинг на адресата „ff02::4e4e:4350“.
  • Се појавија мултикаст групи (аналогни на FidoNet echo конференции или Usenet новински групи), дозволувајќи еден пакет да испраќа податоци до повеќе членови на групата, каде што секој исто така го пренесува пакетот на останатите потписници. Читањето на мултикаст пакет бара познавање на парот клучеви (мора експлицитно да сте член на групата), но пренесувањето може да се направи од кој било јазол.
  • Сега постои поддршка за експлицитна потврда на приемот на пакетот. Испраќачот може да не го избрише пакетот по испраќањето, чекајќи додека не прими специјален ACK пакет од примачот.
  • Вградена поддршка за преклопната мрежа на Yggdrasil: онлајн демони можат да дејствуваат како полноправни независни мрежни учесници, без користење на имплементации на Yggdrasil од трети страни и без целосно да работат со оџакот IP на виртуелен мрежен интерфејс.
  • Наместо структурирани низи (RFC 3339), дневникот користи записи за повторна датотека, кои може да се користат со алатките GNU Recutils.
  • Изборно, шифрираните заглавија на пакети може да се складираат во посебни датотеки во поддиректориумот „hdr/“, значително забрзувајќи ги операциите за пронаоѓање листа на пакети на датотечните системи со големи димензии на блокови, како што е ZFS. Претходно, за враќање на заглавието на пакетот стандардно беше потребно читање само блок од 128 KiB од дискот.
  • Проверката за нови датотеки може опционално да го користи kqueue и да ги инотифицира потсистемите на кернелот, правејќи помалку системски повици.
  • Услужните програми чуваат помалку отворени датотеки и поретко ги затвораат и повторно отвораат. Со голем број пакети, претходно беше можно да се наиде на ограничување на максималниот број на отворени датотеки.
  • Многу тимови почнаа да го покажуваат напредокот и брзината на операциите како што се преземање/поставување, копирање и обработка (фрлање) пакети.
  • Командата „nncp-file“ може да испраќа не само единечни датотеки, туку и директориуми, создавајќи архива на pax со нивната содржина во лет.
  • Онлајн алатките може по избор веднаш да повикаат фрлање пакети откако пакетот е успешно преземен, без да се изврши посебен демон „nncp-toss“.
  • Онлајн повик до друг учесник може опционално да се случи не само кога ќе се активира тајмерот, туку и кога ќе се појави појдовен пакет во директориумот spool.
  • Обезбедува оперативност под NetBSD и OpenBSD OS, покрај претходно поддржаните FreeBSD и GNU/Linux.
  • „nncp-daemon“ е целосно компатибилен со интерфејсот UCSPI-TCP. Заедно со способноста да се најавите на одреден дескриптор на датотека (на пример со поставување „NNCPLOG=FD:4“), целосно е пријателски да се извршува под алатки слични на daemontools.
  • Проектното собрание е целосно префрлено во системот за повторување.

Извор: opennet.ru