Questo è interessante, e mi fa venire in mente una domanda: quando compro e vendo un sBTC, o in generale qualsiasi “wrapped” bitcoin, cosa succede al collaterale? Ovvero il BTC in collaterale viene “associato” al token solo nella fase di minting, e bruciato quando il wrapped è distrutto?
Come avviene? A livello di address? Utxo? Hai idea di dove possa trovare queste info?
Il wrapped viene creato o distrutto in base alla domanda. Quando viene creato (peg-in), i corrispondenti bitcoin (collaterale) vengono custoditi in un address. Quando viene distrutto (peg-out), i corrispondenti bitcoin "liberati" e restituiti a chi cede il wrapped.
la gestione del collaterale cambia a seconda del token.
In quelli centralizzati, come WBTC, c'è un soggetto che custodisce i bitcoin tipo banca (Bitgo nel caso di WBTC) e si occupa della conversione.
In pratica questi token stanno a BTC esattamente come Tether sta al dollaro.
Poi ci sono quelli più o meno semicentralizzati (come Liquid o RBTC) dove c'è una pluralità di soggetti che tiene i bitcoin in un multiaddress. Al momento del peg-out occorre che la maggioranza firmi la "liberazione" dei bitcoin. Questo processo coinvolge lunghe fasi di conferma e di solito riguarda grossi ammontari.
Il piccolo possessore, se rivuole i suoi btc, utilizza degli exchange dove il wrapped non viene distrutto come nel peg-out ma passa solo di mano.
Poi c'è sBTC che, in quanto a decentralizzazione, è in un campionato a parte.
sBTC sfrutta la Proof-of-Transaction di Stacks in modo molto originale.
L'idea è quella di utilizzare i bitcoin spesi dai miner e incassati dagli stakers ad ogni ciclo di remunerazione (due settimane) come premio/punizione per gestire il collaterale in modo decentralizzato.
I custodi del collaterale diventano gli stakers stessi: il protocollo richiede che il peg-out sia firmato da almeno il 70% degli stakers.
Se questi si comportano in modo disonesto o non raggiungono la maggioranza per liberare i bitcoin "incartati", perdono la loro ricompensa e quest'ultima è usata per ripagare i possessori di sbtc.
Una particolarità di sbtc, che non riguarda gli altri wrapped, è quindi che non possono esistere più sBTC di quanti bitcoin i miner spendono (tenuti nello script wallet di mining).
Anzi meno, perchè per incentivare il comportamento onesto non possono esserci più sBTC del 60% di quelli contenuti nello script wallet.
Quindi nessuno staker ha convenienza ad essere disonesto perchè ruberebbe una cifra inferiore a quella che ottiene facendo il bravo.
Grazie alla bitcoin finality dell'upgrade Nakamoto i miner Stacks non possono forkare la catena e questo ha due vantaggii:
1) un ipotetico reorg di Bitcoin non mette in pericolo Sbtc perchè il collaterale del wrapped non si troverà mai nel ramo minoritario del fork
2)i miner STX non possono fare un attacco di forza bruta su Stacks per rubare sBTC
Un ultimo vantaggio sono i costi: dato che gli stackers sono già remunerati tramite la POX non sono necessarie fees aggiuntive per il servizio di wrapping.
La conversione BTC-sBTC non richiede commissioni ulteriori, a parte le normali fees per instradare le tx.
E' un sistema molto ingegnoso, seppur non esente da rischi, di cui beneficierà tutto l'ecosistema Stacks perchè un maggior uso di sBTC aumenterà il valore di STX (le fees su Stacks si pagano in STX) e quindi stimolerà i miner a spendere più bitcoin, dando la possibilità di creare più sBTC e così via.
La miglior fonte per approfondire è il WP si Sbtc, tecnico ma leggibile:
https://stacks-network.github.io/stacks/sbtc.pdf