Atlas21
  • ‎
No Result
View All Result
Atlas21
No Result
View All Result
Atlas21
Home Feature

BitVM, nuovi smart contract su Bitcoin senza bisogno di fork

Federico Tenga by Federico Tenga
Novembre 22, 2023
in Bitcoin, Feature, Learn
BitVM, nuovi smart contract su Bitcoin senza bisogno di fork

BitVM

Share on FacebookShare on TwitterShare on Linkedin

Smart contract eseguiti off-chain e verificati dentro output Taproot per portare nuovi use case su Bitcoin.

  • BitVM è una nuova proposta per portare smart contract Turing-completi su Bitcoin senza necessità di soft fork o hard fork.
  • Il sistema è simile agli optimistic roll-up e si basa sulla possibilità di creare prove di errata esecuzione del codice in caso di tentativo di frode.
  • Pur ampliando di molto ciò che sarà possibile fare su Bitcoin, la soluzione presenta limiti di efficienza e praticità.

L’esecuzione di codice sulla blockchain di Bitcoin è limitata da design, in quanto, data l’importanza di Bitcoin come sistema monetario alternativo, massimizzare la sicurezza e minimizzare i rischi di comportamenti imprevisti è considerato prioritario rispetto alla flessibilità che smart contract più generici possono offrire. Tuttavia, grazie a nuovi protocolli di computazione off-chain, potrebbe diventare possibile abilitare l’esecuzione di contratti complessi direttamente su Bitcoin, senza bisogno di fare compromessi con la sicurezza della blockchain.

In data 9 ottobre 2023, lo sviluppatore Bitcoin Robin Linus ha pubblicato un paper intitolato “BitVM: Compute Anything on Bitcoin” presentando una proposta per permettere di creare smart contract Turing-completi su Bitcoin senza necessità di soft fork o hard fork al protocollo di consenso. Il paper è stato accolto con molto entusiasmo in quanto ha il potenziale di aprire le porte a casi d’uso ad oggi impossibili su Bitcoin.

Che cos’è BitVM?

L’idea alla base di BitVM è quella di avere un protocollo dove la blockchain non viene usata per eseguire codice, ma solo per effettuare la verifica dell’esecuzione. Due utenti possono perciò creare un contratto dove il primo (il “Prover”) afferma che l’output dell’esecuzione di un pezzo di codice è un determinato valore, mentre il secondo utente (il “Verifier”) può verificare se l’esecuzione del codice è corretta o meno, e nel caso non lo sia può a sua volta creare una prova che il primo utente ha fornito un output errato. Il codice può essere un qualunque tipo di programma, abilitando molteplici casi d’uso.

È importante notare che BitVM non permette di eseguire codice su Bitcoin, cosa che avrebbe grossi problemi di scalabilità, ma offre la possibilità di pubblicare le prove che un determinato script sia stato eseguito (fuori dalla blockchain) in modo errato e di attivare un meccanismo di punizione nel caso ciò avvenga. 

Il vantaggio principale di questo paradigma è che una prova di esecuzione errata on-chain è generalmente molto compatta in quanto vengono pubblicate solamente le righe di codice dove è avvenuto l’errore, non l’intero script che è stato eseguito. Per questo motivo, sebbene sia simile negli scopi, BitVM è fondamentalmente diverso dall’EVM (Ethereum Virtual Machine) e sposa un approccio che ha sicuramente le sue complessità, ma risulta essere molto più scalabile. 

Come funziona BitVM?

Per fare deployment di un contratto con BitVM, il codice del contratto viene scomposto in circuiti logici composti da porte NAND. Ogni passaggio dell’esecuzione viene poi committato all’interno di una foglia (Tapleaf) di un indirizzo Taproot, in modo che lo spazio on-chain usato sia minimizzato. Le due parti possono poi depositare dei bitcoin sull’indirizzo Taproot e cominciare una sequenza di Challenges e Responses dove le due parti preparano una serie di transazioni pre-firmate in cui il Verifier proporrà un Challenge e il Prover risponderà con una soluzione, creando quindi una catena di challenge → response → challenge → response, e così via.

Se il Prover riesce a rispondere a tutti i challenge, avrà diritto a prendersi dei bitcoin che il Verifier aveva depositato sull’indirizzo Taproot, mentre se il Prover fallisce uno dei challenge o le sue risposte risultano essere inconsistenti tra loro, il Verifier può prendersi i bitcoin che il Prover aveva messo a stake.

Tutte le transazioni pre-firmate usate per la catena di challenge-response verranno inoltrate sulla blockchain solo in caso di contenzioso, mentre se le due parti sono cooperative potranno fare settlement con una semplice firma multisig 2 di 2. Se invece una delle due parti non risulta essere collaborativa, la controparte potrà reclamare i bitcoin bloccati dell’indirizzo dopo che il timelock ad esso associato sarà scaduto. Si può notare quindi che per alcuni aspetti BitVM fa leva su un sistema di incentivi simile a quello usato nella rete Lightning. 

Estratto del paper originale dove viene mostrato come in BitVM venga impostata la catena di challenge e response

La Turing-completness è desiderabile?

Spesso si dibatte se sia desiderabile o meno avere la possibilità di eseguire script Turing-completi su Bitcoin o se invece sia un rischio per la sicurezza. Il problema principale della Turing-completness è che un computer non è in grado di distinguere tra un programma che è computabile e uno che non lo è fino a che non procede con l’esecuzione; se uno script non computabile venisse inserito dentro una transazione Bitcoin, tutti i nodi che proverebbero a validarla rimarrebbero bloccati, paralizzando di fatto il network. Per questo motivo su Bitcoin si è sempre preferito evitare la Turing-completness in modo da prevenire loop e script di cui non è possibile completare l’esecuzione.

