Protocol of Duty: Comprensione del Protocollo Blockchain

Dove ci sono sistemi, ci sono protocolli

La tecnologia blockchain è emersa come una soluzione innovativa che le persone non sapevano di aver bisogno per problemi che non sapevano di avere. Con essa sono arrivate una moltitudine di termini e concetti che rimangono spiegati fino ad oggi. Uno di questi termini è il protocollo blockchain – un termine spesso usato in modo intercambiabile con reti blockchain, anche se non è esattamente la stessa cosa.

In questo articolo, esamineremo il concetto di protocollo blockchain, le sue differenze dalla blockchain in sé e alcuni dei suoi principali funzionamenti e applicazioni.

Cos’è una rete blockchain?

Una blockchain è il livello base di tutte le cose crypto. È una rete decentralizzata che consente transazioni veloci, senza permessi, anonime e sicure con un asset digitale peer-to-peer in tutto il mondo. La rete funge da database distribuito: tutte le transazioni mai effettuate sulla blockchain sono aperte, anonime, memorizzate in blocchi e possono essere visualizzate da chiunque.

Una blockchain è alimentata da una rete distribuita di nodi – computer che lavorano per mantenere la rete in funzione in tutto il mondo. I nodi di solito lavorano come minatori (nei network Proof of Work come Bitcoin) o come stakers/delegati (come nei network Proof of Stake come Ethereum o Cardano). Per i loro sforzi, minatori e stakers ottengono una parte delle commissioni di transazione che aiutano a verificare.

I minatori nei network Proof-of-Work sono incaricati di decifrare l’hash – un identificatore crittografico unico – del prossimo blocco di transazioni. Per fare ciò, utilizzano potenza di calcolo grezza e competono essenzialmente nella velocità di calcolo. Nei network Proof-of-Stake, ciò non avviene tramite il calcolo, ma detenendo una grande quantità della valuta nativa della rete e quindi avendo un peso nella decisione su quali blocchi approvare successivamente.

La blockchain per sé è stata introdotta per la prima volta da Bitcoin, così come BTC, la prima criptovaluta esistente. Concepite dall’entità sconosciuta nota come Satoshi Nakamoto, la blockchain di Bitcoin è stata portata alla vita in modo piuttosto simbolico da un gruppo decentralizzato di appassionati.

La criptovaluta Bitcoin funge da carburante per la rete, poiché gli utenti pagano una quota delle loro transazioni come tassa di trasferimento.

La blockchain di Ethereum è stata costruita su Bitcoin ed ha ampliato l’arsenale della blockchain con i contratti intelligenti. I contratti intelligenti sono algoritmi pre-codificati che si eseguono quando viene soddisfatto un particolare insieme di condizioni. Ad esempio, invia 200 ETH all’indirizzo (X) non appena il numero del token NFT (XYZ) viene ricevuto dall’indirizzo indicato.

I contratti intelligenti consentono una flessibilità senza pari nella distribuzione di applicazioni blockchain e sono essenzialmente il tessuto di tutta l’attuale DeFi. Pionierizzati dalla rete Ethereum, i contratti intelligenti hanno avuto successo e sono stati implementati dalla maggior parte dei protocolli blockchain noti oggi.

Ora che abbiamo stabilito cos’è una rete blockchain, cerchiamo di capire cos’è un protocollo blockchain.

Un protocollo blockchain è essenzialmente le regole che governano il funzionamento della rete blockchain. NON è la rete blockchain in sé, ma piuttosto un insieme di regole integrate in tutti i suoi funzionamenti. Definisce quando, come e in che misura diversi elementi della rete possono o non possono fare determinate cose.

Blockchain Protocols and Their Working

La spina dorsale di ogni blockchain è costituita dall’insieme di protocolli che ne governano ogni movimento. Questi protocolli sono i pilastri che sostengono la sicurezza, la connettività e le procedure di consenso della rete, garantendo che tutto funzioni come un orologio. Senza un’autorità centrale che supervisioni le transazioni, questi protocolli sono i principali protagonisti nel mantenere una copia del registro affidabile e nel verificare le transazioni attraverso un metodo di consenso. Una volta convalidati, vengono registrati in blocchi inalterabili.

Principali Protocolli Intorno a Noi

Dove ci sono sistemi, ci sono protocolli. Un protocollo è uno strato fondamentale di codice che indica come funzionare. Naturalmente, i protocolli non sono esclusivi delle criptovalute. Sono fondamentali per il funzionamento di Internet, governando la trasmissione dei dati da un computer all’altro.

Molte cose che oggi diamo per scontate sono state abilitate e governate dai protocolli di rete. I più noti includono il TCP/IP: Protocollo di controllo della trasmissione/Protocollo Internet, utilizzato per connettere dispositivi su Web, e HTTP/HTTPS: Protocollo di trasferimento di ipertesto (HTTP), utilizzato per trasferire dati tra server web e client.

