MainNet e TestNet sono utilizzati nello sviluppo di criptovalute. Ogni giorno, miliardi di dollari passano di mano sotto forma di monete e gettoni digitali su piattaforme che girano su queste catene e blocchi.
Attualmente, ci sono più di $ 90 miliardi di dollari bloccati nella sola DeFi. Vengono scambiati denaro e risorse e ogni giorno vengono rilasciate nuove piattaforme, DApp e blockchain. Quindi immagina se questi prodotti venissero rilasciati senza essere mai stati testati in condizioni realistiche? Quando inevitabilmente sorgono problemi, milioni di persone possono perdere denaro e l'intera sfera della DeFi può cadere in discredito. Per questi motivi esistono testnet e mainnet.
In questo articolo parleremo di:
Che cos'è una rete di prova?
Fondamentalmente, testnet è una rete di blockchain banco di prova che funziona per eseguire progetti blockchain prima che siano pronti per essere lanciati. È un modo semplice per programmatori e sviluppatori di creare, modificare e testare le funzionalità dei loro progetti, nonché di monitorarne le prestazioni prima di renderli accessibili al pubblico. Qui gli sviluppatori possono risolvere eventuali problemi e correggere eventuali bug.
In un ambiente testnet, più test possono essere eseguiti ripetutamente, il che consente un confronto delle prestazioni e significa che è possibile verificare la coerenza. Funzionando indipendentemente dalla mainnet, le testnet consentono il test completo di un progetto blockchain senza interferire con le transazioni sulla mainnet. Questo modello di sandbox consente agli sviluppatori di assumersi dei rischi, sperimentare e quindi creare il miglior modello possibile da rilasciare.
Come prototipo, una rete di prova non dovrebbe mai essere utilizzata per trasferire nulla di valore, e quindi le reti di prova utilizzano denaro falso o token senza valore per eseguire i loro protocolli. Gli sviluppatori spesso utilizzano anche una rete di test per costruire e testare la propria blockchain e, una volta soddisfatti, la eseguiranno da soli. I testnet consentono un avvio più rapido e sicuro della rete principale.
Che cos'è una rete principale?
Mainnet è una "rete" "principale" su cui viene eseguito un progetto blockchain. Questa è la fase che logicamente viene dopo che tutti i tentativi necessari in testnet sono stati completati. Una mainnet è una rete completamente implementata in cui le transazioni di criptovaluta possono essere elaborate in modo efficiente, verificate con precisione e registrate in modo sicuro. Distribuendo una rete principale, i tuoi sviluppatori dichiarano di avere completa fiducia nelle capacità della tua blockchain.
Essendo una blockchain completamente funzionale, le mainnet possono essere utilizzate per inviare e ricevere qualsiasi transazione, sotto forma di criptovaluta o token non fungibili (NFT), tra gli altri, o trasferimento di informazioni. Inoltre, una mainnet può eseguire un progetto che richiede quello specifico protocollo blockchain, ad esempio DApp sulla mainnet di Ethereum.
Testnet vs. Mainnet: le principali differenze
- Obiettivo: Una testnet è una blockchain di test, una sandbox in cui i guasti sono protetti, mentre la mainnet è la blockchain funzionante rilasciata.
- Costo delle operazioni: i token in testnet non hanno valore, a differenza dei token mainnet che utilizzano risorse reali e criptovalute. Il costo delle operazioni su una rete centrale è quindi più elevato. Questo perché ogni operazione eseguita sulla blockchain richiede una commissione, pagata in token di un certo valore – cosa che testnet non ha.
- ID di rete: Testnet e mainnet hanno ID di rete diversi l'uno dall'altro, che vengono utilizzati per aiutare gli sviluppatori a identificare la rete. Ad esempio, l'ID di rete della rete principale di Ethereum è 1, mentre i comuni testnet di Ethereum Ropsten, Rinkeby e Kovan utilizzano rispettivamente 3, 4 e 42.
- Blocco Genesi: Testnet e mainnet hanno il loro blocco di genesi indipendente, ovvero il primo blocco nella loro blockchain.
- Noi: Una rete di prova avrà meno nodi di una rete principale perché ci sono meno informazioni da controllare.
- Codice pubblicato: Le principali reti avranno il loro codice sottostante reso pubblico dopo la pubblicazione, poiché ciò rafforza la fiducia degli utenti nella catena. I testnet non pubblicheranno il codice poiché è in continua evoluzione.
Frequenza delle transazioni: le reti di test hanno una frequenza delle transazioni inferiore rispetto alle reti principali, il che ha senso in quanto non avranno il grande pool di utenti di una rete principale.
Perché la differenza tra una Testnet e una Mainnet è importante
Dal 2017, con l’esplosione delle criptovalute sulla scena finanziaria, molti individui si sono affrettati a investire in nuove blockchain, piattaforme, DApp e valute. Per mancanza di conoscenza e per paura di perdere un'opportunità, molte persone hanno investito esclusivamente sulla base di un white paper. Questi white paper affermavano velocità fantastiche, output elevati e risultati eccellenti, tuttavia, questi risultati sono stati visti nelle fasi iniziali e solo in un ambiente di test.
Di conseguenza, i progetti che avevano fatto affermazioni così audaci non sono mai effettivamente progrediti fino alla fase della rete principale e invece sono crollati e bruciati, portando con sé i soldi dei loro investitori. Pertanto, è estremamente importante ricercare i progetti in cui intendi investire e sapere in quale fase si trovano. Se un progetto è provato e testato dovrebbe essere uno dei primi indicatori da cercare, e quindi se il progetto attualmente gestisce una mainnet attiva o solo una testnet è della massima importanza per qualsiasi investitore serio.
Perché i testnet sono importanti?
Tutti possono concordare sul fatto che eseguire controlli su qualsiasi sistema, in particolare un sistema finanziario, è di fondamentale importanza prima del suo lancio, ma perché non possono essere eseguiti semplicemente sulla rete principale?
Innanzitutto, l'esecuzione di test su una rete principale può essere molto costosa:
Le commissioni Blockchain dovranno essere pagate per ogni transazione effettuata, ogni modifica e ogni volta che viene rilasciato un progetto – che durante una fase di test sono molteplici e ripetuti. Ciò significherebbe che per testare un progetto in modo efficiente ed esplorare le sue possibili opzioni, si dovrebbero sostenere commissioni incredibilmente alte.
Se si verifica un problema durante una fase di test sulla rete principale, può interrompere l'intera rete, le risorse e le transazioni dei suoi utenti, causando la perdita di denaro da parte degli utenti. Questo può essere molto costoso, sia per gli sviluppatori che per la reputazione della criptovaluta nel suo insieme.
In secondo luogo, c'è un problema di compatibilità:
Le reti di test non utilizzano nulla di valore reale e utilizzano invece "denaro falso" sotto forma di token senza valore.
Le monete della rete di prova non sono compatibili con le reti principali e viceversa, il che significa che dovrebbero essere coniate nuove monete o metodi, con conseguente processo molto più lungo, complicato e costoso.
Per questo motivo, tutti i nuovi progetti devono prima essere testati su una blockchain indipendente con un proprio blocco di genesi, come un testnet. In questo modo, coloro che operano nel mercato delle criptovalute può rimanere assolutamente separato da qualsiasi operazione di "prova ed errore" e gli sviluppatori possono essere liberi di testare tutti gli aspetti della blockchain prima del suo rilascio.
A chi sono rivolti i Testnet?
Le testnet possono essere utilizzate da chiunque abbia un progetto in fase di sviluppo e che abbia bisogno di essere testato. Sono semplicemente un modo per testare un prodotto più vicino alla scala, senza costi e senza il rischio di interferire con la rete principale.
Molte testnet offrono un servizio di testnet, poiché diverse testnet assomigliano più da vicino a diverse testnet e quindi gli sviluppatori possono scegliere quella che meglio si adatta alle loro esigenze. Ad esempio, Symbol gestisce una mainnet e una testnet, dove la testnet è una copia della propria struttura mainnet, mentre la mainnet di Ethereum è molto simile a Ropsten.
Inoltre, se uno sviluppatore sta cercando di creare la propria blockchain e testarla, anziché semplicemente creare una DApp o una piattaforma, può anche utilizzare testnet per questo. Symbol offre il suo bootstrap di Symbol e, se stai costruendo una blockchain simile a Ethereum, gli sviluppatori usano spesso Ganache su tartufosuite.com.
Cos'è una catena laterale?
Un altro modo interessante per provare nuove idee o aggiornamenti software senza interferire con la rete principale è utilizzare le sidechain o, come le chiama la piattaforma blockchain Ardor, le childchain. Queste blockchain, come suggerisce il nome, sono catene che corrono sul lato della blockchain principale, o parentchain. Sono collegati alla rete principale tramite un pin a due vie. Sono completamente indipendenti e responsabili della propria sicurezza, il che significa che se non c'è abbastanza potenza di mining per proteggere la sidechain, può essere hackerata.
Tuttavia, essendo indipendente, il danno sarà contenuto in questa catena, non nella rete principale. In questo modo crea uno spazio simile a una testnet. La differenza principale, tuttavia, è che le risorse reali possono essere bloccate e utilizzate in una sidechain, mentre in una rete di prova non possono. Ciò dà origine a scenari più reali e può aggiungere un ulteriore livello di test al progetto di uno sviluppatore.
Sebbene le sidechain abbiano questa funzionalità di test con un rischio aggiuntivo (a causa della possibilità di perdita di capitale), il loro scopo principale è quello di aggiungere funzionalità aggiuntive alle loro blockchain madri. Ad esempio, Rootstock (RSK) è una sidechain sviluppata con l'obiettivo di fornire a Bitcoin funzionalità intelligenti e la possibilità di effettuare pagamenti più rapidi. La blockchain di Ardor, tuttavia, utilizza le sue childchain per aggiungere un ulteriore livello di sicurezza conducendo controlli attraverso di esse invece che attraverso la mainnet.
Le sidechain consentono alle criptovalute di interagire tra loro, consentendo flessibilità e un ambiente contenuto in cui gli sviluppatori possono sperimentare senza creare un impatto eccessivo.
Conclusione
Qualsiasi investitore serio di criptovaluta o sviluppatore blockchain dovrebbe comprendere la differenza tra una rete principale e una rete di prova e quando usarle. La mancata comprensione o l'uso improprio può comportare la perdita di capitale o danni alla reputazione di una criptovaluta.
Inoltre, altre possibilità, come le catene laterali, possono essere una buona scelta per esplorare le prestazioni o aggiungere funzionalità a un progetto. Pertanto, è importante non solo comprendere le basi, ma anche esplorare nuove tecnologie che sono in continua evoluzione nello spazio crittografico.