Release von NNCP 8.8.0, einem Toolset zur Datei-/Befehlsübertragung im Store-and-Forward-Modus

Die Veröffentlichung von Node-to-Node CoPy (NNCP), einem Toolset für den sicheren Austausch von Dateien, E-Mails und zur Ausführung von Befehlen im Store-and-Forward-Modus, ist erfolgt. Es wird auf POSIX-kompatiblen Betriebssystemen unterstützt. Die Tools sind in Go geschrieben und stehen unter der GPLv3-Lizenz.

Die Tools sind darauf ausgelegt, kleine peer-to-peer Friend-to-Friend-Netzwerke (mit Dutzenden von Knoten) mit statischer Routing für eine sichere Dateiübertragung im Fire-and-Forget-Modus sowie für Datei-Anfragen, E-Mails und Befehlsausführungsanfragen zu unterstützen. Alle übermittelten Pakete sind end-to-end-verschlüsselt und werden eindeutig durch bekannte öffentliche Schlüssel von Bekannten authentifiziert. Onion-Verschlüsselung (wie bei Tor) wird für alle Zwischenpakete angewendet. Jeder Knoten kann sowohl als Client fungieren als auch Server sowohl Push- als auch Poll-Modellverhalten verwenden.

Das Hauptunterscheidungsmerkmal von NNCP im Vergleich zu UUCP- und FTN-Lösungen (FidoNet Technology Network), neben der oben genannten Verschlüsselung und Authentifizierung, ist die sofortige Unterstützung von Floppinet-Netzwerken und von physisch isolierten (air-gapped) Computern, die von unsicheren lokalen und öffentlichen Netzwerken getrennt sind. Ein weiteres Merkmal von NNCP ist die einfache Integration (analog zu UUCP) mit bestehenden Mailservern Servern gearbeitet werden., wie Postfix und Exim.

Zu den möglichen Anwendungsbereichen von NNCP zählt die Organisation des Versands/Empfangs von E-Mails auf Geräten ohne ständige Internetverbindung, den Dateitransfer unter Bedingungen instabiler Netzwerkverbindungen, die sichere Übertragung sehr großer Datenmengen auf physischen Medien, die Schaffung von gegen MitM-Angriffe geschützten isolierten Datennetzwerken sowie das Umgehen von Internetzensur und Überwachung. Da der Schlüssel zur Entschlüsselung ausschließlich beim Empfänger liegt, kann Dritte, unabhängig von den Übertragungswegen des Pakets über das Netzwerk oder durch physische Medien, den Inhalt nicht lesen, selbst wenn sie die Sendung abfangen. Im Gegenzug erlaubt die Authentifizierung durch digitale Signaturen nicht, eine gefälschte Sendung im Namen eines anderen Absenders zu erstellen.

