Der dezentrale Speicher LF wurde auf eine offene Lizenz umgestellt

Die Version LF 1.1.0 eines dezentralisierten replizierbaren Datenspeichers im Schlüssel/Wert-Format ist verfügbar. Das Projekt wird von ZeroTier weiterentwickelt, das einen virtuellen Ethernet-Switch entwickelt, der es ermöglicht, Hosts und virtuelle Maschinen von verschiedenen Anbietern in einem einzigen virtuellen lokalen Netzwerk zu verbinden, in dem die Teilnehmer Daten im P2P-Modus austauschen. Der Code des Projekts ist in der Programmiersprache C geschrieben. Die neue Version zeichnet sich durch den Übergang zu der freien Lizenz MPL 2.0 (Mozilla Public License) aus.

Zuvor war der Code von LF unter der BSL (Business Source License) verfügbar, die aufgrund der Diskriminierung bestimmter Benutzerkategorien nicht frei ist. Die BSL wurde von den Mitbegründern von MySQL als Alternative zum Open-Core-Modell angeboten. Der Kern der BSL besteht darin, dass der Code erweiterter Funktionen zunächst zur Änderung verfügbar ist, jedoch für eine gewisse Zeit kostenlos nur unter Einhaltung zusätzlicher Bedingungen verwendet werden kann, deren Umgehung den Erwerb einer kommerziellen Lizenz erfordert.

LF ist ein vollständig dezentrales System und ermöglicht die Bereitstellung eines einheitlichen Datenspeichers im Schlüssel-Wert-Format über eine beliebige Anzahl von Knoten. An allen Knoten werden die Daten synchron gehalten, und alle Änderungen werden vollständig zwischen allen Knoten repliziert. Alle Knoten in LF sind gleichwertig. Das Fehlen einzelner Knoten, die die Arbeit des Speichers koordinieren, eliminiert den Single Point of Failure, und die vollständige Kopie der Daten auf jedem Knoten schließt den Verlust von Informationen bei Ausfall oder Abschaltung einzelner Knoten aus.

Für den Anschluss an das Netzwerk eines neuen Knotens sind keine speziellen Berechtigungen erforderlich — jeder kann seinen eigenen Knoten starten. Das Datenmodell in LF basiert auf einem gerichteten azyklischen Graphen (DAG), der die Synchronisierung erleichtert und verschiedene Strategien zur Konfliktlösung und Sicherheit ermöglicht. Im Gegensatz zu Systemen, die auf verteilten Hash-Tabellen (DHT) basieren, ist die IF-Architektur von Anfang an für den Einsatz in unzuverlässigen Netzwerken ausgelegt, in denen die ständige Verfügbarkeit von Knoten nicht garantiert ist. Anwendungsbereiche von LF beinhalten die Schaffung maximal ausfallsicherer Speichersysteme, die relativ kleine Mengen kritischer Daten speichern, die selten geändert werden. Beispielsweise eignet sich LF für die Speicherung von Schlüsseln, Zertifikaten, Identifikationsparametern, Konfigurationsdateien und Hashes. Domainnamen.

Zum Schutz vor Überlastung und Missbrauch wird die Intensität der Schreiboperationen in den gemeinsamen Speicher begrenzt, die auf einem Proof-of-Work-Prinzip basiert — um die Möglichkeit zur Datenspeicherung zu erhalten, muss ein Teilnehmer des Speichernetzwerks eine bestimmte Aufgabe lösen, die leicht überprüfbar, aber rechenaufwändig ist (ähnlich der Erweiterung von Systemen auf Basis von Blockchain und CRDT). Die berechneten Werte werden auch als Anzeichen für die Konfliktlösung verwendet.

Alternativ kann im Netzwerk eine Zertifizierungsstelle gestartet werden, die den Teilnehmern kryptografische Zertifikate ausstellt, die das Recht geben, Einträge ohne Arbeitsbestätigung hinzuzufügen und priorisierte Konfliktlösungen zu erhalten. Standardmäßig ist der Speicher ohne Einschränkungen für den Anschluss beliebiger Teilnehmer verfügbar, jedoch können optional auf Basis eines Zertifikatsystems abgetrennte private Speicher erstellt werden, an denen nur Knoten teilnehmen können, die vom Netzwerkbesitzer zertifiziert sind.

Die Hauptmerkmale von LF:

  • Einfachheit bei der Bereitstellung des eigenen Speichers und der Anbindung an bestehende öffentliche Speichernetzwerke.
  • Fehlende zentrale Ausfallstelle und die Möglichkeit, alle Interessierten in die Wartung des Speichers einzubeziehen.
  • Hohe Zugriffsgeschwindigkeit auf alle Daten und die Möglichkeit, auf Daten zuzugreifen, die auf ihrem eigenen Knoten verbleiben, auch nach einer Netzwerkunterbrechung.
  • Universelles Sicherheitsmodell, das die Kombination verschiedener Konfliktlösungsmechanismen ermöglicht (lokale Heuristik, arbeitsbasierte Gewichtung, Berücksichtigung des Vertrauensniveaus anderer Knoten, Zertifikate).
  • Flexibles API zur Abfrage von Daten, das die Angabe mehrerer geschachtelter Schlüssel oder Wertebereiche erlaubt. Möglichkeit, mehreren Werten einen Schlüssel zuzuordnen.
  • Alle Daten werden verschlüsselt gespeichert, einschließlich der Schlüssel, und verifiziert. Das System kann verwendet werden, um die Speicherung vertraulicher Daten auf nicht vertrauenswürdigen Knoten zu organisieren. Einträge, deren Schlüssel unbekannt sind, können nicht durch Ausprobieren bestimmt werden (ohne Schlüssel können die damit verbundenen Daten nicht abgerufen werden).

Zu den Einschränkungen gehört die Ausrichtung auf die Speicherung kleiner, selten geänderter Daten, das Fehlen von Sperren und garantierter Datenkonsistenz, hohe Anforderungen an CPU, Speicher, Speicherplatz und Bandbreite sowie das ständige Wachstum des Speicherplatzes im Laufe der Zeit.

Quelle: opennet.ru

60GB SSD 8Gb DDR4