Liberigo de NNCP 8.8.0, iloj por transloki dosierojn/komandojn en butiko-kaj-send-reĝimo

La liberigo de Node-to-Node CoPy (NNCP), aro de utilecoj por sekure translokigi dosierojn, retpoŝton kaj komandojn por ekzekuto en butiko kaj antaŭen-reĝimo. Subtenas operacion sur POSIX-kongruaj operaciumoj. La utilecoj estas skribitaj en Go kaj distribuitaj sub la permesilo GPLv3.

La utilecoj estas fokusitaj por helpi konstrui malgrandajn sam-al-kunulajn amik-al-amikan retojn (dekduoj da nodoj) kun statika vojigo por sekuraj fajraj kaj forgesaj dosieraj translokigoj, dosierpetoj, retpoŝto kaj komandpetoj. Ĉiuj elsenditaj pakaĵetoj estas ĉifritaj (fin-al-fina) kaj estas eksplicite aŭtentikigitaj uzante konatajn publikajn ŝlosilojn de amikoj. Cepo (kiel en Tor) ĉifrado estas uzata por ĉiuj mezaj pakaĵoj. Ĉiu nodo povas funkcii kiel kaj kliento kaj servilo kaj uzi ambaŭ puŝajn kaj balotajn kondutmodelojn.

La diferenco inter solvoj NNCP kaj UUCP kaj FTN (FidoNet Technology Network), aldone al la menciita ĉifrado kaj aŭtentikigo, estas la senprokraste subteno por disketaj retoj kaj komputiloj fizike izolitaj (aera interspaco) de nesekura loka kaj publikaj retoj. NNCP ankaŭ havas facilan integriĝon (alparo kun UUCP) kun nunaj poŝtserviloj kiel Postfix kaj Exim.

Eblaj kampoj de apliko por NNCP inkluzivas organizi sendon/ricevadon de poŝto al aparatoj sen konstanta konekto al la Interreto, translokigi dosierojn en kondiĉoj de malstabila retkonekto, sekure translokigi tre grandajn kvantojn da datumoj sur fizikaj amaskomunikiloj, krei izolitajn datumtranssendoretojn protektitajn kontraŭ MitM-atakoj, preterirante retan cenzuron kaj gvatadon. Ĉar la malĉifra ŝlosilo estas nur en la manoj de la ricevanto, sendepende de ĉu la pakaĵo estas liverita tra la reto aŭ per fizika amaskomunikilaro, tria partio ne povas legi la enhavon, eĉ se la pakaĵo estas kaptita. Siavice, aŭtentikigo per cifereca subskribo ne permesas krei fikcian mesaĝon sub la alivestiĝo de alia sendinto.

Inter la novigoj de NNCP 8.8.0, kompare kun la antaŭaj novaĵoj (versio 5.0.0):

  • Anstataŭ la BLAKE2b hash, la tielnomita MTH: Merkle Tree-based Hashing, kiu uzas la BLAKE3 hash, estas uzata por kontroli la integrecon de dosieroj. Ĉi tio ebligas al vi kalkuli la integrecon de la ĉifrita parto de la pakaĵo ĝuste dum elŝutado, sen postuli, ke ĝi estu legata estonte. Tio ankaŭ permesas senliman paraleligon de integreckontroloj.
  • La nova ĉifrita paka formato estas tute fluanta amika kiam la grandeco de la datumoj estas nekonataj anticipe. La signalado de la kompletigo de la translokigo, kun aŭtentikigita grandeco, iras rekte en la ĉifritan rivereton. Antaŭe, por ekscii la grandecon de la transdonitaj datumoj, estis necese konservi ĝin al provizora dosiero. Do la komando "nncp-exec" perdis la opcion "-use-tmp" ĉar ĝi estas tute nenecesa.
  • La BLAKE2b KDF kaj XOF-funkcioj estis anstataŭigitaj per BLAKE3 por redukti la nombron da kriptografaj primitivuloj uzitaj kaj simpligi la kodon.
  • Nun eblas detekti aliajn nodojn en la loka reto per multielsendo al la adreso "ff02::4e4e:4350".
  • Multrolantaroj ekaperis (analoga al FidoNet-eĥokonferencoj aŭ Usenet-novaĵgrupoj), permesante al unu pakaĵeto sendi datenojn al multoblaj grupanoj, kie ĉiu ankaŭ elsendas la pakaĵeton al la resto de la subskribintoj. Legi multirolanta paketon postulas scion pri la ŝlosilparo (vi devas eksplicite esti membro de la grupo), sed relajado povas esti farita per iu ajn nodo.
  • Nun ekzistas subteno por eksplicita konfirmo de paka kvitanco. La sendinto eble ne forigas la pakaĵon post sendado, atendante ĝis ĝi ricevas specialan ACK-pakaĵon de la ricevilo.
  • Enkonstruita subteno por la Yggdrasil overlay reto: interretaj daimonoj povas funkcii kiel plenrajtaj sendependaj retaj partoprenantoj, sen uzi triapartajn Yggdrasil-efektivigojn kaj sen plene labori kun la IP-stako sur virtuala retinterfaco.
  • Anstataŭ strukturitaj ĉenoj (RFC 3339), la protokolo uzas recdosierajn enskribojn, kiuj povas esti uzataj kun la iloj de GNU Recutils.
  • Laŭvole, ĉifritaj pakaĵetokapoj povas esti stokitaj en apartaj dosieroj en la "hdr/" subdosierujo, signife akcelante pakaĵetlistajn rehavigoperaciojn sur dosiersistemoj kun grandaj blokgrandecoj, kiel ekzemple ZFS. Antaŭe, retrovi la pakaĵkapon postulis legi nur 128KiB-blokon de disko defaŭlte.
  • Kontroli novajn dosierojn povas laŭvole uzi la kqueue kaj inotigi kernsubsistemojn, farante malpli da sistemvokoj.
  • Iloj konservas malpli da malfermitaj dosieroj kaj fermas kaj remalfermas ilin malpli ofte. Kun granda nombro da pakaĵoj, antaŭe eblis renkonti limigon pri la maksimuma nombro da malfermitaj dosieroj.
  • Multaj teamoj komencis montri la progreson kaj rapidecon de operacioj kiel elŝutado/alŝutado, kopiado kaj prilaborado (ĵeto) pakaĵoj.
  • La komando "nncp-file" povas sendi ne nur ununurajn dosierojn, sed ankaŭ dosierujojn, kreante pax-arkivon kun ilia enhavo sur la flugo.
  • Enretaj iloj povas laŭvole tuj alvoki pakaĵeton post kiam pako estis sukcese elŝutita, sen ruli apartan "nncp-toss" demonon.
  • Reta voko al alia partoprenanto povas laŭvole okazi ne nur kiam tempigilo estas ekigita, sed ankaŭ kiam eksiĝinta pakaĵeto aperas en la bobena dosierujo.
  • Certigas funkciadon sub NetBSD kaj OpenBSD OS, krom antaŭe subtenataj FreeBSD kaj GNU/Linukso.
  • "nncp-daemon" estas plene kongrua kun la UCSPI-TCP-interfaco. Kune kun la kapablo ensaluti al specifita dosierpriskribilo (ekzemple agordante "NNCPLOG=FD:4"), estas tute amike funkcii sub daemontools-similaj iloj.
  • La projekto-asembleo estis tute translokigita al la refari sistemo.

fonto: opennet.ru

Aldoni komenton