Decentralizované úložiště LF převedeno na otevřenou licenci

Vydání LF 1.1.0, decentralizovaného replikovaného úložiště dat klíč/hodnota, je nyní k dispozici. Projekt vyvíjí společnost ZeroTier, která vyvíjí virtuální ethernetový přepínač, který umožňuje kombinovat hostitele a virtuální stroje hostované různými poskytovateli v jedné virtuální místní síti, jejíž účastníci si vyměňují data v režimu P2P. Kód projektu je napsán v jazyce C. Nové vydání je pozoruhodné přechodem na bezplatnou licenci MPL 2.0 (Mozilla Public License).

Dříve byl kód LF dostupný pod licencí BSL (Business Source License), která není zdarma kvůli diskriminaci určitých kategorií uživatelů. BSL byl navržen spoluzakladateli MySQL jako alternativa k modelu Open Core. Podstatou BSL je, že kód rozšířené funkcionality je zpočátku k dispozici pro úpravy, ale po určitou dobu jej lze bezplatně používat pouze za dodatečných podmínek, které pro obejití vyžadují zakoupení komerční licence.

LF je zcela decentralizovaný systém a umožňuje nasadit jediné úložiště dat ve formátu klíč-hodnota nad libovolný počet uzlů. Všechny uzly ukládají data v synchronizovaném stavu a všechny změny jsou plně replikovány mezi všemi uzly. Všechny uzly v LF jsou si rovny. Absence samostatných uzlů koordinujících provoz úložiště umožňuje zbavit se jediného bodu selhání a přítomnost úplné kopie dat na každém uzlu eliminuje ztrátu informací, když jednotlivé uzly selžou nebo jsou vypnuty.

Chcete-li připojit nový uzel k síti, nemusíte získávat samostatná oprávnění – každý může spustit svůj vlastní uzel. Datový model v LF je založen na orientovaném acyklickém grafu (DAG), který zjednodušuje synchronizaci a umožňuje různé řešení konfliktů a bezpečnostní strategie. Na rozdíl od systémů založených na distribuovaných hashovacích tabulkách (DHT) je architektura IF původně navržena pro použití v nespolehlivých sítích, ve kterých není zaručena stálá dostupnost uzlů. Jako oblasti použití LF je zmíněno vytvoření nejodolnějších úložných systémů, ve kterých jsou uložena relativně malá množství kritických dat, která se jen zřídka mění. Například LF je vhodný pro úložiště klíčů, certifikáty, parametry ověřování, konfigurační soubory, hash a názvy domén.

Pro ochranu před přetížením a zneužitím je uplatněn limit na intenzitu operací zápisu do sdíleného úložiště, implementovaný na základě proof of work (proof of work) - aby bylo možné data ukládat, člen úložiště síť musí vykonávat určitý úkol, který lze snadno zkontrolovat, ale vyžaduje velké zdroje ve výpočetní technice (podobně jako organizování expanze systémů založených na blockchainu a CRDT). Vypočítané hodnoty se také používají jako funkce při řešení konfliktů.

Alternativně lze v síti provozovat certifikační autoritu, která účastníkům vydává kryptografické certifikáty, což dává právo přidávat položky bez potvrzení práce a dává přednost řešení konfliktů. Ve výchozím nastavení je úložiště k dispozici bez omezení pro připojení libovolných účastníků, ale volitelně lze na základě systému certifikátů vytvářet oplocená soukromá úložiště, ve kterých se mohou stát účastníky pouze uzly certifikované vlastníkem sítě.

Hlavní vlastnosti LF:

  • Snadno nasaďte své úložiště a připojte se ke stávajícím sítím veřejných úložišť.
  • Absence jediného bodu selhání a možnost zapojit všechny do údržby úložiště.
  • Vysokorychlostní přístup ke všem datům a možnost přístupu k datům, která zůstávají ve vašem uzlu, i po selhání síťového připojení.
  • Univerzální bezpečnostní model, který umožňuje kombinovat různé mechanismy řešení konfliktů (místní heuristika, váha na základě vykonané práce, zohlednění úrovně důvěry ostatních uzlů, certifikáty).
  • Flexibilní rozhraní API pro dotazování na data, které umožňuje více vnořených klíčů nebo rozsahů hodnot. Schopnost svázat více hodnot na jeden klíč.
  • Všechna data jsou uložena v zašifrované podobě, včetně klíčů, a ověřena. Systém lze použít k ukládání citlivých dat na nedůvěryhodných hostitelích. Záznamy, u kterých nejsou známy klíče, nelze určit hrubou silou (bez znalosti klíče není možné získat data s ním spojená).

Z omezení je zde zaměření na ukládání malých, zřídka se měnících dat, absence zámků a zaručená konzistence dat, vysoké požadavky na CPU, paměť, místo na disku a šířku pásma a neustálý nárůst velikosti úložiště v průběhu času.

Zdroj: opennet.ru

Přidat komentář