Zu den Neuerungen in NNCP 8.8.0 im Vergleich zur vorherigen Version (5.0.0) gehören:

  • Statt des BLAKE2b-Hashes zur Überprüfung der Dateiintegrität wird nun das sogenannte MTH: Merkle Tree-based Hashing, das den BLAKE3-Hash verwendet, eingesetzt. Dies ermöglicht die Berechnung der Integrität des verschlüsselten Teils des Pakets während des Herunterladens, ohne dass eine spätere Lesung erforderlich ist. Außerdem erlaubt es eine unbegrenzte Parallelisierung der Integritätsprüfung.
  • Das neue Format für verschlüsselte Pakete ist vollständig für das Streaming geeignet, wenn die Datenmenge im Voraus unbekannt ist. Die Signalisierung des Übertragungsabschlusses mit der authentifizierten Größe erfolgt direkt innerhalb des verschlüsselten Streams. Früher musste zur Ermittlung der zu übertragenden Datenmenge eine temporäre Datei gespeichert werden. Daher hat das Team von „nncp-exec“ die Option „-use-tmp“ vollständig entfernt, da sie nicht mehr erforderlich ist.
  • Die Funktionen BLAKE2b KDF und XOF wurden durch BLAKE3 ersetzt, um die Anzahl der verwendeten kryptografischen Primitiven zu reduzieren und den Code zu vereinfachen.
  • Es gibt jetzt die Möglichkeit, andere Knoten im lokalen Netzwerk über eine Multicast-Übertragung an die Adresse „ff02::4e4e:4350“ zu entdecken.
  • Multicast-Gruppen sind jetzt verfügbar (ähnlich den Echo-Konferenzen von FidoNet oder den neuen Usenet-Gruppen). Diese ermöglichen es, Daten mit einem einzigen Paket an mehrere Gruppenmitglieder zu senden, wobei jedes Mitglied das Paket auch an die anderen Abonnenten weiterleitet. Zum Lesen des Multicast-Pakets ist das Wissen um das Schlüsselpaar erforderlich (man muss explizit Mitglied der Gruppe sein), während die Weiterleitung von jedem Knoten vorgenommen werden kann.
  • Die Unterstützung für die explizite Bestätigung des Paketempfangs ist jetzt verfügbar. Der Sender kann das Paket nach dem Senden nicht löschen und auf den Erhalt eines speziellen ACK-Pakets vom Empfänger warten.
  • Die Unterstützung für das Overlay-Netzwerk Yggdrasil ist integriert: Online-Dämonen können als vollwertige, eigenständige Teilnehmer am Netzwerk agieren, ohne auf externe Implementierungen von Yggdrasil und die vollständige Arbeit mit dem IP-Stack über ein virtuelles Netzwerk-Interface angewiesen zu sein.
  • Anstelle von strukturierten Zeilen (RFC 3339) verwendet das Journal Recfile-Einträge, die mit GNU Recutils-Tools verwendet werden können.
  • Optional können die Header verschlüsselter Pakete in separaten Dateien im Unterverzeichnis „hdr/“ gespeichert werden, was die Vorgänge zum Abrufen von Paketlisten auf Dateisystemen mit großen Blockgrößen wie ZFS erheblich beschleunigt. Zuvor erforderte das Abrufen des Paket-Headers standardmäßig das Lesen eines gesamten 128 KiB Blocks von der Festplatte.
  • Die Überprüfung auf neue Dateien kann optional die Kernel-Subsysteme kqueue und inotify nutzen, wodurch weniger Systemaufrufe erforderlich sind.
  • Die Utilities halten weniger offene Dateien, sodass sie seltener geschlossen und wieder geöffnet werden. Bei einer hohen Anzahl von Paketen konnte man zuvor an die maximale Anzahl offener Dateien stoßen.
  • Viele Befehle zeigen nun Fortschritt und Geschwindigkeit bei der Ausführung von Operationen wie Herunterladen/Upload, Kopieren und Verarbeiten (toss) von Paketen an.
  • Der Befehl „nncp-file“ kann nicht nur einzelne Dateien, sondern auch Verzeichnisse senden und dabei im laufenden Betrieb ein pax-Archiv mit deren Inhalt erstellen.
  • Online-Utilities können optional sofort den Prozess zur Verarbeitung von Paketen (tossing) nach einem erfolgreichen Herunterladen eines Pakets aufrufen, ohne einen separaten Daemon „nncp-toss“ zu starten.
  • Der Online-Aufruf eines anderen Teilnehmers kann optional nicht nur durch das Auslösen eines Timers erfolgen, sondern auch durch das Erscheinen eines ausgehenden Pakets im Spool-Verzeichnis.
  • Die Funktionalität unter NetBSD und OpenBSD wird neben den zuvor unterstützten FreeBSD und GNU/Linux gewährleistet.
  • Der «nncp-daemon» ist vollständig mit der UCSPI-TCP-Schnittstelle kompatibel. In Kombination mit der Möglichkeit, in einen bestimmten Dateideskriptor zu protokollieren (z. B. durch Setzen von «NNCPLOG=FD:4»), ist er ideal für die Ausführung mit Utilities, die daemontools ähneln.
  • Das Projekt wurde vollständig auf das redo-System umgestellt.

Quelle: opennet.ru

Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server 🔥 Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server | ProHoster