Le stockage LF décentralisé a été transféré vers une licence ouverte

LF 1.1.0, un magasin de données clé/valeur décentralisé et répliqué, est désormais disponible. Le projet est développé par ZeroTier, qui développe un commutateur Ethernet virtuel qui permet de combiner des hôtes et des machines virtuelles situés chez différents fournisseurs dans un seul réseau local virtuel, dont les participants échangent des données en mode P2P. Le code du projet est écrit en langage C. La nouvelle version se distingue par sa transition vers la licence gratuite MPL 2.0 (Mozilla Public License).

Auparavant, le code LF était disponible sous une BSL (Business Source License), qui n'est pas gratuite en raison de discriminations envers certaines catégories d'utilisateurs. La licence BSL a été proposée par les co-fondateurs de MySQL comme alternative au modèle Open Core. L'essence de BSL est que le code des fonctionnalités avancées est initialement disponible pour modification, mais pendant un certain temps, il ne peut être utilisé gratuitement que si des conditions supplémentaires sont remplies, qui nécessitent l'achat d'une licence commerciale pour être contournées.

LF est un système complètement décentralisé et vous permet de déployer un seul magasin de données dans un format clé-valeur au-dessus d'un nombre arbitraire de nœuds. Les données sont synchronisées sur tous les nœuds et toutes les modifications sont entièrement répliquées sur tous les nœuds. Tous les nœuds de LF sont égaux les uns aux autres. L'absence de nœuds séparés coordonnant le fonctionnement du stockage vous permet de vous débarrasser d'un point de défaillance unique, et la présence d'une copie complète des données sur chaque nœud élimine la perte d'informations lorsque des nœuds individuels tombent en panne ou sont déconnectés.

Pour connecter un nouveau nœud au réseau, vous n'avez pas besoin d'obtenir des autorisations distinctes : n'importe qui peut démarrer son propre nœud. Le modèle de données de LF est construit autour d'un graphe acyclique dirigé (DAG), qui simplifie la synchronisation et permet une variété de stratégies de résolution de conflits et de sécurité. Contrairement aux systèmes de tables de hachage distribuées (DHT), l'architecture IF est initialement conçue pour être utilisée dans des réseaux peu fiables où la disponibilité constante des nœuds n'est pas garantie. Parmi les domaines d'application de LF, on mentionne la création des systèmes de stockage les plus résistants, dans lesquels sont stockés des volumes relativement faibles de données critiques qui changent rarement. Par exemple, LF convient aux magasins de clés, aux certificats, aux paramètres d'identité, aux fichiers de configuration, aux hachages et aux noms de domaine.

Pour se protéger contre la surcharge et les abus, une limite sur l'intensité des opérations d'écriture sur le stockage partagé est appliquée, mise en œuvre sur la base d'une preuve de travail - afin de pouvoir sauvegarder des données, un participant au réseau de stockage doit remplir un certain tâche, qui est facilement vérifiable, mais nécessite des ressources importantes lors du calcul (semblable à l'organisation de l'expansion de systèmes basés sur la blockchain et le CRDT). Les valeurs calculées sont également utilisées comme signe lors de la résolution des conflits.

Comme alternative, une autorité de certification peut être lancée sur le réseau pour délivrer des certificats cryptographiques aux participants, donnant le droit d'ajouter des enregistrements sans confirmation de travail et donnant la priorité à la résolution des conflits. Par défaut, le stockage est disponible sans restrictions pour connecter des participants, mais en option, sur la base d'un système de certificat, des stockages privés clôturés peuvent être créés, dans lesquels seuls les nœuds certifiés par le propriétaire du réseau peuvent devenir participants.

Principales caractéristiques de LF :

  • Déployez facilement votre propre stockage et connectez-vous aux réseaux de stockage publics existants.
  • Il n’y a pas de point de défaillance unique et il est possible d’impliquer tout le monde dans la maintenance du stockage.
  • Accès haut débit à toutes les données et possibilité d'accéder aux données restant sur son nœud, même après une interruption de la connectivité réseau.
  • Un modèle de sécurité universel qui permet de combiner différents mécanismes de résolution de conflits (heuristiques locales, poids basé sur le travail réalisé, prise en compte du niveau de confiance des autres nœuds, certificats).
  • Une API flexible pour interroger des données qui permet de spécifier plusieurs clés imbriquées ou plages de valeurs. Possibilité de lier plusieurs valeurs à une seule clé.
  • Toutes les données sont stockées sous forme cryptée, y compris les clés, et vérifiées. Le système peut être utilisé pour organiser le stockage de données confidentielles sur des nœuds non fiables. Les enregistrements dont les clés ne sont pas connues ne peuvent être déterminés par force brute (sans connaître la clé, il est impossible d'obtenir les données qui lui sont associées).

Les limites incluent l'accent mis sur le stockage de petites données rarement changeantes, l'absence de verrous et la cohérence garantie des données, les exigences élevées en matière de processeur, de mémoire, d'espace disque et de bande passante, ainsi qu'une augmentation constante de la taille de stockage au fil du temps.

Source: opennet.ru

Ajouter un commentaire