Smart Contract asincroni: un cambio di paradigma |Parte1|

Gli Smart Contract sono una parte essenziale dell’ecosistema crypto. Ma questi smart contract asincroni cosa sono? Ecco la guida completa.

Gli smart contract asincroni consentono l’esecuzione simultanea di più transazioni senza attendere il completamento delle transazioni precedenti. Al momento,l’ Ethereum Virtual Machine (EVM) è lo standard più popolare per lo sviluppo di contratti intelligenti. Una limitazione significativa dell’EVM è che i contratti intelligenti sono strettamente sincroni, con un impatto negativo sulla capacità di scalabilità della rete. Mantenere una stretta compatibilità con lo standard EVM e la toolchain impedisce al settore di mettere in discussione alcuni dei suoi paradigmi di base.

smart contract asincroni
Adobe Stock

Quindi, un passaggio al concetto di smart contract asincroni potrebbe migliorare significativamente la scalabilità della rete e aprire nuove possibilità per applicazioni decentralizzate. Questo articolo esplorerà il potenziale degli smart contract asincroni e le loro implicazioni per il settore blockchain.

Ethereum Virtual Machine (EVM) e contratti intelligenti

L’Ethereum Virtual Machine (EVM) è lo standard più popolare per lo sviluppo di contratti intelligenti sulla maggior parte delle blockchain moderne. L’EVM ha introdotto una nuova generazione di sviluppatori in uno stack software decentralizzato, consentendo loro di creare app affidabili. Senza smart contract, non sarebbe possibile sviluppare applicazioni finanziarie come Uniswap e Compound, dove gli utenti possono depositare denaro reale senza temere che lo sviluppatore dell’app possa accedere o abusare dei propri fondi.

L’EVM è più grande di Ethereum. Lo standard EVM e la sua toolchain di sviluppo software che si basa su nuovi linguaggi di programmazione come Solidity sono spesso adottati da blockchain diverse dalla mainnet di Ethereum. Inoltre, l’ecosistema Ethereum ha attualmente il maggior numero di sviluppatori di smart contract. Altre blockchain tentano di acquisire parte della quota di mercato di Ethereum rimanendo compatibili con EVM, consentendo a utenti, sviluppatori e prodotti di passare facilmente.

Ad esempio, sei ulteriori blockchain L1 oltre Ethereum, come Polygon, Avalanche, BNB Chain e Fantom, supportano il protocollo DeFi Sushi. Ciò non sarebbe fattibile a meno che il codice del contratto intelligente non potesse passare senza problemi da una chain all’altra con modifiche praticamente nulle. Ognuna di queste sei blockchain è naturalmente compatibile con EVM.

Compatibilità o Stabilità, il dilemma che affligge gli sviluppatori

Gli sviluppatori affrontano sempre il seguente compromesso quando sviluppano una nuova generazione di infrastruttura decentralizzata. O rimanere compatibili con le tecnologie della generazione precedente e soffocare l’innovazione. Oppure far crescere il settore in nuove direzioni, ma pagare il prezzo per rieducare la comunità degli sviluppatori. In ogni caso, l’interruzione (disruption) ovvero l’instabilità, è dolorosa e ha sempre un costo.

È interessante notare che, quando i creatori di Ethereum hanno considerato questo compromesso, avrebbero potuto scegliere di rimanere compatibili con i contratti intelligenti limitati di Bitcoin. Contrariamente alla credenza popolare, Ethereum non ha inventato contratti intelligenti programmabili. Bitcoin ha già supportato script programmabili. Tuttavia, quelli sono di natura limitata e non sono completi di Turing.

Quando i creatori di Ethereum hanno considerato il compromesso dell’interruzione, hanno scelto di separarsi e innovare, offrendoci il primo ambiente di contratto intelligente completo di Turing. L’ecosistema Ethereum ha pagato un costo elevato per questa decisione di incompatibilità. Ha dovuto reintegrare gli sviluppatori blockchain su uno stack software completamente diverso che non era compatibile con Bitcoin.

I limiti dell’EVM

Con l’introduzione di nuove blockchain, l’architettura di Ethereum è ora la vecchia generazione conservatrice che minaccia di frenare il progresso. Mantenere una stretta compatibilità con lo standard EVM e la toolchain impedisce al settore di mettere in discussione alcuni dei paradigmi di base su cui si basava EVM.

Uno di questi principali limiti dell’EVM è che i contratti intelligenti sono strettamente sincroni. Questa limitazione ha un profondo effetto negativo sulla capacità di scalabilità della rete.

Cosa significa esattamente sincronicità? Considera che lo smart contract A interagisce con un diverso smart contract B e quindi con un altro smart contract C. Spesso vediamo questo comportamento in DeFi, dove più smart contract interagiscono come diversi blocchi “Lego” di uno stack di protocolli più ampio. In un ambiente sincrono, tutte e tre le interazioni verranno elaborate in modo atomico come parte di una singola transazione.

Smart contract asincroni: un esempio

Considera un utente che desidera aggiungere liquidità ETH/USD al protocollo Uniswap (DEX). L’utente si troverà a utilizzare lo smart contract WETH per avvolgere ETH nel WETH compatibile con ERC20. Quindi, utilizzerebbero il contratto intelligente USDC per trasferire USD. E infine, usa uno smart contract Uniswap per combinare i due come fornitore di liquidità e coniare nuovi token LP di conseguenza. Tutto questo avviene nel corso di una singola transazione.

Si noti che parti non correlate hanno sviluppato in modo indipendente i tre contratti intelligenti, WETH, USDC e Uniswap, per scopi diversi da questo flusso specifico.

Vantaggi degli smart contract asincroni

Il vantaggio della sincronicità e del paradigma della singola transazione è che l’intera interazione è molto semplice siccome avviene una singola operazione. La transazione nella user story del fornitore di liquidità è composta da tre fasi.

Se uno dei passaggi successivi fallisce per qualsiasi motivo, ad esempio il conio dei token LP, l’intera transazione verrà ripristinata e anche i passaggi iniziali verranno ripristinati automaticamente. Ciò significa che l’utente non si troverà improvvisamente a metà strada con i token WETH che dovrebbe scartare manualmente per tornare a ETH.

Limitazioni della sincronicità

L’effetto negativo della sincronicità è la congestione poiché i calcoli non possono essere eseguiti in parallelo. Torniamo al nostro esempio di fornitore di liquidità sopra. Anche se i tre contratti intelligenti, WETH, USDC e Uniswap, sono apparentemente non correlati, l’intera piattaforma blockchain deve bloccarsi e attendere fino a quando il loro stato non correlato viene recuperato completamente e il calcolo viene completato.

In caso contrario, il risultato del calcolo potrebbe essere influenzato e l’operazione non sarà più “atomica”. Questo comportamento compromette le pratiche di ridimensionamento di base come lo sharding poiché i dati non correlati non possono più essere gestiti in parallelo inserendoli in diversi shard non correlati.

Man mano che il numero di contratti e utenti cresce in modo esponenziale, l’incapacità di parallelizzare i calcoli diventa il principale fattore limitante nella crescita della rete. Sfortunatamente, non c’è modo di risolvere questo problema senza rompere l’intero modello EVM.

Gli Smart Contract asincroni nel futuro

Nel SECONDO ARTICOO continueremo a parlare degli smart contract asincroni.

Impostazioni privacy