A Node-to-Node CoPy (NNCP) kiadása, amely a fájlok, e-mailek és parancsok biztonságos átvitelére szolgáló segédprogramok tárolása és továbbítása módban történő végrehajtásához. Támogatja a POSIX-kompatibilis operációs rendszereken való működést. A segédprogramok Go nyelven íródnak, és a GPLv3 licenc alatt vannak terjesztve.
Ezek a segédprogramok kis, több tucat csomópontból álló peer-to-peer hálózatok (barát-barát hálózatok) kiépítésének elősegítésére szolgálnak statikus útválasztással a biztonságos, „tűzd el és felejtsd el” fájlátvitelhez, fájlkérelmekhez, e-mailekhez és parancsvégrehajtási kérésekhez. Minden továbbított csomag végponttól végpontig titkosítva van, és explicit módon hitelesítve a peer-ek ismert nyilvános kulcsaival. Az Onion titkosítást (a Torhoz hasonlóan) minden köztes csomagra alkalmazzák. Minden csomópont működhet kliensként vagy gazdagépként. szerver és használjon push és poll viselkedési modelleket is.
Az NNCP abban különbözik az UUCP és az FTN (FidoNet Technology Network) megoldásoktól, hogy a fent említett titkosítás és hitelesítés mellett azonnal használható támogatást nyújt a floppy hálózatokhoz és a nem biztonságos helyi és nyilvános hálózatoktól fizikailag elszigetelt (légréses) számítógépekhez. Az NNCP (az UUCP-hez hasonlóan) könnyen integrálható a jelenlegi e-mail szolgáltatásokkal. szerverek, például a Postfix és az Exim.
Az NNCP lehetséges alkalmazási területei közé tartozik a levelek küldésének/fogadásának szervezése olyan eszközökre, amelyek nem rendelkeznek állandó internetkapcsolattal, fájlok átvitele instabil hálózati kapcsolat mellett, nagyon nagy mennyiségű adat biztonságos átvitele fizikai adathordozón, elszigetelt adatátviteli hálózatok létrehozása, amelyek védettek az internethez. MitM támadások, megkerülve a hálózati cenzúrát és felügyeletet. Mivel a visszafejtési kulcs csak a címzett kezében van, függetlenül attól, hogy a csomagot hálózaton vagy fizikai adathordozón keresztül kézbesítik, harmadik fél nem tudja elolvasni a tartalmat, még akkor sem, ha a csomagot elfogják. A digitális aláírás hitelesítés viszont nem teszi lehetővé fiktív üzenet létrehozását egy másik feladó leple alatt.
Az NNCP 8.8.0 újításai közül a korábbi hírhez (5.0.0 verzió) képest:
- A BLAKE2b hash helyett az úgynevezett MTH: Merkle Tree-alapú hashing, amely a BLAKE3 hash-t használja, a fájlok integritásának ellenőrzésére szolgál. Ez lehetővé teszi a csomag titkosított részének integritásának kiszámítását közvetlenül a letöltés során, anélkül, hogy a jövőben be kellene olvasnia. Ez lehetővé teszi az integritás-ellenőrzések korlátlan párhuzamosítását is.
- Az új titkosított csomagformátum teljesen streamingbarát, ha az adatok mérete előre nem ismert. Az átvitel befejezésének jelzése hitelesített mérettel közvetlenül a titkosított adatfolyamon belülre kerül. Korábban az átvitt adatok méretének megállapításához ideiglenes fájlba kellett menteni. Tehát az "nncp-exec" parancs elvesztette a "-use-tmp" opciót, mivel teljesen felesleges.
- A BLAKE2b KDF és XOF függvényeket a BLAKE3 váltotta fel, hogy csökkentse a használt kriptográfiai primitívek számát és egyszerűsítse a kódot.
- Mostantól lehetőség van a helyi hálózat többi csomópontjának észlelésére az „ff02::4e4e:4350” címre irányuló csoportos küldéssel.
- Megjelentek a multicast csoportok (hasonlóan a FidoNet echo konferenciákhoz vagy a Usenet hírcsoportokhoz), lehetővé téve, hogy egy csomag több csoporttagnak küldjön adatokat, és mindegyik továbbítja a csomagot a többi aláíróhoz. A multicast csomagok olvasásához a kulcspár ismerete szükséges (kifejezetten a csoport tagjának kell lennie), de a továbbítást bármely csomópont elvégezheti.
- Most már támogatott a csomag átvételének kifejezett megerősítése. A küldő a küldés után nem törölheti a csomagot, megvárva, amíg egy speciális ACK csomagot kap a vevőtől.
- Beépített támogatás az Yggdrasil overlay hálózathoz: az online démonok teljes értékű független hálózati résztvevőként működhetnek anélkül, hogy harmadik féltől származó Yggdrasil implementációkat használnának, és anélkül, hogy teljes mértékben együttműködnének a virtuális hálózati interfészen lévő IP veremmel.
- A strukturált karakterláncok (RFC 3339) helyett a napló újratárolási bejegyzéseket használ, amelyek a GNU Recutils segédprogramokkal használhatók.
- Opcionálisan a titkosított csomagfejlécek külön fájlokban tárolhatók a "hdr/" alkönyvtárban, jelentősen felgyorsítva a csomaglista-visszakeresési műveleteket nagy blokkméretű fájlrendszereken, mint például a ZFS. Korábban a csomagfejléc lekéréséhez alapértelmezés szerint csak egy 128 KiB-os blokkot kellett kiolvasni a lemezről.
- Az új fájlok keresése opcionálisan használhatja a kqueuet és értesítheti a kernel alrendszereit, így kevesebb rendszerhívást hajt végre.
- A segédprogramok kevesebb fájlt nyitnak meg, és ritkábban zárják be és nyitják meg újra. A nagy számú csomagnál korábban a megnyitott fájlok maximális számának korlátozásába lehetett ütközni.
- Sok csapat elkezdte bemutatni az olyan műveletek előrehaladását és sebességét, mint például a csomagok letöltése/feltöltése, másolása és feldolgozása (dobás).
- Az „nncp-file” parancs nem csak egyes fájlokat, hanem könyvtárakat is képes küldeni, így menet közben pax archívumot hoz létre a tartalommal.
- Az online segédprogramok opcionálisan azonnal elindíthatják a csomagfeldobást a csomag sikeres letöltése után, külön "nncp-toss" démon futtatása nélkül.
- Egy másik résztvevő online hívása opcionálisan nem csak az időzítő indításakor fordulhat elő, hanem akkor is, ha egy kimenő csomag megjelenik a spool könyvtárban.
- Biztosítja a működést NetBSD és OpenBSD OS alatt, a korábban támogatott FreeBSD és GNU/Linux mellett.
- Az "nncp-daemon" teljes mértékben kompatibilis az UCSPI-TCP interfésszel. A megadott fájlleíróhoz való naplózás lehetőségével együtt (például az "NNCPLOG=FD:4" beállításával) teljesen barátságos a daemontools-szerű segédprogramok alatt való futtatás.
- A projekt összeállítása teljesen átkerült a redo rendszerbe.
Forrás: opennet.ru