Cosa Rende Diversi i Protocolli Blockchain?

Tuttavia, c’è una differenza quando si tratta di protocolli blockchain. Diventa più interessante e complesso rispetto al trasferimento di dati tradizionale. Una rete blockchain è un framework distribuito di organismi decisionali, ognuno dei quali ha più da fare che seguire solo gli algoritmi. Questo implica che l’insieme di regole deve essere concordato, osservato e verificato da tutti i nodi che compongono la rete.

Ecco dove le cose diventano un po’ complesse. In realtà, ci sono 3 tipi di protocolli blockchain:

  • Protocollo di rete
  • Protocollo di consenso
  • Funzione di transizione di stato

Ogni tipo è altrettanto importante quanto gli altri e tutti e tre devono essere seguiti alla lettera affinché le cose funzionino senza intoppi.

Protocollo di rete

Il protocollo di rete stabilisce le regole secondo cui i nodi della rete possono (e non possono) comunicare. Ciò include come i nodi scoprono e riconoscono reciprocamente, scambiano informazioni su blocchi, transazioni e altre cose comuni. Contiene la sintassi che definisce come i nodi dovrebbero decifrare i messaggi reciproci.

Protocollo di consenso

Il protocollo di consenso delinea come i nodi concordano su quali transazioni considerare valide o non valide. Come probabilmente saprai, ogni nodo mantiene una copia completa dell’intera rete sui suoi dischi rigidi. La copia include ogni singolo bit di dati mai registrato sulla rete. Ogni copia viene aggiornata in tempo reale man mano che vengono forgiati nuovi blocchi e nuove transazioni validate.

Quindi, quando un nodo invia un nuovo blocco da aggiungere alla rete, non invia solo il blocco, ma in realtà invia l’intera copia della blockchain aggiornata a quella data. Ed è compito di ogni singolo nodo nella rete esaminare, valutare e (in)validare ogni singola copia della rete inviata da tutti gli altri nodi. Nei network di Proof-of-Work come Bitcoin, solo la catena più lunga di blocchi viene convalidata, il che significa che la maggior parte dei nodi ne concorda sulla validità. Come puoi immaginare, è un lavoro molto impegnativo e richiede molta potenza di calcolo.

In un network di proof-of-stake, i validatori vengono selezionati casualmente dalla rete tra i nodi che detengono grandi quantità delle monete native della rete nei loro portafogli. Alcuni potrebbero equiparare questo approccio al monopolio capitalistico, ma la prospettiva di monopolizzare la rete è stata affrontata preventivamente. Ciò include limitare l’importo che ciascun nodo può scommettere, il numero di transazioni che può verificare, la frequenza di tali verifiche, ecc. In ogni caso, i limiti e le restrizioni sono tutti stabiliti nel protocollo.

Funzione di transizione di stato

Qui le cose diventano davvero tecniche.

Lo stato è essenzialmente ciò che la rete “pensa” essere la situazione in un determinato momento. La posizione attuale, le relazioni tra e i movimenti di tutti i nodi, le transazioni e i blocchi – costituiscono lo stato della rete.

Lo stato della rete cambia nel tempo, così come l’insieme e il bilancio degli elementi al suo interno. La transizione di stato deve essere registrata in modo particolare, e il protocollo di rete si occupa anche di questo. Man mano che i nodi entrano e escono dalla rete, scambiano informazioni e modificano la struttura della blockchain, sorgono nuove possibilità, insieme a nuove complicazioni.

Lo stato racchiude tutto ciò che la rete può e non può fare in un determinato momento. Se vengono soddisfatte le condizioni A e B, allora la rete non è più in grado di fare X e Y. Se lo stato è definito dalle condizioni C e D, allora le uniche azioni possibili sono W e Z. Questo cambiamento nella logica è cruciale per le operazioni della rete.

A blockchain protocol need to be followed by all the nodes of the network

Ogni parte descritta sopra funge da pezzo di un puzzle triunale chiamato Stato Verificato. Quando le informazioni sulle transazioni entrano nel protocollo di rete, vengono validate o scartate lì. Se verificate, passano poi ai protocolli di consenso, che fungono da guardiano. Consente ai dati di entrare nello stato della rete se i dati concordano con quelli degli altri nodi.

Se accettati, i dati vengono quindi passati alla funzione di transizione di stato, dove diventano il nuovo Stato Verificato della rete. Lo Stato Verificato è il fronte pratico che definisce ciò che effettivamente ‘succede’ dopo che il blocco è stato aggiunto alla catena. Questo può includere il cambiamento del saldo di un certo portafoglio o l’avvio di un contratto intelligente.

