Un utente Bitcoin, presumibilmente in preda al panico, ha pagato quasi 0,75 BTC (circa 60.000$ al momento della transazione) come fee in un'operazione replace-by-fee (RBF).

La transazione in questione è stata inviata circa 30 minuti dopo la mezzanotte UTC dell'8 aprile. Si trattava del secondo tentativo di eseguire un RBF che cambiava l'indirizzo di destinazione della transazione, inviando 0,48 BTC (37.770$) con un resto di 0,2 BTC (16.357$).

Bitcoin Cash

La seconda transazione RBF. Fonte: Mempool.Space

Anmol Jain, Vice-president of Investigations dell'azienda di crypto forensics AMLBot, ha dichiarato a Cointelegraph che la transazione originale presentava una fee "predefinita o conservativa". Il primo RBF ha aumentato la fee di quasi il doppio e ha modificato l'indirizzo di output.

Questa transazione RBF è poi stata sostituita con un'altra transazione RBF, con lo stesso output ma con una fee ancora più alta: presumibilmente un tentativo di aumentare la commissione per garantire che fosse l'RBF a essere processato, e non la transazione originale.

Questa operazione presenta pertanto tutti segni di un errore dettato dal panico: l’utente ha inviato rapidamente una nuova transazione per evitare che quella originale venisse inclusa in un blocco e diventasse definitiva. Jain ha suggerito alcune possibili spiegazioni: "Forse intendeva usare 30,5692 sat. Ma per la fretta o per un errore di digitazione, ha finito per usare 305.692 sat."

La seconda transazione RBF ha anche aggiunto un ulteriore UTXO (Unspent Transaction Output), contenente quasi 0,75 BTC. Il resto è stato erroneamente incluso nella fee, probabilmente perché l’utente non ha aggiornato l’indirizzo di resto o ha frainteso la struttura della transazione.

Un’altra possibilità sollevata da Jain è che l’utente abbia fatto confusione tra una fee in termini assoluti e una impostata in satoshi per byte:

"L'utente potrebbe aver digitato 305.000 pensando che significasse 30,5 sat/vB. Ma il wallet ha invece applicato una fee di 305.000 sat/vB, che ovviamente è una cifra assurda."

Replace-by-fee: una funzione controversa

L'RBF è una funzionalità di Bitcoin controversa e ampiamente fraintesa. Le transazioni non sono considerate definitive finché non vengono incluse in un blocco e confermate da ulteriori blocchi nella stessa chain.

Le transazioni nel mempool sono alla mercé dei miner, che si presume agiscano spinti da logiche di profitto. Gli sviluppatori di Bitcoin avevano previsto che, in caso di transazioni in conflitto tra loro, l'incentivo finanziario avrebbe spinto a elaborare quella con la fee più alta.

Non esiste un modo per impedire ai miner di Bitcoin di includere la transazione inviata per prima; non è nemmeno possibile stabilire quale transazione sia stata effettivamente inviata prima o dopo, data la natura decentralizzata del network. Di conseguenza, questo incentivo è stato formalizzato nella funzionalità RBF, che permette agli utenti di modificare una transazione non confermata inviandone un'altra con una fee più elevata.

Ciò ha portato a polemiche in passato. Hayden Otto, sostenitore di Bitcoin Cash (BCH), nel 2019 sosteneva che l'RBF permettesse il double-spending su Bitcoin. Al contrario Bitcoin Cash ha rimosso questa funzionalità, sostenendo che anche le transazioni non ancora confermate sono definitive e pertanto sicure da accettare.

Tuttavia, per come funzionano le blockchain, transazioni simili all'RBF possono occasionalmente verificarsi anche su Bitcoin Cash. Questo perché l'RBF è semplicemente una proprietà implicita del meccanismo di consenso di Bitcoin e quindi anche dei suoi fork, che è stata poi formalizzata come funzionalità.