Cos’è Chainlink (LINK) | Una spiegazione semplice?

Cos’è Chainlink (LINK)?
Chainlink è una rete di servizi oracle. In parole semplici: aiuta gli smart contract a usare informazioni e sistemi esterni a una blockchain.
Uno smart contract è un programma su una blockchain che esegue automaticamente delle regole. Un contratto del genere non può semplicemente andare su internet da solo per chiedere, per esempio, un prezzo, il saldo di una riserva o lo stato di un’altra rete. Qui entra in gioco Chainlink: porta quelle informazioni esterne sulla blockchain, così uno smart contract può usarle.
Chainlink quindi non è una propria blockchain Layer 1, cioè una blockchain autonoma su cui vengono elaborate le transazioni. È un’infrastruttura che le applicazioni su diverse blockchain possono usare.
Il token nativo si chiama LINK. Questo token è stato emesso originariamente su Ethereum ed è un token ERC-677, un’estensione del noto standard ERC-20. LINK può essere usato per pagare i fornitori di servizi della rete, come gli operatori dei nodi. In alcuni servizi, il pagamento può avvenire anche in un’altra cryptoasset oppure essere gestito in background. Quindi non devi sempre pagare direttamente in LINK.
Il mainnet di Chainlink su Ethereum è andato live il 30 maggio 2019.
In breve
- Chainlink collega gli smart contract con dati e sistemi esterni alla blockchain.
- LINK è il token che può essere usato, tra le altre cose, per pagare i servizi di Chainlink e per lo staking.
- Più nodi indipendenti possono raccogliere ed elaborare dati insieme.
- CCIP è pensato per messaggi e token tra blockchain supportate.
- Gli oracle restano dipendenti dai dati esterni, dalle impostazioni e dal modo in cui un’applicazione li usa.
Come funziona Chainlink?
Chainlink funziona con i cosiddetti Decentralized Oracle Networks, spesso abbreviati in DON. Una rete del genere è composta da più nodi indipendenti. Qui un nodo è un computer o un servizio che può recuperare dati, seguire eventi su una blockchain e trasmetterli alla rete.
Immagina che uno smart contract abbia bisogno di un prezzo. Invece di fidarsi di un solo sito web o di un solo server, più operatori di nodi possono raccogliere i dati. Poi raggiungono un accordo sul risultato fuori dalla blockchain. Quel risultato viene quindi pubblicato sulla blockchain, così lo smart contract può usarlo.
Con i Chainlink Data Feeds, più nodi elaborano dati provenienti da fonti diverse. Un contratto aggregatore raccoglie le loro risposte e ne crea un unico valore sulla blockchain. Uno smart contract può poi leggere e usare quel valore pubblicato nella stessa transazione.
Una parte importante di questo processo è l’Offchain Reporting, o OCR. Qui i nodi raggruppano prima le loro osservazioni e le firme digitali fuori dalla blockchain. Poi viene pubblicato onchain un solo report condiviso. La blockchain controlla che ci siano abbastanza firme. In questo modo servono meno transazioni onchain rispetto a quando ogni nodo invia un aggiornamento separato.
Di solito un Data Feed non viene aggiornato a ogni piccolo cambiamento. Un aggiornamento può essere attivato se il valore si discosta abbastanza da quello precedente, oppure se è passato un periodo impostato. Questo periodo si chiama heartbeat. Il numero di nodi, le fonti di dati usate, la soglia di scostamento e l’heartbeat possono variare da feed a feed e da blockchain a blockchain.
Panoramica di Chainlink (LINK)
Cosa sono gli oracle di Chainlink?
Un oracle è un’infrastruttura che permette a uno smart contract di lavorare con informazioni o azioni esterne alla propria blockchain. Questo serve perché uno smart contract normalmente vede solo ciò che succede sulla sua blockchain.
Gli oracle di Chainlink possono, per esempio, rendere disponibili dati sui prezzi, saldi di riserva e lo stato dei sequencer di Layer 2. Un sequencer aiuta a ordinare le transazioni su una rete Layer 2. Il suo stato può essere importante per un’applicazione che vuole sapere se quella rete funziona normalmente.
L’idea dietro un oracle di Chainlink non è che una sola parte fornisca tutte le informazioni. Un DON usa più nodi indipendenti. Inoltre, i Data Feed possono combinare dati provenienti da più fonti prima che un unico valore aggregato venga inserito onchain.
Questo può ridurre il rischio di un singolo punto di guasto. Ma non significa che il risultato sia sempre perfetto. Se le fonti di dati esterne non sono corrette, non sono disponibili o non arrivano in tempo, una rete oracle non può escluderlo del tutto.
Per questo le applicazioni che usano i Data Feed devono inserire controlli propri. Per esempio, un controllo che verifichi se un valore è abbastanza recente, più misure di emergenza per ritardi, guasti e movimenti di mercato estremi.
Cos’è Chainlink CCIP?
CCIP sta per Cross-Chain Interoperability Protocol. È un protocollo che permette alle applicazioni di inviare messaggi, token o una combinazione di entrambi tra blockchain supportate.
Puoi vederlo come un modo per portare un’istruzione da una blockchain a un’altra. Un messaggio CCIP passa in linea generale attraverso quattro fasi: viene inviato sulla chain di origine, verificato fuori dalla blockchain, arricchito con attestazioni raccolte e poi eseguito sulla chain di destinazione. Qui le attestazioni sono conferme che i controlli necessari sono stati eseguiti.
CCIP aspetta prima la finalità sulla chain di origine. La finalità significa che una transazione è considerata definitiva all’interno di quella rete. Solo dopo il messaggio può essere eseguito sulla chain di destinazione. Per questo un trasferimento cross-chain non è immediato. Il tempo totale di attesa dipende tra le altre cose dalla chain di origine, dalla chain di destinazione e dalle condizioni su entrambe le reti.
In un trasferimento di token, i cosiddetti token pool possono bloccare o bruciare i token sulla chain di origine. Sulla chain di destinazione, i token possono poi essere rilasciati o mintati. Quale variante viene usata dipende dal token e dal percorso scelto.
Le applicazioni usano router onchain come punto di ingresso per CCIP. I DON eseguono la validazione offchain dei messaggi cross-chain. I costi vengono calcolati al momento dell’invio. A seconda del percorso supportato, si può pagare con LINK, con un token nativo del gas o con un altro token supportato.
Non tutte le combinazioni di blockchain e token sono supportate. Inoltre, l’infrastruttura cross-chain aggiunge ulteriori rischi tecnici e di sicurezza rispetto a un’operazione all’interno di una sola blockchain.
Chi ha fondato Chainlink?
Chainlink è stata co-fondata da Sergey Nazarov e Steve Ellis. Sergey Nazarov è CEO di Chainlink Labs e Steve Ellis è CTO di Chainlink Labs.
Il whitepaper originale di Chainlink è uscito il 4 settembre 2017 ed è stato scritto da Steve Ellis, Ari Juels e Sergey Nazarov. Ari Juels è quindi coautore di quel whitepaper, ma non cofondatore.
È una distinzione importante: aver contribuito alla stesura di un documento tecnico non significa automaticamente avere un ruolo formale di fondatore.
Quali sono i vantaggi di Chainlink?
Chainlink ha alcune caratteristiche che possono essere utili per le applicazioni che hanno bisogno di dati esterni o di comunicazione tra blockchain:
- Più nodi e più fonti di dati. Elaborando i dati tramite più nodi e fonti indipendenti, la dipendenza da un singolo server o fornitore può ridursi.
- Meno transazioni onchain con OCR. I nodi raggruppano le loro osservazioni offchain in un unico report firmato. Così non ogni nodo deve inviare separatamente una transazione sulla blockchain.
- Diversi tipi di dati. I Data Feed possono rendere disponibili per gli smart contract prezzi, riserve, dati sui tassi, dati sulla volatilità e lo stato dei sequencer di Layer 2.
- Un’unica interfaccia per i percorsi cross-chain supportati. CCIP offre alle applicazioni un modo uniforme per inviare messaggi e token tra blockchain supportate.
- Gli indirizzi dei feed possono restare uguali. Un Data Feed può usare un contratto proxy che punta a un nuovo aggregatore. In questo modo le applicazioni che usano l’indirizzo del feed non devono sempre modificare il proprio contratto.
Questi vantaggi dipendono però dalla configurazione concreta. Il feed usato, i nodi, le fonti di dati, la blockchain e l’applicazione fanno molta differenza nella pratica.
Quali sono gli svantaggi di Chainlink?
Chainlink non elimina tutti i rischi legati ai dati esterni e alla comunicazione cross-chain. Ecco alcuni punti importanti:
- Dipendenza dai dati esterni. La qualità del risultato di un oracle continua a dipendere dalla correttezza, disponibilità e varietà delle fonti di dati usate.
- Nessun flusso continuo di dati. I Data Feed vengono aggiornati in base agli heartbeat e alle soglie di scostamento. Un valore sulla blockchain può quindi essere vecchio.
- La configurazione e la gestione contano. Il proprietario di un proxy o di un aggregatore di Data Feed può modificare alcune funzioni e variabili. Per questo esistono, tra le altre cose, processi che usano una multisig, dove servono più parti per approvare un’azione.
- Le applicazioni restano responsabili. Un’applicazione deve controllare se i dati del feed sono abbastanza recenti e prendere da sola misure per ritardi, guasti e condizioni di mercato estreme.
- CCIP aggiunge attesa e complessità. I messaggi cross-chain aspettano la finalità, vengono verificati offchain e poi eseguiti su un’altra blockchain.
- La copertura dello staking è limitata. Chainlink Staking v0.2 funziona come beta su Ethereum. LINK può essere messo in staking lì da community staker e node-operator staker. Solo i node-operator staker dei servizi coperti dallo staking possono essere slashed nella versione attuale. Slashing significa che una parte dei token messi in staking può essere sottratta. I community staker non possono essere slashed in v0.2. All’avvio, il servizio coperto era il Data Feed ETH/USD su Ethereum.
Mettere in staking LINK non ti rende comunque un validator di Ethereum o di un’altra blockchain di base. Inoltre, le condizioni, la capacità, le ricompense e i servizi coperti di Staking v0.2 possono cambiare in futuri aggiornamenti.
Conclusione
Chainlink è un’infrastruttura per smart contract che vogliono usare dati, calcoli e sistemi esterni a una blockchain. Non è una blockchain Layer 1 autonoma. LINK è il token associato e può essere usato, tra le altre cose, per pagare i servizi e per lo staking.
Il cuore di Chainlink sono i DON: più nodi indipendenti raccolgono ed elaborano informazioni, dopo di che un risultato può essere pubblicato sulla blockchain. Con OCR gran parte di questo processo avviene offchain, così non ogni nodo deve pubblicare separatamente un aggiornamento onchain.
Oltre ai Data Feed, Chainlink offre con CCIP un modo per inviare messaggi e token tra blockchain supportate. Questo però comporta passaggi aggiuntivi, tempi di attesa e rischi.
La cosa più importante da ricordare: più nodi e più fonti di dati possono ridurre un singolo punto di guasto, ma non rendono automaticamente i dati esterni sempre corretti, aggiornati o disponibili. Quanto è affidabile un’applicazione nella pratica dipende anche dal feed scelto, dalle impostazioni e dall’applicazione che lo usa.