Un Nodo Può Deviare dal Protocollo?

Un nodo può disobbedire al protocollo e, in caso affermativo, cosa succede? Come detto prima, la convalida dei blocchi richiede che tutti i nodi verifichino tutti i dati inviati da tutti gli altri nodi online. Per fare ciò, il protocollo blockchain deve essere seguito alla lettera. Se un nodo non obbedisce, allora semplicemente non sarà in grado di cooperare con gli altri nodi e, quindi, non sarà in grado di ottenere i benefici. Questo significa che non c’è spazio per disaccordi in una blockchain, rendendo il suo stato essenzialmente totalitario.

Tuttavia, a volte una blockchain viene divisa forzatamente o deliberatamente in due parti, cosa chiamata fork. Il fork avviene precisamente perché alcuni nodi inviano dati in conflitto con quelli del resto del registro distribuito.

A blockchain only keeps blocks agreed upon by all nodes of the network

In condizioni di lavoro normali, la rete non si preoccupa di capire i motivi per cui i dati sono difettosi: semplicemente disconnette il nodo dal resto della rete, lasciandolo a secco. In questo modo, i nodi potenzialmente malintenzionati vengono disabilitati dall’impattare sulla rete. È possibile che la maggior parte di tutte le “cattive” copie di ciascuna blockchain siano ancora conservate da qualche parte mentre parliamo.

Tuttavia, i fork possono anche essere una cosa positiva. Una rete blockchain non può semplicemente “aggiornare” il suo stato attuale. Ogni nuovo stato verificato è una nuova copia completa della rete.

A blockchain network can split into two, sometimes creating new networks along the way

Potresti aver sentito dire che ogni importante aggiornamento della blockchain è chiamato Fork. Quindi, quando le blockchain devono essere aggiornate, vengono deliberatamente biforcate in una nuova copia dai loro sviluppatori. La versione pre-aggiornamento viene mantenuta come legacy, mentre quella appena biforcata diventa quella reale.

Comprendere il Protocollo Bitcoin

Approfondiamo un po’ su quali cose governa un protocollo blockchain. Come esempio, prendiamo in considerazione la rete Bitcoin.

I Bitcoin non vengono scambiati come lingotti d’oro. Ogni volta che invii e ricevi BTC, non stai effettivamente “ottenendo” o “dando” bitcoin. Ciò che realmente accade è che ogni nuova transazione registra una firma digitale. La firma contiene un hash, l’ID crittografico univoco della transazione precedente, e la chiave pubblica del destinatario. Quindi, ogni transazione è protetta da una prova crittografica, che non può essere alterata o falsificata.

The structure of transaction in the Bitcoin blockchain

La principale preoccupazione tra acquirenti e venditori online è che, a un certo punto, potrebbero essere sfruttati e cadere vittima di frodi finanziarie. Questo può avvenire sotto forma di phishing o transazioni completamente false. C’è anche il problema del double spending, oltre alla semplice manipolazione del sistema alla ricerca di profitti ingiusti. Poiché una blockchain non è governata da un’entità centrale, tutte le preoccupazioni sulla sicurezza delle transazioni ricadono interamente sulle spalle del protocollo.

Gli sviluppatori di Bitcoin hanno affrontato tali preoccupazioni e introdotto meccanismi come firme digitali e prove crittografiche per mitigarle. Così, il protocollo Bitcoin consente solo di convalidare blocchi che hanno una prova crittografica che corrisponde a quella presente in altri nodi.

Server Timestamp e Sistema Proof-of-Work

Il double spending è un problema enorme nella blockchain. È una situazione in cui un utente cerca di spendere la stessa criptovaluta due volte. Ciò può verificarsi a causa della natura digitale della valuta, che potenzialmente rende più facile replicare o copiare la valuta senza essere rilevati.

Supponiamo che un utente abbia 1 BTC e cerchi di spenderlo due volte inviandolo a due indirizzi diversi. In un sistema di pagamento tradizionale, il sistema rileverebbe il tentativo di double spending e respingerebbe la transazione. Tuttavia, in una rete blockchain decentralizzata, ciò è impedito dal sistema proof-of-work e dall’algoritmo di consenso, che garantiscono che ogni transazione sia valida e non sia già stata spesa.

A timestamp is attached to each block

Per garantire ciò, il protocollo Bitcoin ha implementato un server di timestamp che appone un’etichetta temporale unica all’hash di ogni transazione. Il sistema di proof-of-work prende nota di ciascun timestamp e rifiuta qualsiasi transazione con un hash che corrisponde a quelli già registrati nel sistema.

