Ciao a tutti!
Ieri di NEAR, il progetto su cui io e i miei colleghi abbiamo lavorato negli ultimi 2 anni.
NEAR è un protocollo blockchain e una piattaforma per applicazioni decentralizzate, con un focus sulla performance e sulla facilità d'uso.
Oggi voglio parlare di quali problemi del mondo moderno affrontano i protocolli blockchain, quali problemi potrebbero affrontare ma non lo fanno ancora, e dove si colloca NEAR in tutto questo.
A cosa servono i protocolli blockchain
I protocolli blockchain forniscono un'infrastruttura molto importante che consente di lanciare applicazioni che non sono controllate da alcuna organizzazione centralizzata.
Nel breve termine, ciò viene già utilizzato per costruire servizi finanziari che non sono controllati da banche e stati. Su Ethereum, la piattaforma più popolare al momento per applicazioni decentralizzate, negli ultimi due anni è emerso un enorme numero di interessanti servizi finanziari: MakerDAO ha creato una valuta decentralizzata il cui valore è quasi esattamente pari a un dollaro, permettendo di utilizzare servizi finanziari sulla piattaforma con asset non volatili. Compound ha sviluppato la possibilità di depositare denaro su un conto virtuale e ricevere un reddito quasi garantito; Augur e Flux hanno creato servizi che consentono di scommettere su diversi eventi nel mondo reale. Inoltre, su Ethereum sono state lanciate molte diverse borse decentralizzate. Tutti questi servizi sono o autonomi e non controllati da nessuno, o controllati collettivamente dai partecipanti al servizio.
I prodotti finanziari che non sono controllati da stati e banche rappresentano una direzione molto importante. Ma i protocolli blockchain permettono di fare molto di più.
Nel medio e lungo termine, la stessa infrastruttura consentirà di costruire servizi e applicazioni il cui obiettivo è quello di creare un internet libero e aperto, riducendo l'influenza dominante delle oligopolie sulla nostra vita. Per le applicazioni quotidiane: social network, chat, gruppi di interesse e altro, i protocolli blockchain offrono funzionalità che altrimenti sarebbero molto più difficili da realizzare. Tre esempi:
1. Login unico e informazioni generali sull'account. Oggi quasi tutti i servizi di login unico sono centralizzati. Se utilizzi un'account Gmail per accedere ad applicazioni e Google decidesse di eliminare il tuo account, perderesti l'accesso a tutte le applicazioni per cui hai utilizzato Google. L'uso di una soluzione basata su blockchain per il login unico consente di non dipendere da alcuna organizzazione centralizzata. Inoltre, le applicazioni che utilizzano tale soluzione possono, previa autorizzazione dell'utente, memorizzare diverse informazioni su quell'account unico, che possono poi essere utilizzate in altre applicazioni. Una ipotetica Coursera decentralizzata potrebbe salvare sull'account il completamento di un corso, mentre un ipotetico LinkedIn decentralizzato potrebbe mostrare queste informazioni, e né Coursera né LinkedIn, né il servizio di login possono eliminare, modificare tali informazioni, o chiudere l'account dell'utente in modo da bypassare protocolli trasparenti e predefiniti.
2. Monetizzazione, asset e microtransazioni. Una delle ragioni per cui lo sviluppo di servizi open source non è molto diffuso è che è molto difficile monetizzarli. Poiché nel blockchain il denaro è una parte fondamentale del protocollo e il suo trasferimento non è soggetto a limitazioni, integrare vari metodi di monetizzazione nelle applicazioni e nei servizi è molto più semplice. Senza modalità di monetizzazione sensate, il lavoro su Internet aperto non potrà mai attrarre grandi team seri, e, di conseguenza, le applicazioni in grado di competere con i grandi player non si svilupperanno.
3. Coordinamento della memorizzazione dei dati e dei calcoli. Eseguire calcoli e memorizzare dati sui protocolli blockchain è significativamente più costoso rispetto al cloud. Per la maggior parte delle applicazioni e dei servizi, operare sulla blockchain è economicamente non sostenibile. Tuttavia, se memorizzano e elaborano dati sui propri server, possono esporre i propri server al rischio di guasti, portando alla perdita di dati, o modificare il codice che eseguono, il che è inaccettabile nel contesto di alcune applicazioni decentralizzate. Fortunatamente, esistono diversi approcci che consentono di memorizzare dati e effettuare calcoli al di fuori della blockchain a un costo comparabile a quello del cloud, senza la possibilità di eliminare dati o sostituire calcoli. Questi approcci utilizzano la blockchain come protocollo, in cui i partecipanti che forniscono risorse depositano una garanzia per garantire la correttezza del loro lavoro, mentre i partecipanti che utilizzano risorse possono bruciare o ritirare tale garanzia se riescono a fornire una prova crittografica che i dati non sono stati memorizzati o che i calcoli sono stati eseguiti in modo errato.
Tutte le funzionalità descritte richiedono che il protocollo sottostante sia abbastanza veloce, economico e comprensibile per gli utenti.
Cosa risolve NEAR
NEAR affronta due problemi presenti nei protocolli esistenti.
Il primo è velocità, e ciò porta a costi delle transazioni. Ethereum consente attualmente circa 15 transazioni al secondo. La domanda supera significativamente le 15 transazioni al secondo, e i costi delle transazioni ne conseguono un incremento notevole: la transazione più semplice costa oggi circa ¢40, mentre quelle più complesse alcuni dollari. Quasi tutti gli scenari di utilizzo che ho descritto sopra hanno senso solo se i costi sono più bassi di diversi ordini di grandezza, il che richiede a sua volta una capacità di elaborazione molto più elevata.
Cercare di implementare un protocollo con una capacità di elaborazione superiore, mantenendo il requisito che ogni partecipante alla rete verifichi ogni transazione e mantenga ogni stato, aumenta le esigenze hardware. Questo, a sua volta, accresce la barriera all'ingresso e riduce la decentralizzazione e l'affidabilità del protocollo.
NEAR si espande utilizzando un approccio diverso chiamato Sharding. Ho descritto in dettaglio il sharding nel contesto delle blockchain su Habr. . Il sharding è una scalabilità in orizzontale e permette, in prospettiva, di eseguire molte più operazioni a un costo significativamente inferiore rispetto a protocolli che scalano verticalmente, indipendentemente dalle elevate esigenze hardware che possono presentare.
Il secondo problema è la facilità d'uso. Sviluppare e distribuire applicazioni su NEAR è molto più semplice rispetto ad altri protocolli. E, cosa più importante, gli utenti possono utilizzare le applicazioni distribuite su NEAR senza alcuna conoscenza di blockchain, transazioni o chiavi private.
I protocolli blockchain sono storicamente progettati per massima affidabilità e non per facilitare l'uso. In molti aspetti, questi obiettivi portano a requisiti incompatibili, e il tema dello sviluppo di protocolli utilizzabili da persone senza una formazione tecnica, ma sufficientemente affidabili per scenari in cui la perdita di un account può costare milioni di dollari, è un argomento per un articolo a parte.
Su puoi esplorare esempi di sviluppo di applicazioni per NEAR in Rust e AssemblyScript (sottoinsieme di TypeScript) in un IDE interattivo nel browser, e come appaiono per l'utente finale.
In conclusion
Internet aperto e strumenti finanziari decentralizzati non possono, per definizione, essere costruiti da un'unica azienda.
Costruire l'infrastruttura è solo una piccola parte del lavoro necessario per creare un ecosistema in cui tutti i servizi principali siano controllati dalla comunità, e non da oligopoli.
Se hai idee per servizi gestiti dalla comunità e desideri lavorarci, unisciti al nostro programma di supporto agli imprenditori. .
Se sei uno sviluppatore, unisciti all'ecosistema: , costruiamo insieme un internet aperto!
Fonte: habr.com
