Sta circolando una curiosa proposta per recuperare i bitcoin rubati con l’hack a Binance. La proposta sta circolando soprattutto su Twitter e prevede una transazione non valida che invaliderebbe anche tutti i blocchi minati dopo il furto.
Read this article in the English version here.
they were talking about broadcasting new tx's with attractive fees and letting miners decide.
if for example, they broadcast a tx spending all 7000 btc as fee, many miners may find that attractive.
obviously a one off isnt going to cut it, so they would have to layer incentives.— baclfoo (@baclfoo) May 8, 2019
Si tratterebbe quindi di creare una transazione con cui si inviano 0 BTC dall’indirizzo da cui sono stati sottratti i 7.000 bitcoin rubati durante l’hack. Il trucco starebbe nell’inserire in quella transazione 7.000 BTC di fee, che verrebbero incassati dai miner.
Tuttavia, essendo una transazione effettuata da un indirizzo in cui in questo momento quei 7.000 BTC non ci sono più, questa verrebbe considerata non valida dai miner. Il fatto è che una transazione del genere invaliderebbe anche tutti i blocchi successivi al furto, ovvero a partire dal momento in cui quei 7.000 BTC sono stati prelevati dagli hacker da quell’indirizzo.
La proposta quindi prevede di minare nuovamente tutti i blocchi successivi, con tutte le transazioni che sono state effettuate dopo il furto, perché anche queste verrebbero invalidate insieme ai blocchi a causa della transazione non valida con 7.000 BTC di fee.
Così facendo si sottrarrebbero ai ladri i 7.000 BTC rubati, distribuendoli invece ai miner, mentre per Binance non cambierebbe nulla, perchè quei 7.000 BTC non tornerebbero indietro. In altre parole sarebbe una vera e propria punizione nei confronti degli hacker.
I limiti della proposta per risolvere l’hack di Binance
Questa soluzione, che da un punto di vista strettamente tecnico risulterebbe essere possibile, ha però due grossi limiti ed un punto interrogativo.
Il primo limite è che ad oggi l’unica certezza che si sia trattato a tutti gli effetti di un furto sono le dichiarazioni di Binance. E se invece non si fosse trattato di un furto? Chi può decidere, in modo chiaro, netto ed inequivocabile, che si sia trattato a tutti gli effetti di un furto? Potrebbe farlo un giudice, ma quale giudice? Servirebbe un processo, con una sentenza che dovrebbe intimare non si sa chi a procedere con questa soluzione.
Il secondo limite è che, per farlo, bisognerebbe mettere d’accordo un gran numero di miner e, anche qualora si riuscisse a convincere la maggioranza dei miner, ci sarebbe sempre il rischio di una minoranza che potrebbe decidere di non accettare questa soluzione e forkare.
Anzi, per essere precisi, il fork sarebbe causato proprio da questa soluzione, con la possibilità che nascano due catene differenti, una senza alcuna modifica rispetto a quella attuale, ed un’altra modificata con la soluzione sopra descritta.
Questi due limiti sembrano suggerire che la probabilità che una soluzione del genere possa essere realmente adottata, e funzionare, siano davvero molto bassi, anche perchè potrebbe causare un pericoloso precedente che di fatto giustifica un intervento a posteriori sulla blockchain per modificarla.
Inoltre, c’è un punto dubbio. Dopo aver invalidato i blocchi successivi al furto, bisognerebbe riconvalicarli tutti per ripristinare tutte le transazioni in essi contenute. Ma come si può essere certi al 100% che questo poi realmente avvenga?
Pertanto se da un lato questa ipotesi è molto suggestiva, ed induce a profonde ed interessanti riflessioni sulla natura e sulle potenzialità della blockchain, dall’altro però suggerisce che anche la più resiliente delle blockchain, ovvero quella di Bitcoin, non è poi così immutabile come spesso si racconta.
Rimane però il fatto che, se qualcuno non dovesse essere d’accordo con una soluzione simile, un hard fork con sdoppiamento della catena potrebbe consentire di portare avanti anche l’attuale catena non modificata, come già accaduto in passato in casi vagamente simili ad esempio con la blockchain di Ethereum.