Ogni nuovo blocco forgiato in una rete Bitcoin ha un proof-of-work ad esso allegato. La prova è anche chiamata Nonce o Number Only Generated Once. Serve come prova crittografica che un minatore ha impiegato una certa potenza di calcolo per verificare il blocco ed è stato riuscito.

Tuttavia, ci sono blocchi “cattivi” che contengono dati contraddittori rispetto a quelli minati dagli altri nodi. Nel caso venga rilevato un blocco “cattivo”, viene ritirato e ulteriormente valutato per eventuali incongruenze. Se viene trovato valido, il blocco verrà aggiunto alla rete come al solito. Se non lo è, viene scartato.

Grandi Protocolli Finora

Detto questo, ogni grande rete segue il proprio protocollo, creato appositamente per il suo meccanismo di consenso. La rete Bitcoin opera sul protocollo Bitcoin, Ethereum – sul protocollo Ethereum, ecc.

Di seguito sono elencati i protocolli blockchain più importanti fino ad oggi:

Name
Polkadot (DOT)
Avalanche (AVAX)
Polygon (MATIC)
Solana (SOL)
Binance Smart Chain (BSC)

Polkadot (DOT)

Polkadot è un protocollo blockchain innovativo che ha rivoluzionato l’interoperabilità tra diversi blockchain, consentendo una comunicazione e una condivisione dei dati senza soluzione di continuità con l’aiuto di contratti intelligenti. Il suo unico meccanismo di consenso Nominated Proof of Stake (NPoS) offre una piattaforma altamente sicura e scalabile con un tempo medio di blocco ultra-veloce di soli 6 secondi e commissioni di transazione leggere che si aggirano sui $0.10-0.20.

Progetti notevoli: Kusama, ChainX, Moonbeam, Chainlink, Reef Finance

Avalanche (AVAX)

Avalanche è una piattaforma open-source emersa come un faro di speranza per gli appassionati di finanza decentralizzata (DeFi) e gli sviluppatori di blockchain in tutto il mondo. Il suo innovativo meccanismo di consenso Avalanche consente un’elevata capacità di transazione e una finalità rapida, rendendolo una delle blockchain più scalabili e veloci sul mercato. Avalanche vanta un tempo medio di blocco di 2 secondi e commissioni di transazione inferiori a $1.

Progetti notevoli: Pangolin, Trader Joe, Benqi, Lydian Lion, SushiSwap

Polygon (MATIC)

Polygon è una soluzione di scalabilità di nuova generazione di Layer-2 che sta trasformando la scalabilità di Ethereum e le problematiche delle commissioni di transazione. Il suo meccanismo di consenso Proof-of-Stake (PoS) convalida rapidamente le transazioni finanziarie, con un tempo medio di blocco di 2-3 secondi, molto più veloce rispetto a Ethereum. Con una commissione media di transazione di $0.002, Polygon è una scelta ideale per gli sviluppatori che cercano di costruire applicazioni decentralizzate economicamente convenienti.

Progetti notevoli: Aave, Quickswap, Curve Finance, Polymarket, Zapper

Solana (SOL)

Solana è una piattaforma blockchain ad alte prestazioni che ha scosso l’industria blockchain grazie al suo meccanismo di consenso Proof-of-History (PoH). L’alto throughput e la rapida finalità di Solana, con un tempo medio di blocco di 0,4-0,8 secondi e una commissione media di transazione di $0,00025, la rendono una piattaforma blockchain incredibilmente veloce e conveniente.

Progetti notevoli: Raydium, Serum, Mango Markets, Audius, Bonfida

Binance Smart Chain (BSC)

Binance Smart Chain è una piattaforma blockchain che ha cambiato il gioco con la sua compatibilità con la Ethereum Virtual Machine (EVM) e la sua capacità di eseguire applicazioni decentralizzate. La sua compatibilità la rende anche un’opzione attraente per gli sviluppatori che cercano di migrare le loro applicazioni da Ethereum a una piattaforma più efficiente e conveniente.

Progetti notevoli: PancakeSwap, Venus, Spartan Protocol, BakerySwap, Autofarm

Dove trovare soluzioni per lo sviluppo di blockchain

Presso ICODA, abbiamo un’esperienza pluriennale nei servizi di sviluppo di blockchain e nello sviluppo di prodotti blockchain che funzionano. Se hai un progetto di sviluppo software blockchain, siamo qui per aiutarti. Che tu abbia bisogno di un token o di un’applicazione decentralizzata (DApp), di un exchange decentralizzato (DEX) o di lanciare un marketplace di token non fungibili (NFT), o semplicemente stai cercando di capire come le soluzioni di sviluppo blockchain possono beneficiare della tua attività, sei nel posto giusto. Contattaci ora per ottenere un piano breve e iniziare a lavorare presto.