Liberasyon NNCP 8.8.0, sèvis piblik pou transfere fichye / kòmandman nan mòd magazen-ak-forward

Liberasyon Node-to-Node CoPy (NNCP), yon seri sèvis piblik pou transfere fichye, imèl, ak kòmandman an sekirite pou egzekisyon nan mòd magazen-and-forward. Sipòte operasyon sou sistèm opere POSIX-konpatib. Yo ekri sèvis piblik yo nan Go epi yo distribye anba lisans GPLv3.

Sèvis piblik yo konsantre sou ede yo konstwi ti rezo kanmarad zanmi-a-zanmi (plizyè douzèn nœuds) ak routage estatik pou transfè fichye dife-ak-bliye an sekirite, demann dosye, imèl, ak demann kòmand. Tout pake transmèt yo chiffres (fen-a-fen) epi yo otantifye klèman lè l sèvi avèk kle piblik zanmi yo konnen. Yo itilize chifreman zonyon (tankou Tor) pou tout pake entèmedyè. Chak ne ka aji kòm tou de yon kliyan ak yon sèvè epi sèvi ak tou de modèl konpòtman pouse ak biwo vòt.

Diferans ki genyen ant solisyon NNCP ak UUCP ak FTN (FidoNet Teknoloji Rezo), anplis chifreman ak otantifikasyon ki mansyone pi wo a, se sipò ki soti nan bwat pou rezo floppinet ak òdinatè ki izole fizikman (lè-gapped) soti nan lokal ensekirite ak rezo piblik yo. NNCP tou gen entegrasyon fasil (apar ak UUCP) ak sèvè lapòs aktyèl tankou Postfix ak Exim.

Domèn posib aplikasyon pou NNCP gen ladan òganize voye/resevwa lapòs nan aparèy ki pa gen yon koneksyon pèmanan sou entènèt la, transfere fichye nan kondisyon yon koneksyon rezo enstab, transfere an sekirite gwo kantite done sou medya fizik, kreye rezo transmisyon done izole ki pwoteje kont. Atak MitM, kontourne sansi rezo ak siveyans. Depi kle dechifre la sèlman nan men moun k ap resevwa a, kèlkeswa si pake a delivre sou rezo a oswa atravè medya fizik, yon twazyèm pati pa ka li sa ki ladan l, menm si yo entèsepte pake a. Nan vire, otantifikasyon siyati dijital pa pèmèt kreye yon mesaj fiktif anba laparans yon lòt moun k ap voye.

Pami inovasyon yo nan NNCP 8.8.0, konpare ak nouvèl anvan yo (vèsyon 5.0.0):

  • Olye BLAKE2b hash la, sa yo rele MTH: Merkle Tree-based Hashing, ki itilize BLAKE3 hash la, yo itilize pou tcheke entegrite dosye yo. Sa a pèmèt ou kalkile entegrite nan pati nan chifreman nan pake a dwa pandan telechaje, san yo pa mande pou li li nan lavni an. Sa a pèmèt tou paralèlizasyon san limit nan chèk entegrite.
  • Nouvo fòma pake chifreman an se konplètman difizyon-zanmitay lè gwosè a nan done yo pa konnen davans. Siyal la fini transfè a, ak yon gwosè otantifye, ale dirèkteman andedan kouran an chiffres. Précédemment, pou chèche konnen gwosè a nan done yo transfere, li te nesesè pou konsève pou li nan yon dosye tanporè. Se konsa, "nncp-exec" lòd la pèdi opsyon "-use-tmp" kòm li se konplètman nesesè.
  • Fonksyon BLAKE2b KDF ak XOF yo te ranplase pa BLAKE3 pou diminye kantite primitif kriptografik yo itilize epi senplifye kòd la.
  • Kounye a li posib pou detekte lòt nœuds sou rezo lokal la atravè multicasting nan adrès "ff02::4e4e:4350".
  • Gwoup Multicast yo te parèt (analòg FidoNet eko konferans oswa gwoup nouvèl Usenet), ki pèmèt yon pake voye done bay plizyè manm gwoup, kote chak relè tou pake a bay rès siyatè yo. Lekti yon pake multidiffusion mande konesans nan pè kle a (ou dwe klèman yon manm nan gwoup la), men relais ka fè pa nenpòt ne.
  • Gen kounye a sipò pou konfimasyon eksplisit nan resi pake a. Moun k ap voye a pa ka efase pake a apre li fin voye l, ap tann jiskaske li resevwa yon pake espesyal ACK nan men reseptè a.
  • Sipò entegre pou rezo a kouvri Yggdrasil: demon sou entènèt yo ka aji kòm patisipan rezo endepandan konplè, san yo pa itilize enplemantasyon Yggdrasil yon twazyèm pati epi san yo pa travay konplètman ak pile IP sou yon koòdone rezo vityèl.
  • Olye de fisèl estriktire (RFC 3339), jounal la sèvi ak antre recfile, ki ka itilize ak sèvis piblik GNU Recutils yo.
  • Opsyonèlman, yo ka estoke en-tête pake ki ankripte nan dosye separe nan sous-anyè "hdr/", sa ki pi rapid akselere operasyon rekipere lis pake sou sistèm dosye ki gen gwo gwosè blòk, tankou ZFS. Anvan sa, rekipere header pake a te oblije li sèlman yon blòk 128KiB nan disk pa default.
  • Tcheke pou nouvo dosye ka opsyonèlman itilize kqueue a ak inotify subsystems nwayo, fè mwens apèl sistèm.
  • Itilite yo kenbe mwens dosye louvri epi fèmen epi relouvri yo mwens souvan. Avèk yon gwo kantite pakè, deja li te posib yo kouri nan yon limit sou kantite maksimòm dosye louvri.
  • Anpil ekip te kòmanse montre pwogrè ak vitès operasyon yo tankou telechaje / telechaje, kopye ak trete (lanse) pakè yo.
  • Kòmand "nncp-file" la ka voye pa sèlman fichye sèl, men tou, anyè, kreye yon achiv pax ak sa yo sou vole.
  • Sèvis piblik sou entènèt yo ka opsyonèlman imedyatman envoke pake pakè yo apre yo fin telechaje yon pake avèk siksè, san yo pa kouri yon demon separe "nncp-toss".
  • Yon apèl sou entènèt bay yon lòt patisipan ka fèt opsyonèlman non sèlman lè yon revèy deklanche, men tou lè yon pake sortan parèt nan anyè bobin la.
  • Asire operasyon anba NetBSD ak OpenBSD OS, anplis FreeBSD ak GNU/Linux ki te deja sipòte.
  • "nncp-daemon" konplètman konpatib ak koòdone UCSPI-TCP la. Makonnen ak kapasite pou konekte nan yon deskriptè fichye espesifye (pa egzanp lè w mete "NNCPLOG=FD:4"), li se konplètman zanmitay kouri anba sèvis piblik tankou daemontools.
  • Asanble pwojè a te konplètman transfere nan sistèm nan refè.

Sous: opennet.ru

Add nouvo kòmantè