Rilascio della piattaforma decentralizzata di collaborazione Radicle 1.0

È stata presentata la versione 1.0 della piattaforma P2P Radicle, progettata per creare un servizio decentralizzato di sviluppo e archiviazione del codice, simile a GitHub e GitLab, ma non legato a server specifici, non soggetto a censura e operativo utilizzando le risorse dei partecipanti alla rete P2P. Il rilascio della versione 1.0 segna la stabilizzazione del protocollo e la prontezza della piattaforma per l'uso generalizzato. A partire da questa versione, il protocollo continuerà a essere modificato mantenendo la retrocompatibilità, e gli strumenti includeranno funzionalità per l'aggiornamento fluido dei sistemi esistenti alla nuova versione. I sviluppi del progetto sono scritti in Rust e distribuiti sotto le licenze Apache 2.0 e MIT. Sono disponibili build per Linux e macOS. È in fase di sviluppo anche un client desktop, un'interfaccia web e un'interfaccia da riga di comando.

Radicle consente di sviluppare e distribuire codice senza dipendere da piattaforme e corporation centralizzate, la cui dipendenza comporta ulteriori rischi (singolo punto di fallimento, la società potrebbe chiudere o modificare le condizioni di utilizzo). Per gestire il codice in Radicle si utilizza Git, arricchito da strumenti che definiscono i repository in una rete P2P. Tutti i dati sono principalmente salvati localmente (concetto di local-first) e sono sempre accessibili sul computer dello sviluppatore, indipendentemente dallo stato della connessione di rete.

I partecipanti forniscono accesso al proprio codice e agli artefatti correlati, come patch e discussioni sulla correzione di bug (issues), che sono salvati localmente e replicati sui nodi di altri sviluppatori interessati, connessi a una rete P2P decentralizzata comune. Di conseguenza, si forma un repository Git decentralizzato globale, i cui dati sono replicati e duplicati su diversi sistemi dei partecipanti.

Per determinare i nodi vicini nella rete P2P viene utilizzato il protocollo Gossip, mentre per la replicazione dei dati tra i nodi si utilizza il protocollo Heartwood, basato su Git. Poiché il protocollo è basato su Git, la piattaforma si integra facilmente con gli strumenti esistenti per lo sviluppo su Git. L'identificazione dei nodi e la verifica dei repository avvengono tramite crittografia a chiave pubblica, senza l'uso di account.

Ogni repository nella rete P2P ha un identificatore unico ed è auto-certificato, cioè tutte le azioni nel repository, come l'aggiunta di commit e la pubblicazione di commenti sulle issue, sono firmate digitalmente dal proprietario, consentendo di verificare l'integrità dei dati su altri nodi senza utilizzare enti di certificazione centralizzati. Per accedere al repository è sufficiente che sia online almeno un nodo contenente una copia replicata di esso.

I nodi nella rete P2P possono iscriversi a determinati repository e ricevere aggiornamenti. È possibile creare repository privati, accessibili solo a nodi specifici. Per gestire e possedere un repository si utilizza il concetto di "delegati" (delegates). Un delegato può essere un singolo utente, un bot o un gruppo, associati a un identificatore speciale. I delegati possono accettare patch nel repository, chiudere issue e assegnare diritti di accesso al repository. Possono essere associati più delegati a ciascun repository.

Nei sistemi degli utenti, i repository Radicle sono memorizzati come normali repository git, contenenti spazi dei nomi aggiuntivi per archiviare i dati dei peer e le fork con cui si sta lavorando. Le discussioni, le patch proposte e i componenti per organizzare le recensioni vengono anch'essi conservati nel repository git come oggetti collaborativi (COB - Collaborative Objects) e replicati tra i peer.

Radicle 1.0 include:

  • L'implementazione di un protocollo estensibile per la gestione della rete P2P e la sincronizzazione dei dati.
  • Elementi di interazione sociale, come issue, patch e recensioni del codice.
  • Un protocollo di autenticazione e autorizzazione basato su chiavi pubbliche, che funziona senza enti certificatori centralizzati. server.
  • Un'interfaccia CLI familiare agli utenti che conoscono Git.
  • Un'interfaccia web per navigare tra repository e nodi.
  • Strumenti per garantire la privacy, che includono supporto per repository privati e la possibilità di operare attraverso la rete anonima Tor.
  • Supporto per build ripetibili per verificare che i file eseguibili distribuiti di Radicle siano costruiti dai sorgenti dichiarati.

Funzionalità ancora in fase di sviluppo:

  • Strumenti integrati per l'integrazione continua (CI) e la consegna continua (CD).
  • Interfaccia da riga di comando Radicle TUI (Terminal User Interface).
  • Migliorate capacità di revisione delle modifiche.
  • Sistema di notifiche per le modifiche nei repository.
  • Supporto per profili utente e possibilità di collegare più dispositivi.
  • Supporto per i tag.
  • Utilità per la moderazione e la gestione dei nodi.
  • Applicazione desktop.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster