Blog
Recupero della password wallet.dat: recuperare e aprire un portafoglio Bitcoin bloccato
In breve
Per cercare la password di wallet.dat servono i dati cifrati conservati e un criterio per scegliere le password da provare. Il nome del file non ne dimostra formato, proprietà o capacità di spendere. Questa guida tratta i controlli sui file di Bitcoin Core e portafogli correlati, come Litecoin Core e Dogecoin Core.
- Salvi una copia dell’originale e identifichi software e formato del database prima di scegliere uno strumento.
- Provi gli schemi ricordati offline su una copia o su un hash estratto adatto. Numero di candidati e costo per tentativo determinano la fattibilità.
- Controlli separatamente i vecchi backup: possono contenere altre chiavi o una password precedente. File eliminati o danneggiati richiedono prima conservazione e recupero dei dati. Un file watch-only non fornisce chiavi private.

Cos'è realmente wallet.dat
wallet.dat è il file di portafoglio di Bitcoin Core e dei suoi fork – Litecoin Core, Dogecoin Core, Dash Core e altri usano lo stesso meccanismo con nomi e cartelle diverse. Memorizza le Sue chiavi, gli indirizzi e la cronologia delle transazioni. Il formato conta perché decide quale software può aprire il file; per il recupero della password, la parte importante è che le chiavi all'interno sono crittografate.

Dove vive il file
- Bitcoin Core (Windows):
%APPDATA%\Bitcoin\wallets\wallet.dat(più recente) o%APPDATA%\Bitcoin\wallet.dat(installazioni vecchie) - Bitcoin Core (macOS):
~/Library/Application Support/Bitcoin/wallets/wallet.dat - Bitcoin Core (Linux):
~/.bitcoin/wallets/wallet.dat - Litecoin Core: la stessa disposizione sotto
~/.litecoino%APPDATA%\Litecoin - Dogecoin Core: sotto
~/.dogecoino%APPDATA%\Dogecoin
Core tiene anche un file wallet.dat.bak accanto al portafoglio – un backup automatico che a volte è una copia più nuova o più vecchia dello stesso portafoglio. Se il file principale è danneggiato, la .bak è spesso il bersaglio di ricerca migliore.
Cosa c'è dentro
I portafogli più vecchi (prima di Bitcoin Core 0.21) usavano il formato Berkeley DB e memorizzavano le chiavi direttamente, insieme a indirizzi, contatori del pool di chiavi e cronologia delle transazioni. I portafogli moderni usano SQLite con l'architettura descriptor portafoglio e possono memorizzare un seed HD crittografato. In entrambi i casi, le chiavi private – o il seed che le deriva – sono ciò che la password protegge.
Come funziona la crittografia
Bitcoin Core non crittografa le chiavi una per una con la Sua password. Lavora con due livelli:
- Una chiave master casuale (la «mkey») viene generata quando crittografa il portafoglio. Questa chiave master crittografa il materiale delle chiavi reale con AES-256-CBC.
- La chiave master stessa viene crittografata con una chiave derivata dalla Sua password. La derivazione ripete deliberatamente molti round di hashing – storicamente tramite EVP_BytesToKey di OpenSSL con SHA-512 e un contatore di iterazioni memorizzato.
Quella ripetizione deliberata è tutta la ragione per cui il recupero della password è un problema di ricerca piuttosto che un reset. Ogni candidato deve essere derivato e verificato contro la chiave master crittografata, il che costa tempo CPU reale per tentativo. È anche il motivo per cui un portafoglio vecchio viene cercato più velocemente di uno nuovo: i portafogli crittografati anni fa memorizzavano un contatore di iterazioni più basso, quindi ogni ipotesi è più economica rispetto a un portafoglio crittografato con impostazioni moderne.
Due conseguenze pratiche seguono:
- Il bersaglio del recupero è il file, non la password che potrebbe aver usato su qualche altro servizio. Senza il file (o un suo backup), non c'è nulla da cercare.
- Dove il formato lo consente, la ricerca gira contro un hash estratto della chiave master crittografata (la riga
$bitcoin$che strumenti come bitcoin2john estraggono) invece che contro il file reale. Ciò significa che il file stesso non deve mai essere inviato da nessuna parte – e uno strumento sbagliato non può mai danneggiare la Sua unica copia.
Di cosa ha bisogno una ricerca di recupero
- Una copia esatta del file – mai l'originale. Registri prima il suo hash SHA-256 così può dimostrare in seguito che nulla è cambiato.
- Tutto ciò che ricorda della password: lunghezza, struttura, parole, date, maiuscole, sostituzioni e abitudini di quell'epoca.
- La versione e il formato del portafoglio, se riesce a determinarli (vecchia Berkeley DB vs. moderno descriptor portafoglio; il contatore di iterazioni memorizzato).
- La disposizione della tastiera e il set di caratteri che usava quando la password è stata impostata – una maiuscola o un simbolo che «non funziona» è spesso una differenza di codifica, non una password sbagliata.
La strategia dei candidati influisce sulla dimensione della ricerca. Una ricerca con uno schema come «iniziava con il nome del cane e finiva con un anno a due cifre» è un problema tecnico diverso da una ricerca più ampia.

Fattibilità: la scala onesta
- Ricorda lo schema (una parola base più alcune posizioni sconosciute): una ricerca limitata è spesso realistica – minuti o giorni, a seconda di quanto è sconosciuto.
- Ricorda la forma generale ma non i caratteri esatti: fattibile quando lo spazio sconosciuto è piccolo; uguale a una ricerca limitata.
- Niente wallet.dat e niente backup: non c'è nulla da cercare. Una password non può essere recuperata solo dalla memoria, e nessun servizio può cambiarlo.
Un esempio concreto rende concreta la scala. Se la Sua password era una singola parola base da una lista di 10.000 parole possibili più un anno a quattro cifre, lo spazio di ricerca è di circa 10.000 × 10.000 = 100 milioni di candidati – una ricerca limitata, spesso riuscita. Se la password era dieci caratteri casuali da un set di 90 caratteri, lo spazio è di circa 90¹⁰ ≈ 3,5 × 10¹⁹ – miliardi di volte più grande di quanto una GPU possa percorrere in una vita. La differenza tra questi due esempi è la dimensione dello spazio dei candidati; la valutazione parte dai dati cifrati del portafoglio e dal caso completo.

I passaggi in ordine
Passaggio 1 — copia e hash
Copi wallet.dat (e la .bak, se presente) in due posizioni separate prima di fare qualsiasi altra cosa. Registri lo SHA-256 di ogni copia. Tutto il resto gira su una copia, mai sull'originale.
Passaggio 2 — Identifichi versione e formato
Determini quale portafoglio ha: Berkeley DB (legacy) o descriptor portafoglio SQLite. Il comando file, la cartella del portafoglio e la versione di Bitcoin Core che l'ha aperto per ultimo aiutano tutti. Il formato Le dice quale software può aprire il file e quale percorso di estrazione userà la ricerca.
Passaggio 3 — Costruisca la lista di candidati
Scriva ogni password che può immaginare di usare: parole, nomi, date, anni, lo schema di maiuscole e simboli e le sostituzioni che faceva abitualmente. Più struttura recupera dalla memoria, più piccola è la ricerca. Questi dettagli possono rendere la ricerca più mirata; la fattibilità richiede comunque una valutazione del caso completo.
Passaggio 4 — Esegua la ricerca offline
Esegua la ricerca su una macchina non connessa a internet, sulla copia o sull'hash estratto. Gli strumenti open source (la modalità elenco token di BTCRecover, o hashcat contro l'hash $bitcoin$, modalità wallet.dat 11300) testano i candidati sistematicamente. Non incolli mai il file, l'hash o le Sue ipotesi di password su un sito che offra di «controllarli».
Passaggio 5 — Apra il portafoglio e sposti i fondi
Quando la password viene trovata, apra il portafoglio con il software originale o un client compatibile, verifichi il saldo su un explorer di blocchi, poi sposti i fondi in un nuovo portafoglio creato da Lei. Tratti il vecchio portafoglio come ritirato.
Casi limite da conoscere
- wallet.dat.bak: un backup automatico. Se il file principale è danneggiato, la
.bakpuò contenere le stesse chiavi con uno stato diverso (spesso più vecchio) – e a volte la password in uso in quel momento. - Un portafoglio mai crittografato: non esiste alcuna password. Il file si apre senza; se «chiede una password», sta guardando un altro portafoglio o un file corrotto.
- Una password cambiata anni fa: funziona solo la passphrase più recente. Le vecchie passphrase sono irrilevanti una volta che il portafoglio è stato ricrittografato.
- Caratteri speciali: i simboli digitati su un'altra disposizione di tastiera sono un comune falso negativo. Testare la stessa password con un'altra disposizione fa parte della ricerca, non un segno che la Sua memoria sia sbagliata.
- Un wallet.dat cancellato: smetta subito di usare il disco. Il recupero di file cancellati o l'imaging del disco è un passaggio separato – veda la nostra guida sul recupero di un wallet.dat cancellato o un disco danneggiato.
- Portafogli watch-only o prunati: il pruning riguarda i dati della blockchain, non le chiavi. Un portafoglio watch-only non ha chiavi private e nulla da recuperare.
Portafogli comprati
Un wallet.dat, un hash o un «portafoglio con saldo» comprato da internet è quasi sempre manipolato, e la proprietà non può essere dimostrata. Non possiamo aiutare con portafogli comprati – il recupero richiede proprietà autentica e materiale reale, e una ricerca ha bisogno di più di una lunghezza di password.

Quando ha senso l'aiuto professionale
Uno specialista esegue la stessa ricerca con gli stessi limiti onesti, ma con l'esperienza per giudicare la fattibilità prima che Lei si impegni – e senza che il file del portafoglio venga mai inviato tramite moduli o chat. Richieda una valutazione confidenziale: cosa ha, cosa ricorda e una risposta onesta sul fatto che la ricerca sia realistica. No cure, no pay, concordato per iscritto prima che il lavoro inizi.

FAQ
wallet.dat può essere recuperato senza la password?
Solo se il portafoglio non è mai stato crittografato – allora non serve alcuna password. Se era crittografato e la password è sparita, il recupero significa testare candidati contro una copia del file. Non c'è backdoor e nessun servizio può decrittarlo senza la password o il materiale da cercare.
wallet.dat contiene una frase di recupero?
I portafogli Bitcoin Core moderni possono memorizzare un seed HD, crittografato dentro il file; i portafogli più vecchi memorizzano le chiavi direttamente. Non esiste una frase cartacea separata di 12 o 24 parole per Bitcoin Core, a meno che non ne abbia importata una nel portafoglio – in tal caso il seed stesso è dentro il file.
La versione del portafoglio conta per il recupero?
Sì. Il formato (Berkeley DB vs. descriptor portafoglio SQLite) decide quale software può aprire il file e quale percorso di estrazione viene usato, e il contatore di iterazioni memorizzato decide quanto costa ogni ipotesi di password – motivo per cui i portafogli più vecchi vengono cercati più velocemente di quelli nuovi.
Quanto dura una ricerca di password wallet.dat?
La durata dipende dai dati cifrati del portafoglio, dalla strategia dei candidati e dal caso completo. Una lista strutturata da poche migliaia a pochi milioni di candidati può completarsi in minuti o giorni; una password lunga e casuale crea uno spazio di ricerca molto più ampio. Dopo la valutazione gratuita ottiene una stima realistica – mai una garanzia.
E se il mio wallet.dat è stato cancellato?
Smetta subito di usare il disco e lavori da una copia o un'immagine del disco. Se non esiste alcuna copia da nessuna parte, il recupero dei file cancellati sul disco originale è l'unica via – veda la guida sul recupero di un wallet.dat cancellato.
Recuperare la password di wallet.dat permette di recuperare criptovalute rubate?
Recuperare la password di wallet.dat può ripristinare l’accesso alle chiavi contenute nel file, ma non annulla una transazione blockchain confermata. Valutiamo il recupero dell’accesso ai portafogli dopo aver verificato la legittima titolarità e non trattiamo casi di fondi rubati o truffe.
