Che cos'è ERC-20
Nota: Questo documento è una traduzione automatica della versione originale in inglese.
Che cos'è ERC-20
ERC-20 è lo standard di token più ampiamente adottato sulla blockchain Ethereum. Definisce un'interfaccia comune -- un insieme di funzioni ed eventi -- che uno smart contract deve implementare per creare un token fungibile. "Fungibile" significa che ogni unità del token è identica e intercambiabile, proprio come una banconota da un dollaro è equivalente a qualsiasi altra banconota da un dollaro.
ERC sta per Ethereum Request for Comments, e 20 è il numero della proposta. Lo standard è stato proposto nel 2015 ed è diventato il modello di fatto per creare token su Ethereum e sulle catene compatibili con EVM. Quando un progetto dice che il suo token è "ERC-20", significa che il contratto del token segue questa interfaccia standard, che garantisce la compatibilità con wallet, exchange decentralizzati, tracker di portafoglio e altri smart contract in tutto l'ecosistema Ethereum.
In breve: ERC-20 è uno standard tecnico che definisce come funzionano i token fungibili su Ethereum -- garantendo che qualsiasi token ERC-20 possa essere inviato, ricevuto e gestito da qualsiasi wallet o applicazione che supporti lo standard.
Come funziona ERC-20
L'interfaccia standard
Nel suo nucleo, ERC-20 specifica un insieme di funzioni che ogni contratto di token conforme deve implementare. Queste funzioni forniscono un linguaggio comune che le applicazioni esterne (wallet, exchange, altri contratti) possono usare per interagire con il token senza dover conoscere nulla della sua logica interna.
Le funzioni chiave sono:
| Funzione | Che cosa fa |
|---|---|
totalSupply() |
Restituisce il numero totale di token esistenti |
balanceOf(address) |
Restituisce quanti token detiene un indirizzo specifico |
transfer(to, amount) |
Invia token dall'indirizzo del chiamante a un altro indirizzo |
approve(spender, amount) |
Autorizza un altro indirizzo (uno smart contract o un utente) a spendere fino a un importo specificato dei token del chiamante |
transferFrom(from, to, amount) |
Consente a uno spender pre-approvato di trasferire token per conto del proprietario del token |
allowance(owner, spender) |
Restituisce quanti token lo spender è ancora autorizzato a trasferire per conto del proprietario |
Lo standard definisce anche due eventi -- Transfer e Approval -- che vengono emessi quando i token si spostano o quando cambiano i permessi di spesa. Questi eventi consentono ai sistemi esterni (block explorer, indexer, strumenti di analisi) di tracciare l'attività del token senza interrogare direttamente il contratto.
Perché uno standard è importante
Prima che ERC-20 fosse ampiamente adottato, ogni progetto di token creava la propria interfaccia personalizzata. Questo significava che wallet, exchange e altre applicazioni dovevano scrivere codice ad hoc per ogni nuovo token. ERC-20 ha risolto questo problema creando un'interfaccia contrattuale universale: qualsiasi applicazione che supporti ERC-20 supporta automaticamente ogni token ERC-20, che sia stato creato ieri o anni fa.
Questa componibilità è uno dei fondamenti dell'ecosistema Ethereum. Un exchange decentralizzato non ha bisogno di sapere che cosa rappresenta un token specifico o chi lo ha creato -- se il token implementa l'interfaccia ERC-20, l'exchange può quotarlo, scambiarlo e regolare le transazioni con esso.
Distribuire un token ERC-20
Creare un token ERC-20 comporta la distribuzione sulla rete Ethereum (o su una catena compatibile con EVM) di uno smart contract che implementa le funzioni richieste. Il deployer specifica il nome del token, il simbolo, la precisione decimale e l'offerta iniziale. Una volta distribuito, il contratto è immutabile -- l'interfaccia di base del token non può essere modificata, anche se alcune implementazioni includono funzionalità aggiuntive come minting, burning o pausa attraverso meccanismi di governance.
La bassa barriera tecnica per distribuire un token ERC-20 è al tempo stesso un punto di forza e un rischio. Consente innovazione e sperimentazione rapide, ma significa anche che chiunque può creare un token con qualsiasi nome e qualsiasi scopo dichiarato. L'esistenza di un token ERC-20 non implica qualità, legittimità o valore.
ERC-20 e le catene compatibili con EVM
Sebbene ERC-20 sia stato creato per Ethereum, lo standard funziona su qualsiasi blockchain compatibile con EVM. Catene come BNB Smart Chain, Polygon, Arbitrum One, Base e Avalanche supportano tutte nativamente i token ERC-20 perché implementano la Ethereum Virtual Machine. Su alcune di queste catene, lo standard può avere un nome formale diverso (BEP-20 su BNB Smart Chain, per esempio), ma l'interfaccia è funzionalmente identica.
Questo significa che il token di un progetto potrebbe essere descritto come "ERC-20" anche se è distribuito su una catena diversa da Ethereum. Lo standard è un'interfaccia tecnica, non una designazione specifica di una catena. Ciò che conta è se il contratto del token implementa l'insieme di funzioni ERC-20, non su quale rete gira.
ERC-20 a confronto con altri tipi di token
| Dimensione | ERC-20 | ERC-721 (NFT) | ERC-1155 (Multi-token) | Token nativo (ETH, SOL) |
|---|---|---|---|---|
| Fungibilità | Fungibile (tutte le unità identiche) | Non fungibile (ogni token unico) | Sia fungibile sia non fungibile | Fungibile |
| Distribuito come | Smart contract | Smart contract | Smart contract | Integrato nel protocollo |
| Interfaccia standard | transfer, approve, balanceOf |
ownerOf, safeTransferFrom |
Operazioni batch | Nessuna interfaccia contrattuale standard |
| Caso d'uso | Valute, utility token, token di governance | Arte digitale, asset unici, identità | Oggetti di gioco, collezioni miste | Commissioni gas, staking, valuta di base |
I token ERC-20 sono distinti dai token nativi come ETH. Mentre ETH è integrato direttamente nel protocollo Ethereum ed esiste senza uno smart contract, i token ERC-20 vengono creati distribuendo un contratto che segue lo standard. Entrambi possono essere detenuti e trasferiti, ma hanno proprietà tecniche diverse e ruoli diversi nella rete.
Limitazioni ed estensioni di ERC-20
Sebbene ERC-20 sia lo standard di token più utilizzato, presenta limitazioni note che hanno portato a estensioni e miglioramenti:
- Nessuna notifica alla ricezione. Quando i token vengono inviati a uno smart contract, il contratto ricevente non ha alcun modo automatico di reagire. Questo ha portato a token bloccati permanentemente in contratti che non gestiscono i trasferimenti ERC-20. Gli standard ERC-223 ed ERC-777 sono stati proposti per risolvere questo problema, anche se ERC-20 resta dominante.
- Schema di approvazione in due passaggi. Trasferire token per conto di un altro indirizzo richiede due transazioni: prima
approve, poitransferFrom. Questo aggiunge attrito e costi di gas. L'estensione ERC-2612 (Permit) consente approvazioni senza gas tramite firme off-chain. - Nessun metadato integrato. I token ERC-20 hanno un nome e un simbolo, ma nessun modo standardizzato di includere metadati aggiuntivi (descrizione, icona, link alla documentazione). Estensioni e registri off-chain colmano questa lacuna.
Queste limitazioni non riducono l'utilità pratica di ERC-20. La semplicità dello standard e il supporto universale superano le sue imperfezioni tecniche per la stragrande maggioranza dei casi d'uso.
Perché ERC-20 è importante per i progetti crypto AI
La maggior parte dei progetti crypto AI che emettono un token su Ethereum o su una catena compatibile con EVM usa lo standard ERC-20. Il token può fungere da utility token (pagare il compute, accedere ai servizi AI), da token di governance (votare sui parametri del protocollo) o da meccanismo di commissioni (pagare l'uso della rete). Indipendentemente dal ruolo previsto, l'uso di ERC-20 garantisce che il token sia compatibile con l'ecosistema più ampio: gli utenti possono detenerlo in wallet standard, scambiarlo su exchange decentralizzati e interagire con esso tramite interfacce note.
Per chi valuta un progetto crypto AI, sapere che un token è ERC-20 dice qualcosa sul suo formato tecnico -- non sulla sua utilità, necessità o valore. Lo standard di token risponde a "come funziona tecnicamente il token?" ma non a "perché il progetto ha bisogno di un token?" o "il token serve davvero a uno scopo nella pipeline AI?"
Dove compare nelle schede progetto di DecAIHub
In una scheda progetto DecAIHub, ERC-20 compare nel campo Token standard. Quando una scheda mostra Token standard: ERC-20, significa che il token del progetto è implementato come smart contract ERC-20.
Il campo dello standard di token è puramente descrittivo: indica ai lettori il formato tecnico del token. Va letto insieme al campo Token model (che descrive il ruolo del token: utility, governance, meccanismo di commissioni) e al campo Main chain (che indica ai lettori su quale rete è distribuito il token).
Un progetto può avere token su più catene -- per esempio, un token ERC-20 su Ethereum e una versione bridged su una L2 come Arbitrum. Il campo dello standard di token riflette in genere la distribuzione principale.
Che cosa ERC-20 da solo non dimostra
- ERC-20 non dimostra l'utilità del token. Qualsiasi smart contract può implementare l'interfaccia ERC-20. Lo standard definisce il comportamento tecnico del token, non il suo ruolo economico o la sua necessità. Un progetto può avere un token ERC-20 che non serve ad alcuno scopo nella sua pipeline AI o applicativa.
- ERC-20 non dimostra la legittimità. Creare e distribuire un token ERC-20 richiede uno sforzo tecnico e un costo minimi. L'esistenza di un token non è una prova che il progetto dietro di esso sia reale, funzionale o affidabile.
- ERC-20 non dimostra che il progetto sia su Ethereum. I token ERC-20 esistono su molte catene compatibili con EVM. Lo standard di token non indica su quale catena il token è distribuito -- per quell'informazione controllare il campo Main chain.
- ERC-20 non dimostra capacità AI. Lo standard tecnico di un token non ha alcuna connessione con il fatto che il progetto abbia una componente AI reale, un'inferenza funzionante o modelli verificabili.
- ERC-20 non dimostra la decentralizzazione. Il contratto del token stesso può includere controlli centralizzati: chiavi di amministrazione per minting o burning, funzioni di pausa, proxy di upgrade controllati da un singolo indirizzo. Lo standard definisce l'interfaccia, non il modello di governance.
Da non confondere con
- Token standard -- il concetto ombrello. ERC-20 è uno standard di token specifico. Altri includono ERC-721 (NFT), ERC-1155 (multi-token), BEP-20 (BNB Smart Chain), SPL (Solana) e i token nativi.
- Token nativo -- ETH è il token nativo di Ethereum, integrato nel protocollo stesso. I token ERC-20 vengono creati distribuendo smart contract sopra il protocollo. Coesistono ma sono tecnicamente diversi.
- Token model -- il modello di token descrive il ruolo del token (utility, governance, meccanismo di commissioni). Lo standard di token descrive il formato tecnico. Un token può essere ERC-20 (standard) e utility token (modello) allo stesso tempo.
- BEP-20 -- lo standard di token su BNB Smart Chain. BEP-20 è funzionalmente identico a ERC-20 ma è la convenzione di denominazione usata su una catena diversa.
- ERC-721 -- lo standard per i token non fungibili (NFT) su Ethereum. I token ERC-721 sono unici; i token ERC-20 sono intercambiabili.
Domande frequenti
Che cosa significa "fungibile" nel contesto di ERC-20?
Fungibile significa che ogni unità del token è identica in valore e funzione a ogni altra unità. Se detieni 100 unità di un token ERC-20, ognuna di quelle unità è intercambiabile con qualsiasi altra unità dello stesso token. È lo stesso principio che rende una banconota da un dollaro equivalente a qualsiasi altra banconota da un dollaro. Al contrario, i token non fungibili (ERC-721) sono ciascuno unico -- un NFT non è intercambiabile con un altro.
Un token ERC-20 può essere creato su catene diverse da Ethereum?
Sì. Qualsiasi blockchain che implementi la Ethereum Virtual Machine (EVM) supporta i token ERC-20. Questo include catene come Polygon, Arbitrum One, Base, BNB Smart Chain, Avalanche e molte altre. Su BNB Smart Chain, lo standard equivalente si chiama BEP-20, ma implementa la stessa interfaccia. Un token che segue l'insieme di funzioni ERC-20 funziona con qualsiasi wallet, exchange o smart contract compatibile con EVM indipendentemente dalla catena specifica.
Qual è la differenza tra ERC-20 e un token nativo come ETH?
ETH è il token nativo di Ethereum -- è integrato nel protocollo stesso ed esiste senza uno smart contract. ETH viene usato per pagare le commissioni gas e per partecipare allo staking. I token ERC-20, al contrario, vengono creati distribuendo smart contract sopra Ethereum. Richiedono ETH per pagare le commissioni gas per trasferimenti e interazioni. Entrambi i tipi di token possono essere detenuti nello stesso wallet, ma la loro implementazione tecnica è fondamentalmente diversa.
Distribuire un token ERC-20 richiede molta competenza tecnica?
Distribuire un token ERC-20 di base richiede una conoscenza moderata dello sviluppo di smart contract. Librerie standard (come OpenZeppelin) forniscono implementazioni ERC-20 sottoposte ad audit e pronte all'uso, distribuibili con personalizzazioni minime. La bassa barriera alla distribuzione è al tempo stesso un vantaggio (consente sperimentazione e innovazione rapide) e un rischio (consente a chiunque di creare un token per qualsiasi scopo). L'esistenza di un token distribuito non è, di per sé, una prova di capacità tecnica.
Riferimenti esterni
- EIP-20: Token Standard -- Ethereum Improvement Proposals -- la specifica formale originale dello standard ERC-20, che definisce le funzioni e gli eventi richiesti.
- OpenZeppelin -- ERC-20 Documentation -- implementazione ampiamente utilizzata dello standard ERC-20 con spiegazioni e best practice per gli sviluppatori.
- Ethereum.org -- ERC-20 Token Standard -- documentazione ufficiale di Ethereum che spiega i token ERC-20 per sviluppatori e lettori.
No comments to display
No comments to display