Veröffentlichung eines dezentralen Dateisystems (InterPlanetary File System), das einen globalen versionierten Dateispeicher bildet, der in Form eines P2P-Netzwerks aus Teilnehmersystemen bereitgestellt wird. IPFS kombiniert Ideen, die zuvor in Systemen wie Git, BitTorrent, Kademlia, SFS und Web implementiert wurden, und Ă€hnelt einem einzelnen BitTorrent-âSchwarmâ (an der Verteilung beteiligte Peers), der Git-Objekte austauscht. IPFS zeichnet sich durch die Adressierung nach Inhalt und nicht nach Ort und willkĂŒrlichen Namen aus. Der Referenzimplementierungscode ist in Go und geschrieben unter Apache 2.0- und MIT-Lizenzen.
Die neue Version zeichnet sich durch die standardmĂ€Ăige Einbeziehung des protokollbasierten Transports aus Dabei handelt es sich um eine Ăberlagerung des UDP-Protokolls, das das Multiplexen mehrerer Verbindungen unterstĂŒtzt und VerschlĂŒsselungsmethoden bereitstellt, die TLS/SSL entsprechen. In IPFS wird der Socket zum Akzeptieren von UDP-Verbindungen automatisch an derselben Adresse und demselben Netzwerkport wie der TCP-basierte Transporthandler gestartet. QUIC wird sowohl fĂŒr eingehende als auch fĂŒr ausgehende Verbindungen verwendet. Wenn QUIC bei der Verbindung mit neuen Knoten nicht verfĂŒgbar ist, wird auf TCP zurĂŒckgegriffen.
Die zweite wichtige Neuerung war die UnterstĂŒtzung eines sicheren Transports , auf dem Protokoll und innerlich entwickelt , ein modularer Netzwerk-Stack fĂŒr P2P-Anwendungen. Nach der ersten Verbindungsaushandlung wird die gesamte nachfolgende Kommunikation zwischen den Teilnehmern verschlĂŒsselt und vor Abhören geschĂŒtzt.
LĂ€rm hat den Transport ersetzt , aber TLS 1.3 wird weiterhin als vorrangige Methode zur VerschlĂŒsselung von Verbindungen zwischen Knoten verwendet. NOISE ist recht einfach zu implementieren und positioniert sich als universeller plattformĂŒbergreifender Transport, der in verschiedenen Programmiersprachen implementiert werden kann.
Die neue Version bietet auĂerdem die Möglichkeit, benutzerdefinierte â404 Not Foundâ-Seiten hinzuzufĂŒgen und fĂŒgt optionale UnterstĂŒtzung fĂŒr die Base36-Kodierungsmethode hinzu, die optimal fĂŒr alphanumerische Daten ohne BerĂŒcksichtigung der GroĂ-/Kleinschreibung wie DomĂ€nennamen ist (bei Verwendung von Base32, Ed25519 sind IPNS-SchlĂŒssel zwei Bytes gröĂer). (Grenze fĂŒr die GröĂe einer Subdomain, und mit Base36 passen sie in die Grenze). DarĂŒber hinaus wurde den Einstellungen eine Option hinzugefĂŒgt
«â, das eine Liste von Knoten definiert, mit denen eine Verbindung hergestellt, eine Verbindung aufrechterhalten und eine erneute Verbindung hergestellt werden soll, um âStickyâ-Verbindungen zwischen hĂ€ufig verwendeten Peers zu identifizieren.
Denken Sie daran, dass in IPFS der Link zum Zugriff auf eine Datei direkt mit ihrem Inhalt verknĂŒpft ist und einen kryptografischen Hash des Inhalts enthĂ€lt. Die Dateiadresse kann nicht beliebig umbenannt werden, sie kann nur nach Ănderung des Inhalts geĂ€ndert werden. Ebenso ist es unmöglich, eine Datei zu Ă€ndern, ohne die Adresse zu Ă€ndern (die alte Version bleibt unter derselben Adresse und die neue Version ist ĂŒber eine andere Adresse zugĂ€nglich, da sich der Hash des Dateiinhalts Ă€ndert). Da sich die Dateikennung bei jeder Ănderung Ă€ndert, werden Dienste zur VerknĂŒpfung dauerhafter Adressen bereitgestellt, die unterschiedliche Versionen der Datei berĂŒcksichtigen, um nicht jedes Mal neue Links zu ĂŒbertragen () oder Zuweisung eines Alias ââanalog zu herkömmlichem FS und DNS ( (VerĂ€nderliches Dateisystem) und ).
Analog zu BitTorrent werden die Daten direkt auf den Systemen der Teilnehmer gespeichert, die im P2P-Modus Informationen austauschen, ohne an zentrale Knoten gebunden zu sein. Wenn es erforderlich ist, eine Datei mit einem bestimmten Inhalt zu erhalten, findet das System Teilnehmer, die ĂŒber diese Datei verfĂŒgen, und versendet sie von ihren Systemen in Teilen in mehreren Threads. Nach dem Herunterladen der Datei auf sein System wird der Teilnehmer automatisch zu einem der Punkte fĂŒr deren Verteilung. Ermittlung von Netzwerkteilnehmern, auf deren Knoten der interessierende Inhalt vorhanden ist verteilte Hash-Tabelle (). Um auf das globale IPFS FS zuzugreifen, kann das HTTP-Protokoll verwendet werden oder das virtuelle FS /ipfs kann mit dem FUSE-Modul gemountet werden.
IPFS hilft bei der Lösung von Problemen wie der SpeicherzuverlĂ€ssigkeit (wenn der ursprĂŒngliche Speicher ausfĂ€llt, kann die Datei von den Systemen anderer Benutzer heruntergeladen werden), der WiderstandsfĂ€higkeit gegen Inhaltszensur (Blockierung erfordert die Blockierung aller Benutzersysteme, die ĂŒber eine Kopie der Daten verfĂŒgen) und der Organisation des Zugriffs wenn keine direkte Verbindung zum Internet besteht oder die QualitĂ€t des Kommunikationskanals schlecht ist (Sie können Daten ĂŒber Teilnehmer in der NĂ€he des lokalen Netzwerks herunterladen). Neben der Speicherung von Dateien und dem Austausch von Daten kann IPFS als Grundlage fĂŒr die Erstellung neuer Dienste verwendet werden, beispielsweise fĂŒr die Organisation des Betriebs von Websites, die nicht an Server gebunden sind, oder fĂŒr die Erstellung verteilter Dienste .
Source: opennet.ru
