Algorand (ALGO) è un progetto blockchain di alto livello, progettato dal crittografo Silvio Micali, incentrato sull'elaborazione delle transazioni ad alta velocità e sui contratti intelligenti di alto livello per la finanza decentralizzata (DeFi).
Unessuno dei progetti più recenti al mondo DeFi e DApp (applicazioni decentralizzate) è Algorand (ALGO). L'obiettivo di questa rete è molto chiaro: essere una rete progettata e costruita per essere scalabile, economica, estensibile e altamente programmabile. E, attualmente, questa rete è uno dei progetti blockchain di terza generazione che è cresciuto di più negli ultimi anni.
Ma cos'è esattamente Algorand? Mantiene davvero ciò che promette? Bene, risponderemo a questo e molto altro di seguito.
Origine di Algorand
La storia di Algorand inizia nel 2017, quando l'azienda è stata creata da Silvio Micali, un noto professore del MIT, vincitore del premio Turing e specialista in crittografia. Micali, che fa parte della comunità crittografica dal 1980, ha un lavoro significativo in crittografia asimmetrica, ed è co-creatore insieme a Shafira Goldwasser del test a conoscenza zero (ZKP).
Micali, da sempre ricercatrice, conosce il tecnologia blockchain y Bitcoin (BTC) nel 2015 e ne è interessato. A quel punto, Micali ha iniziato a lavorare al suo progetto di crittografia personale, determinato a migliorare le specifiche di Bitcoin e del noto Ethereum. Ciò lo ha portato a collaborare con Nickolai Zeldavich, un collega del MIT che ha ricoperto il ruolo di responsabile dei sistemi distribuiti presso questa istituzione e che è stato coinvolto nel Computer Science and Artificial Intelligence Laboratory (CSAIL).
La prima impressione di Nickolai ha portato a un esperimento su larga scala per testare la proposta iniziale di Micali. Il test è stato effettuato utilizzando i server Amazon e forzando il sistema con un massimo di 500mila utenti simultanei sulla rete. I test hanno avuto successo per essere una versione non lucidata del sistema e questo li ha portati alla fase successiva: la creazione di Algorand. In linea di principio, hanno partecipato al team un totale di 11 persone, che si sono incontrate a casa di Micali per svolgere il proprio lavoro.
I suoi primi successi
L'opera ha dato i suoi primi frutti quando è stato raggiunto un seed capital di $ 4 milioni con gli investitori Pillar e Union Square Ventures, nel febbraio 2018. Successivamente, un altro round di finanziamento di $ 62 milioni sarebbe arrivato nell'ottobre 2018, dalla mano di altri investitori . Nello stesso mese, Algorand ha nominato Steve Kokinos (un imprenditore seriale, fondatore di due società da più di 700 milioni di dollari) come CEO e Sean Ford (ex CMO di LogMeIn) come COO. Il messaggio di queste assunzioni era chiaro: assumere persone in grado di ampliare il business.
L'opera è stata resa pubblica a maggio 2019, con l'arrivo della rete testnet. Ma insieme alla sua presentazione, è stato avviato un lavoro parallelo per garantire un programma di partecipazione universitaria al progetto. Nasce così a giugno 2019 il Global University Program, in cui le migliori università di Stati Uniti, Canada, Europa, Medio Oriente e Cina sono state invitate a far parte del programma inaugurale di ricerca universitaria.
I membri fondatori includono Massachusetts Institute of Technology, Peking University, Sapienza University of Rome, Stony Brook University, Tel Aviv University, Tsinghua University, University of California, University of Berkeley, University of the Italian Svizzera e, University of Waterloo.
Oltre a questo, si è tenuta la prima asta di token ALGO e una settimana dopo i principali scambi della comunità crittografica avrebbero aggiunto il token ai loro pari. Inizia così il lungo viaggio di Algorand come nuova piattaforma di sviluppo di criptovalute e blockchain.
L'obiettivo di Algorand
L'obiettivo principale di Algorand è diventare una piattaforma dedicata all'offerta applicazioni decentralizzate (DApps) y DeFi di alta velocità che sono alla portata di tutti. Per raggiungere questo obiettivo, Algorand è una blockchain "senza autorizzazione". In questo modo chiunque può farne parte, all'interno di un sistema trasparente in cui tutti possono raggiungere il successo attraverso progetti e applicazioni decentralizzate.
D'altra parte, per affrontare il Blockchain Trilemma, Algorand si basa su un protocollo di consenso potente e veloce che può essere utilizzato da qualsiasi utente con una potenza di calcolo minima, che possiede $ ALGO ed è online. Tutti questi elementi ti danno il diritto di essere scelto per partecipare all'Algorand block consensus, che è un derivato del sistema di Prova di partecipazione o prova di partecipazione.
Ma insieme a questo, Algorand concentra il suo sviluppo sulla creazione di strumenti che facilitano l'implementazione di applicazioni decentralizzate e tutta l'infrastruttura necessaria per il loro funzionamento.
Come funziona Algorand?
Come abbiamo discusso poco fa, Algorand è una blockchain e una rete senza autorizzazione. Questo primo punto è fondamentale per eliminare qualsiasi tipo di barriera nell'uso e nell'evoluzione del protocollo. L'idea principale alla base di questo principio è garantire un alto livello di decentralizzazione, scalabilità e sicurezza.
In secondo luogo, il funzionamento di Algorand si basa su un protocollo di consenso derivato da Proof of Stake (chiamato Pure Proof of Stake- PPoS). Questo sistema nasce per garantire la piena partecipazione di chi fa parte della rete, garantendo protezione e velocità. L'utilizzo del PPoS si inquadra nel raggiungimento della velocità di produzione dei blocchi misurata in pochi secondi, che consentirebbe un'elevata scalabilità della rete, servendo così migliaia di utenti contemporaneamente, con tempi di attesa brevissimi e, soprattutto, con bassissime commissioni costi.
Inoltre, il team di sviluppo di Algorand ha ideato nuovi algoritmi di consenso, sistemi bizantini a tolleranza d'errore e un sistema di hashing e firma digitale completamente nuovo, incentrato sul consentire la massima scalabilità possibile.
Pure Proof of Stake, il pilastro dell'alta velocità di Algorand
Il pilastro principale della scalabilità e della velocità di Algorand è il suo protocollo Pure Proof of Stake o Pure Proof of Stake (PPoS). Questo protocollo è un derivato del noto Proof of Stake (PoS) di altre criptovalute come Ethereum 2.0. L'idea di questo protocollo in Algorand è quella di consentire una resistenza ai guasti bizantina sufficientemente sicura, fornendo al contempo una grande velocità nella generazione e convalida dei blocchi all'interno della rete. Allo stesso tempo, PPoS è in grado di supportare un gran numero di utenti contemporaneamente e di scalare correttamente man mano che la rete aumenta il numero di validatori.
Risultato? Algorand è in grado di gestire nello stato attuale della rete circa 2mila transazioni al secondo senza problemi. In effetti, il picco di utilizzo più elevato di Algorand si è verificato il 04 marzo 2021, quando solo quel giorno è stato in grado di gestire più di 39 milioni di transazioni (circa 451 TPS in media, con un picco di 1153 TPS). A questo possiamo aggiungere un tempo di generazione di blocchi di 4 secondi in media, che ci lascia una delle blockchain più veloci su cui si possa contare oggi.
PPoS, un algoritmo a cui tutti partecipano
Una delle caratteristiche principali di Algorand è che qualsiasi utente online e che possiede token ALGO può partecipare al sistema PPoS. Cioè, PPoS rimuove la barriera che PoS impone alla creazione di un file Staking hard, dove è necessario trattenere una certa quantità di token per partecipare alla selezione, generazione e validazione di transazioni e blocchi.
Questo diversifica e decentralizza ulteriormente il processo di generazione rendendo PPoS un sistema molto più decentralizzato rispetto a PoS (e più simile a Proof of Work - PoW). Oltre a ciò, PPoS elimina la necessità per i suoi utenti di esporre le proprie chiavi di spesa (ovvero le chiavi che utilizzano per spendere la partecipazione) per ottenere il consenso. Invece, un utente che vuole partecipare al protocollo genera e registra una chiave di partecipazione. Con questa chiave, un account può partecipare alla proposta e alla votazione di blocchi. L'utilizzo delle chiavi di partecipazione garantisce la sicurezza degli algoritmi di un utente anche se il nodo partecipante è compromesso.
Un processo di selezione sicuro e casuale
Un altro punto a favore di PPoS è che la selezione del nuovo validatore avviene grazie ad un seme che viene indicato in ogni nuovo blocco generato. Il ruolo di questo seme è quello di servire come punto di partenza per il processo di selezione del prossimo nodo validatore all'interno di PPoS.
Quando il seme raggiunge la rete, i nodi lo prendono, ne calcolano il valore e ne svelano il segreto. Il segreto è la selezione, cioè il seme indica l'elenco dei nodi che è stato scelto per il prossimo ciclo di validazione. Questo segreto è protetto da a funzione crittografica autoverificante (VRF) che collega la chiave di partecipazione del nodo al seme di selezione. Pertanto, ogni nodo deve prendere solo il seme, la sua chiave di partecipazione e, applicando la funzione VRF, saprà se è stato scelto per il ciclo di generazione successiva. Tutto questo processo avviene in meno di un secondo per un hardware poco potente come uno smartphone.
A questo punto, i nodi scelti iniziano il processo di generazione dei blocchi. A tale scopo, i nodi propongono un blocco e viene selezionato un comitato di voto per votare la proposta di blocco. Se la grande maggioranza dei voti proviene da partecipanti onesti, il blocco può essere certificato. In questo senso, questo processo richiede:
- Proponi il blocco (Blocca proposta dai nodi scelti)
- Vota il blocco (voto soft)
- Certificare il voto (Certificazione e convalida finale del blocco)
Sono questi tre passaggi che assicurano che il nuovo blocco Algorand non abbia transazioni a doppia spesa o qualsiasi altra azione dannosa che influisca sul consenso.
Un triplo processo per garantire la sicurezza
Il primo processo, come abbiamo già visto, inizia con i nodi scelti e la creazione della loro proposta di blocco con le transazioni da validare. Ma il secondo processo, noto come Soft Vote (o Block Vote) è un processo ben definito e vitale per Algorand.
A questo punto, ogni nodo scelto dal seed di selezione avrà un voto ponderato in base al numero di token ALGO all'interno del gruppo di selezione. Cioè, se un nodo è stato eletto, il suo potere di voto sarà tanto maggiore quanto più gettoni ALGO avrà in suo possesso. Pertanto, quando viene toccato il punto di voto, i nodi avranno un potere di voto diverso. Il primo processo di votazione viene effettuato fino al raggiungimento del quorum necessario per raggiungere il processo di certificazione.
La terza procedura o certificazione del voto è svolta da un comitato di certificazione, scelto tra i nodi selezionati. La funzione di questi nodi è quella di verificare che i nodi che in precedenza hanno votato lo abbiano fatto correttamente, assicurandosi anche che non ci siano doppie spese o altre operazioni dannose. Questo processo di verifica è l'ultima linea di difesa contro gli attacchi. Se il blocco è finalmente certificato, viene emesso un certificato per quel blocco, viene creato un nuovo seme di selezione e il blocco viene inviato definitivamente alla blockchain, in modo che il processo ricomincia.
A questo punto i partecipanti al processo ricevono la loro ricompensa per il lavoro svolto. Questi premi sono proporzionali alla tua partecipazione per ogni blocco impegnato nella catena. Attualmente, la ricompensa per blocco è fissata a 41,5 QUALCOSA per blocco. Puoi vedere in questo link un calcolatore di premi se sei interessato a ciò che Algorand può offrirti.
Strutturare la rete dei nodi Algorand
Un altro punto aggiuntivo nelle innovazioni di Algorand è legato al modo in cui viene gestita la sua rete di nodi. L'algoritmo PPoS necessita di un'organizzazione un po 'speciale per il suo funzionamento e questo ha portato Algorand a creare due tipi di nodi:
Nodi di inoltro o nodi di inoltro
Si tratta di nodi la cui funzione principale è quella di agire come punti di connessione con altri nodi. Sono in un certo senso punti di distribuzione che consentono di collegare velocemente diversi punti della rete. Se, ad esempio, un nodo invia un messaggio alla rete, questo messaggio andrà ai nodi collegati a quel nodo e al nodo relay di quel nodo.
Una volta che il messaggio raggiunge il nodo di inoltro, lo inoltra al resto dei nodi ad esso collegati e, in questo modo, il messaggio raggiunge il resto della rete molto più velocemente. L'idea è semplice, ridurre al minimo la quantità di ritrasmissioni di dati sulla rete, risparmiando larghezza di banda e massimizzando la velocità con cui i messaggi raggiungono tutti i loro punti.
Oltre a ciò, i nodi di inoltro eseguono processi di deduplicazione dei messaggi, verifica della firma e altri passaggi di convalida, per propagare i messaggi in modo più efficiente. Il meglio di questo? Chiunque può installare e gestire un nodo di inoltro.
Nodi di partecipazione o nodi di partecipazione
Si tratta di nodi la cui funzione è quella di far parte del gruppo di nodi che faranno il loro lavoro nel generare, votare e convalidare i blocchi in Algorand. In un certo senso, sarebbero l'equivalente di minatori PoW o nodi di picchettamento PoS.
Vault, una nuova forma di contabilità blockchain
Altre importanti innovazioni in Algorand sono legate al modo in cui il suo token ALGO viene generato e gestito sulla blockchain, sia a livello di account e token generation, sia crittograficamente.
Ricordiamoci che in blockchain è necessario sapere come viene generata una valuta per conoscerne l'origine, ea quel punto, per sapere qual è il suo percorso durante tutto il suo periodo di utilizzo. In Bitcoin, questo è possibile grazie a coinbase (che genera bitcoin) e UTXO (Ci dicono da dove vengono e dove vanno le monete). Tuttavia, Algorand non usa nulla di tutto questo. Invece, Algorand ha creato Vault, un sistema di bootstrap o creazione di monete iniziale completamente diverso.
Vault è un sistema che ti consente di scollegare il monitoraggio dei saldi dei conti e delle transazioni. Pertanto, Vault crea solo una cronologia recente delle operazioni, in cui le operazioni più vecchie non hanno alcuna rilevanza.
D'altra parte, Vault ti consente anche di usare lo sharding per;
- Frammentazione dello stato dell'account tra i nodi, in modo che ogni nodo non debba memorizzare lo stato di tutti gli account.
- Consenti a tutte le transazioni di essere convalidate da tutti i nodi, utilizzando un file albero di merkle per memorizzare le informazioni sul saldo per ogni account.
- Memorizza in modo adattivo gli strati superiori dell'albero Merkle in modo che il costo della larghezza di banda per il trasferimento delle prove Merkle cresca in modo logaritmico con il numero di account.
Questo ingegnoso sistema impedisce che un account venga creato monete dal nulla, aiuta a creare uno strato di difesa contro la doppia spesa, semplifica la contabilizzazione delle monete all'interno della rete e, infine, rende la blockchain di Algorand più efficiente in termini di spazio rispetto ad altre opzioni come Bitcoin o Ethereum.
A questo si aggiunge un sistema di certificati crittografici che cerca di ridurre il costo per convincere nuovi utenti della validità di un blocco. Per evitare frodi, questo sistema di certificati è verificabile a livello di rete, il che impedisce a terze parti di iniettare certificati non validi nella rete, che potrebbero creare saldi inesistenti in nuovi account (generare monete da zero).
Di conseguenza, una blockchain Algorand con 500 milioni di transazioni occuperebbe solo circa 500 MB di spazio su disco rigido. Lo stesso equivalente in Bitcoin, invece, occuperebbe un totale di 5 GB. Si tratta di una riduzione del 90% delle dimensioni della blockchain, senza diminuire, mentre difendono, la sicurezza.
Sorpreso? Bene, in Bitcoin stanno attualmente cercando di creare qualcosa di simile con il progetto UTreeXO di cui parliamo qui a Bit2Me Academy. Con questo progetto, la dimensione della blockchain potrebbe essere notevolmente ridotta per i nuovi nodi che iniziano sulla rete.
Smart Contracts, la grande risorsa di Algorand
Algorand è anche una blockchain nata per portare alla sua massima espressione il file smart contract. Per questo, Algorand ha creato Algorand Smart Contracts 1 (ASC1). Questi contratti intelligenti sono progettati per sfruttare tutte le possibilità di Algorand come rete. Per questo, ASC1 fa uso di TEAL o Transaction Execution Approval Language, o la sua associazione in Python, PyTEAL.
TEAL è un linguaggio basato su stack che si traduce in un bytecode iniettato nelle transazioni Algorand, dove è possibile controllare i parametri della transazione e approvare la transazione come se fosse una firma. I programmi hanno accesso in sola lettura alla transazione a cui sono collegati, alle transazioni nel loro gruppo di transazioni atomiche e ad alcuni valori globali. Inoltre, i programmi non possono modificare o creare transazioni, ma solo rifiutarle o approvarle.
I programmi TEAL devono essere brevi ed eseguiti rapidamente, poiché vengono eseguiti online insieme al controllo della firma, al controllo delle regole di bilanciamento delle transazioni e ad altri controlli durante l'assemblaggio e la convalida dei blocchi. Grazie a questa funzionalità, è possibile creare applicazioni utili in meno di 100 istruzioni, che, insieme a una blockchain ad alta velocità, le fa girare molto velocemente. Infatti, in media uno smart contract scritto in TEAL impiega in media circa 5 secondi. Un altro punto a favore di TEAL e il modo in cui funziona è che è molto economico da gestire. Un contratto intelligente può costare circa 0,001 QUALCOSA per essere eseguito.
Di seguito, vedrai un esempio di TEAL, in cui viene scritto un contratto intelligente HTLC per Algorand. In confronto, lo stesso contratto intelligente HTLC scritto per Bitcoin utilizzando Python, poiché scriverlo in Bitcoin Script è molto più complesso (anche se più breve in termini di scrittura).
Oltre a questo, altre funzioni che possono essere sfruttate in Algorand con i suoi smart contract sono:
- Creazione di conti di deposito a garanzia (Pagamenti in garanzia)
- Pagamenti di prestiti e pignoramenti di commissioni
- Ordini limitati
- Suscripciones
- Obbligazioni garantite
- Erogazioni regolamentate e automatizzate
- Commissioni ricorrenti programmate / debito ricorrente
- Gestione delegata di account ad alta sicurezza
- Interfaccia con fornitori di dati off-chain
- Trasferimenti atomici tra catene
- HELOC (Home Equity Line of Credit)
- Scambi decentralizzati (DEX)
- Convalida del rimborso
- Swap atomici a catena incrociata.
Infine, gli smart contract in Algorand possono essere progettati anche in altri linguaggi di programmazione come JavaScript, Java o Go, che consente un'ampia gamma di opzioni per programmare smart contract in questa piattaforma in un modo molto più semplice. Ovviamente, tutto questo è tradotto in TEAL e nel suo byetcode.
Caratteristiche principali del progetto
La caratteristica principale di questo progetto è la blockchain pubblica open source. Il meccanismo di consenso di Algorand promuove le prestazioni, la sicurezza e l'apertura di una rete decentralizzata. Detto questo, le prestazioni delle transazioni di Algorand sono destinate a competere con i sistemi finanziari e di pagamento più diffusi.
Secondo il team di sviluppo, queste sono le proprietà chiave del protocollo Algorand:
- Bassi requisiti di calcolo: nessuna necessità di mining farm che consumano molta energia.
- Accordo rapido: l'intera community accetta il blocco successivo e conferma le transazioni con latenza in circa un minuto, scalando a molti utenti.
- Delegazione: i possessori di token possono delegare i loro token se vogliono partecipare al consenso.
- Probabilità di fork estremamente bassa: gli utenti possono fidarsi di un nuovo blocco non appena appare. Anche se la rete è temporaneamente partizionata, Algorand garantisce che nessun utente abbia opinioni divergenti sulla transazione confermata.
- Vera decentralizzazione: la rete non è controllata da pochi minatori o da un gruppo di validatori, poiché i proponenti e i comitati sono selezionati casualmente.
- Governance: i possessori di token della community possono proporre modifiche ai protocolli e concordare la loro capacità di evolversi.
- Utilizzo di ricerca scientifica e partner commerciali influenti: Algorand collabora con leader aziendali fidati che lavorano in aziende di fama mondiale.
- Distribuzione totale di token: 10.000 miliardi di token ALGO.
- Fornitura stimata circolante di token ALGO da immettere nel mercato (inizialmente tramite aste) durante i primi 5 anni (600 milioni c / anno), per un totale di 3.000 milioni.
- Ricompensa stimata per partecipazione (distribuita nel tempo): 1.750 miliardi di token ALGO.
- Nodi di inoltro o broker di ritrasmissione: 2.500 milioni di token ALGO.
- Algorand & Algorand Foundation, Inc. (distribuito nel tempo) 2.500 miliardi di token ALGO.
- End User Grants (distribuiti nel tempo): 250 milioni di token ALGO.
DeFi, il punto di forza di Algorand
Inoltre, a fine 2019, questo progetto ha proposto due nuove soluzioni da implementare sul Layer 1 della sua piattaforma:
- La generazione di nuovi gettoni fungibili
- L'esecuzione di trasferimenti atomici multipartitici (AMPT).
- Anche queste soluzioni fanno parte del protocollo di consenso, mantenendo le caratteristiche originali della blockchain. Le soluzioni proposte sono fondamentali per lo sviluppo di applicazioni DeFi come la tokenizzazione di asset finanziari; come derivati, opzioni, swap e altri titoli.
Oltre a questo, è in corso qualcosa chiamato FutureFi o Future Finance. FutureFi non è altro che massimizzare le capacità DeFi. Per fare ciò, cerca di creare un Layer-2 (un sistema off-chain) che consenta di ridimensionare le capacità di contratto intelligente della rete, insieme a un sistema di archiviazione dati decentralizzato e molto altro.
Questo è il futuro di Algorand, quello che è in costruzione e che è supportato da varie aziende, università e comunità che fanno vita nel mondo delle criptovalute.