Tuttavia BitVM, spostando l’esecuzione del codice fuori dalla blockchain, risolve a monte il problema, in quanto uno script non computabile non avrebbe alcun effetto sui nodi nel network. Con BitVM infatti solo il Prover deve eseguire il codice e qualunque problema emerga durante l’esecuzione rimarrà confinato al computer del Prover.

Casi d’uso

Non è ancora del tutto chiaro quali casi d’uso sarebbero effettivamente implementabili grazie a BitVM, ma permettendo di verificare l’esecuzione di programmi arbitrari direttamente su Bitcoin, BitVM ha il potenziale di aprire le porte a diversi casi d’uso che altrimenti avrebbero bisogno di un soft fork. Tra questi potrebbero risultare possibile implementare covenant, bridge trustless 2-way-peg da e verso sidechain, migliorare dei prediction market tramite DLC e in generale l’emulare ogni proposta per nuovi op_code nel linguaggio di scripting di Bitcoin.

Limiti e critiche

Pur risultando essere una soluzione rivoluzionaria che permette di avere smart contract molto complessi direttamente su Bitcoin, BitVM ha comunque i suoi limiti:

  • Il protocollo è molto complesso e richiede molta interattività tra le parti, rendendolo quindi difficile da implementare in applicazioni user friendly.
  • Ogni contratto è limitato a due parti, estendibile in alcuni casi a un modello 1 a N (i.e. un Prover risponde a challenge di N Verifier), ma non è possibile avere N persone che interagiscono tutte tra loro. Per via di questa limitazione è probabilmente impossibile usare BitVM per gestire il meccanismo di peg-out di una sidechain in maniera trustless.
  • La quantità di dati off-chain che le parti devono gestire sarà probabilmente enorme, rendendo il tutto poco pratico.
  • I requisiti di hardware per eseguire programmi complessi con BitVM potrebbero essere tali da limitarne l’uso a dispositivi desktop escludendo ambienti mobile. Per contratti più semplici invece anche un dispositivo mobile potrebbe essere sufficiente.

Conclusioni

BitVM è un nuovo paradigma che risulta essere sicuramente rivoluzionario in quanto apre a nuovi scenari su Bitcoin prima ritenuti impensabili senza un fork, valida ulteriormente l’idea che vi sia molto margine per innovare su Bitcoin.

Ad oggi solo una proof-of-concept è stata effettivamente sviluppata con BitVM. Tanto lavoro di ricerca deve ancora essere fatto per comprendere a pieno come BitVM possa passare dalla teoria alla pratica per casi d’uso reali, ma è probabile che nel tempo nuove ottimizzazioni per rendere il protocollo più pratico verranno scoperte. 

BitVM inoltre conferma che lavorare su più layer e spostare la complessità off-chain è una scelta di design che da un lato richiede un grande sforzo ingegneristico, ma al contempo permette di valorizzare al massimo Bitcoin senza comprometterne i principi di sicurezza e decentralizzazione. 

Previous Post

Safe 3: Trezor lancia il suo nuovo hardware wallet

Next Post

CFTC: Voyager Digital era un fragile castello di carte

Latest News

stablecoin
Crypto

Uber guarda alle stablecoin per ottimizzare i pagamenti internazionali

by Newsroom
Giugno 6, 2025
0

Il Ceo di Uber rivela l'interesse dell'azienda verso le stablecoin come soluzione per ridurre i costi dei pagamenti internazionali.

Read moreDetails
atm bitcoin
Bitcoin

Poșta Română inaugura il primo Atm Bitcoin negli uffici postali

by Newsroom
Giugno 6, 2025
0

Il servizio postale nazionale rumeno abbraccia i digital asset installando il primo Atm Bitcoin presso la filiale di Tulcea.

Read moreDetails
bitcoin
Bitcoin

Bitcoin e fisco: quando €15 in satoshi costano più di un pranzo a tre portate

by Gigi Turla
Giugno 5, 2025
0

Un'iniziativa educativa si scontra con la burocrazia fiscale italiana, trasformando un piccolo regalo in bitcoin in un potenziale incubo amministrativo.

Read moreDetails
rapimenti crypto
Crypto

Arrestato in Marocco il presunto organizzatore della serie di rapimenti crypto in Francia

by Newsroom
Giugno 5, 2025
0

Le autorità francesi identificano il 24enne franco-marocchino come il cervello dietro gli attacchi agli imprenditori del settore, incluso il co-fondatore...

Read moreDetails
etf bitcoin
Bitcoin

JPMorgan Chase: ETF Bitcoin accettati come garanzia per prestiti

by Newsroom
Giugno 5, 2025
0

Nuovo passo della banca americana sui digital asset: via libera agli ETF Bitcoin come collaterale per finanziamenti.

Read moreDetails
Atlas21

© 2025 Atlas21

Navigate Site

  • Bitcoin
  • Careers
  • Feature
  • Home
  • Interview
  • Learn
  • News
  • Opinion

Follow Us

No Result
View All Result
  • News
  • Interviews
  • Learn
  • Feature
  • Services
  • Adoption
  • ‎
    • ‎

© 2025 Atlas21

Utilizziamo i cookie per essere sicuri che tu possa avere la migliore esperienza sul nostro sito. Se continui ad utilizzare questo sito noi assumiamo che tu ne sia felice.OkPrivacy policy