Byla vydána decentralizovaná platforma pro spolupráci Radicle 1.7

Bylo vydáno vydání P2P platformy Radicle 1.7, zaměřené na vytváření decentralizované služby pro spolupráci a uchovávání kódu, podobné GitHubu a GitLabu, ale nepřipojené k určeným serverům, necenzurované a fungující na zdrojích účastníků P2P sítě. Platforma podporuje typické prvky sociální interakce vývojářů, jako jsou issues, patche a recenze kódu. Vývoj projektu je napsán v jazyce Rust a je distribuován pod licenci Apache 2.0 a MIT. Sestavení jsou připravena pro Linux a macOS. Dodatečně se rozvíjí desktopový klient, webové rozhraní a konzolový rozhraní.

Radicle umožňuje nezávislost při vývoji a distribuci kódu na centralizovaných platformách a korporacích, jejichž vazba přináší dodatečná rizika (jediná bod selhání, společnost může ukončit své fungování nebo změnit podmínky práce). Pro správu kódu se v Radicle používá běžný Git, rozšířený prostředky pro určování repozitářů v P2P síti. Všechna data jsou nejprve ukládána lokálně (koncept local-first) a vždy dostupná na počítači vývojáře, nezávisle na stavu síťového připojení.

Účastníci poskytují přístup ke svému kódu a souvisejícím artefaktům, jako jsou patche a diskuse o opravách chyb (issues), které jsou ukládány lokálně a replikovány na uzly dalších zainteresovaných vývojářů připojených k společné decentralizované P2P síti. Vzniká tak globální decentralizovaný Git repozitář, jehož data jsou replikována a duplikována na různých systémech účastníků.

Pro určení sousedních uzlů v P2P síti se používá protokol Gossip a pro replikaci dat mezi uzly protokol Heartwood založený na Git. Protože je protokol založen na Git, je platforma snadno integrována s existujícími nástroji pro vývoj na Git. Pro identifikaci uzlů a ověřování repozitářů se využívá kryptografie založená na veřejných klíčích, bez použití účtů. Autentizace a autorizace jsou prováděny na základě veřejných klíčů bez centralizovaných certifikačních autorit. servery.

Každý repozitář v P2P síti má svůj jedinečný identifikátor a je sebeověřující (self-certifying), což znamená, že všechny akce v repozitáři, jako je přidávání commitů a zanechávání komentářů k issue, jsou potvrzeny vlastníkem digitálním podpisem, který umožňuje ověřit správnost dat na jiných uzlech bez použití centralizovaných certifikačních autorit. K získání přístupu k repozitáři stačí, aby byl online alespoň jeden uzel, na kterém je jeho replikovaná kopie.

Uzly v P2P síti se mohou přihlašovat k určitým repozitářům a přijímat aktualizace. Existuje možnost vytváření soukromých repozitářů, které jsou přístupné pouze určitým uzlům. Pro správu a vlastnictví repozitáře se používá koncept „delegátů“ (delegates). Delegátem může být jak jednotlivý uživatel, tak bot nebo skupina, spojená se speciálním identifikátorem. Delegáti mohou přijímat do repozitáře patche, uzavírat issue a nastavovat práva přístupu k repozitáři. K každému repozitáři může být přidruženo několik delegátů.

Radicle repozitáře jsou uchovávány na systémech uživatelů jako běžné git repozitáře, ve kterých jsou přítomná další jmenná prostory pro uchovávání dat pirátů a forků, se kterými se aktuálně pracuje. Diskuze, navrhované patche a komponenty pro organizaci recenzování jsou také uchovány v git repozitáři jako sdílené objekty (COB — Collaborative Objects) a replikovány mezi piráty.

V novém vydání:

  • Byla přepracována implementace podepsaných odkazů (sigrefs — Signed References), v níž se objevila ochrana proti opakovanému použití podpisů. Stará struktura repozitáře umožnila nahradit kód jeho starou verzí, přičemž se opětovně použila stará správná podpis. Aby se tato problémy zablokovaly, byla v nové implementaci přidána ukazatel na předchozí záznam, který pokrývá aktuální podpis, což vytváří nepřetržitý řetězec změn, jehož integritu lze sledovat vůči kořenu.
  • Byly rozšířeny možnosti blokování uzlů, které nyní blokují na úrovni správy spojení. Pokud dříve docházelo pouze k blokaci příjmu dat, aniž by se omezovalo připojení uzlu, nyní se blokace uplatňuje ve fázi vytváření spojení se zablokovaným uzlem a při příjmu spojení od zablokovaného uzlu.
  • Je povoleno používat jakékoli odkazy na externí objekty Git, kromě dočasných větví. Dříve byly povoleny pouze odkazy na externí větve, tagy, metadata Radicle, poznámky a objekty pro spolupráci.
  • Byla zvýšena informativnost chybových zpráv, které se objevují při pokusu o provádění operací, pro které uživatel nemá dostatečná oprávnění.
  • Byla zvýšena účinnost vstupu/výstupu. Vývojáři zjistili, že na dlouho spuštěných uzlech kombinace nastavení „journal_mode = WAL“ a „synchronous = FULL“ v databázi SQLite, používané pro uchování místního stavu, vede k velkému objemu operací vstupu/výstupu. Aby se snížil nápor, je nyní výchozí hodnota parametru „synchronous“ nastavena na „NORMAL“ a do konfiguračního souboru Radicle byly přidány nastavení pro změnu těchto hodnot uživateli.
  • Byla odstraněna zranitelnost, jejíž informace budou zveřejněny 23. března. V současnosti je hlášeno pouze to, že vývojářský tým provedl skenování všech veřejně dostupných repozitářů Radicle a nenašel žádné stopy po zneužití tohoto problému.

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster