Transazioni bitcoin non confermate

La rete bitcoin è seriamente intasata in questi ultimi mesi, molti hanno avuto problemi nella conferma delle transazioni e la mempool ha raggiunto la cifra record di 350.000 transazioni non confermate. Settando delle fee (tasse) per i miner troppo basse, è possibile che una transazione venga bloccata a tempo indeterminato e rimanere in un limbo perenne.

La soluzione

Le soluzioni sono 2.

Una transazione RBF (Replace by fee) se supportata dal vostro wallet.
Fare Double-spending e incrementare le fee manualmente.

RBF (Replace by fee)

RBF è una feature che alcuni wallet supportano (ma non tutti! coinbase o blockchain.info non supportano questa funzionalità), e dunque cliccando dal vostro wallet sulla transazione troverete una voce per aumentare le fee della transazione, banalmente. Se così non fosse allora effettuare double-spending è l’unica alternativa rimasta.

Double Spending

Il primo passo è quello di procurarsi un wallet che permetta di effettuare double spending.
Un wallet che lo permette è Electrum, uno dei primissimi progetti di wallet bitcoin open-source. Si può scaricare e verificare la signature di ciò che si scarica direttamente dal sito ufficiale: https://electrum.org/#download.

DISCLAIMER: Gli indirizzi mostrati sotto, non sono nostri nè associati in alcun modo a noi. Sono wallet random presi dalla rete a solo scopo didattico.

Transazione non confermata su blockchain.info, cosa fare?

Se anche a voi è successo di avere una transazione bitcoin bloccata da giorni o settimane, l’unico modo che avete per farla uscire dalla mempool o limbo è quello di effettuare double-spending. Tuttavia molti wallet online non supportano per ovvi motivi la possibilità di effettuare transazioni multiple quando il nostro saldo è già a zero.
Bisogna quindi esportare il proprio wallet su un wallet esterno, alternativo. Come detto, in questa guida andremo ad utilizzare il Wallet Bitcoin Electrum.

Importare un wallet su Electrum

Se avete un wallet online, ad esempio su blockchain.info, allora i passi per importarlo su electrum sono descritti di seguito:

1. Ottenete il seed del vostro wallet loggandovi su blockchain.info, poi Security Center, Backup Phrase. NB. Una volta mostrata la frase, blockchain.info non ve la mostrerà nuovamente, dunque appuntatevela e nell’ordine corretto.
2. Avviate Electrum e create un nuovo wallet di tipo Standard, cliccate su Restore from seed.
3. Inserite la vostra frase, andate su Options e mettete la spunta su BIP39 seed, ok.
4. Proseguite ora con la procedura e al sync completo del wallet dovreste essere in grado di vedere dentro Electrum la lista transazioni, tra cui quella non confermata.

Aggiunta dei seed su Electrum

Se avete un wallet online differente, verificate col vostro wallet provider le modalità per ottenere le frasi di seed da importare. O commentate se avete bisogno di aiuto.

Double spending del saldo bitcoin

Importato il wallet su Electrum, andiamo adesso ad effettuare il double spending. Ci sono due modi per farlo, il primo è semplificato e funziona solo in alcuni casi, con transazioni effettuate da client bitcoin aggiornati e che permettono di modificare a runtime le fee di una transazione. L’altro metodo è alternativo ed è un hack per poter fare double spending con i wallet online “poco aggiornati”.

Metodo semplificato

Se la transazione riporta la dicitura Replaceable, allora possiamo usare questo metodo:

1. Tasto destro sulla transazione.
2. Click su Increase fee
3. Immettiamo delle fee più adeguate (guarda il tasso suggerito in tempo reale).
4. Click su OK.

Il metodo semplificato su Electrum appunto consiste nel cliccare col tasto destro sulla transazione non confermata e rifare la transazione con delle free incrementate.
Electrum gestisce per noi il broadcasting della transazione e i miners automaticamente rigetteranno la vecchia e daranno priorità alla nuova transazione con delle fee più adeguate.
Per qualsiasi tipo du spporto contattateci.

Metodo alternativo

Qui abbiamo 1 transazione non confermata, dobbiamo rimuoverla. Ecco come:

1. Disconnettiamo internet, per la rimozione della transazione dal wallet (è non confermata, quindi nessun problema). Non riconnettete internet, altrimenti il sync del wallet la farà riapparire e dovremo ricominciare.

2. Copiate l’hash della transazione, tasto destro e copia. E’ un hash di tipo SHA-256, quello usato per questa dimostrazione è: 8dbb8e508aaaf858412559c8047e034cda7f1f35c6738238b9db84a3cca9b872.

3. Create un backup del wallet, così se dovessero esserci problemi si può ripristinare.

4. Aprite il file del wallet con un editor testuale. Il formato del wallet è JSON, quindi è facilmente editabile anche se non siete familiari.

5. Ctrl+F e cerchiamo l’hash all’interno del file. Dovrebbe apparire 4 volte, quindi dovete cancellarlo. Ma attenzione a non modificare la sintassi del JSON. Dovrebbe tessere solo ciò che viene evidenziato sotto nell’immagine:

Cancellate qualunque luogo dove appaia l’hash della transazione, appunto cercando di non rompere la struttua del file del wallet.

6. Salve e Adesso aprite il wallet (dovreste essere ancora offline), e controllate che carichi correttamente. Se carica allora dovreste essere riusciti nell’intento di cancellare la transazione non confermata. Se non carica, ripristinate tutto dal backup e ripetete i passi sopra (oppure lasciate un commento e scrivete se avete bisogno di supporto).

La transazione non confermata non dovrebbe più apparire e quindi è possibile rispendere il credito non speso (double spending).

– Ricreiamo dunque la transazione bitcoin, stavolta immettendo delle fee più alte.
– E’ possibile verificare quali siano in tempo reale le fee ottimali per una transazione sul network di bitcoin.
Dalle preferenze di Electrum è possibile configuare le proprie preferenze e fee.

– A questo punto firmate la vostra transazione e salvatela su un file (.txn).
– Ricollegative a internet e create un nuovo wallet fresco e nuovo di zecca. A questo punto importate la transazione creata e schiacciate sul tasto “Broadcast” per inviarla al network distribuito.

Fatto. A questo punto la precedente transazione non confermata per via delle fee troppo basse verrà scartata e la nuova sovrascriverà la vecchia.
Con una fee adeguata in pochi minuti la vostra transazione bitcoin verrà confermata.