La seed giusta senza la venticinquesima parola non recupera niente

Passphrase BIP39: perché una seed corretta senza la parola aggiuntiva non recupera nulla, come nasce il portafoglio nascosto e come annotarla in sicurezza.

Doalex / CC BY-SA 4.0

La scena si ripete con una regolarità che ha smesso da tempo di sorprendere. Il dispositivo si è rotto o è stato smarrito, le dodici parole sono tutte lì, scritte bene, nell’ordine giusto. Il ripristino va a buon fine, l’applicazione mostra un portafoglio perfettamente funzionante e un saldo pari a zero. Nessun errore, nessun avviso, nessuna riga rossa.

Nella maggior parte di questi casi la frase non è sbagliata. Manca la stringa aggiuntiva che era stata impostata mesi prima, spesso in cinque minuti, seguendo una guida che la chiamava «venticinquesima parola» e la presentava come uno strato di sicurezza in più. Quella stringa non è una parola e non è la venticinquesima di niente: è un ingrediente separato del calcolo, e senza di essa la stessa frase produce un portafoglio diverso.

Il meccanismo è documentato, prevedibile e reversibile solo in un senso: se si conosce la stringa si torna dentro, se non la si conosce non esiste nessuna procedura, nessun servizio e nessun operatore in grado di ricostruirla. Vale la pena capire come funziona prima di attivarla, non dopo.

L’errore in cinque punti

  • Che cosa succede. Frase mnemonica corretta più stringa mancante uguale portafoglio nuovo, valido e vuoto.
  • Perché non avvisa. Non esiste un valore corretto da confrontare: qualunque stringa produce un risultato legittimo.
  • Il dettaglio che fa saltare tutto. Maiuscole, spazi all’inizio o alla fine e caratteri accentati cambiano il risultato.
  • Dove si sbaglia di più. Annotare la stringa accanto alla frase, che annulla il vantaggio, oppure non annotarla affatto.
  • La verifica. Un ripristino di prova su dispositivo azzerato, con il confronto del primo indirizzo di ricezione. Venti minuti, una volta sola.

Che cosa fa davvero la passphrase BIP39

La specifica che descrive le frasi mnemoniche prevede una stringa opzionale scelta dall’utente. Frase e stringa entrano insieme in una funzione di derivazione: la frase è il dato di partenza, la stringa entra nel sale, e il risultato è un seme da 512 bit da cui discende l’intero albero delle chiavi.

Il passaggio da capire è questo: la stringa non viene confrontata con niente. Non c’è un valore memorizzato da qualche parte, non c’è un controllo di integrità che la riguardi, non c’è un tentativo sbagliato. La funzione accetta qualunque sequenza di caratteri e restituisce un seme diverso per ciascuna. La passphrase BIP39 non protegge un portafoglio: ne genera uno nuovo, e ogni stringa diversa ne genera un altro ancora.

Ne discende la proprietà che rende il meccanismo utile e pericoloso nella stessa misura. Chi trova la frase mnemonica scritta su un foglio non ha ancora trovato i fondi, perché senza la stringa arriva a un portafoglio che non è mai stato usato. E chi possiede la frase ma ha dimenticato la stringa si trova esattamente nella stessa posizione dell’estraneo.

Il nome corrente è fuorviante due volte. Non è una parola della lista di duemilaquarantotto voci, e non partecipa al calcolo del controllo di integrità: può essere lunga, contenere numeri, simboli e spazi interni. Chiamarla venticinquesima parola induce a scriverla in fondo alla stessa riga della frase, che è precisamente l’errore da evitare.

Perché non compare nessun messaggio di errore

Le interfacce mostrano un errore quando esiste un valore atteso e quello inserito non corrisponde. Qui non è così: ogni combinazione di frase e stringa è matematicamente valida, e il software non ha modo di sapere quale fosse quella usata in passato.

Il risultato è un silenzio che porta fuori strada. La persona vede un portafoglio funzionante e conclude che il problema sia altrove: prova un’altra applicazione, cerca un percorso di derivazione diverso, ricontrolla le parole una per una. Tutte verifiche sensate, tutte inutili se la causa è un’altra.

Che cosa si possiede Che cosa si recupera
Frase corretta e stringa corretta Il portafoglio con i fondi
Frase corretta e stringa sbagliata Un portafoglio diverso e vuoto, senza alcun avviso
Frase corretta e nessuna stringa Il portafoglio di facciata, quello che esisteva prima
Frase corretta e stringa dimenticata Niente, e non esiste procedura di recupero
Stringa corretta e frase perduta Niente

La terza riga è quella che salva le situazioni recuperabili. Chi ripristina senza inserire nulla ottiene il portafoglio derivato dalla sola frase, e se lì compare un movimento riconoscibile significa che la frase è giusta e che manca soltanto l’ultimo elemento.

Il portafoglio nascosto e quello di facciata

Busta di carta chiusa appoggiata su un tavolo di legno accanto a una penna
Newone / CC BY-SA 4.0

Poiché ogni stringa produce un portafoglio distinto, dalla stessa frase mnemonica si ricavano quanti portafogli si vuole. È il fondamento della configurazione con un portafoglio in evidenza e uno riservato: il primo si apre senza inserire nulla, il secondo richiede la stringa.

L’idea si regge su una condizione che viene trascurata quasi sempre. Un portafoglio in evidenza completamente vuoto non è credibile: chi ha trovato il dispositivo o la frase si aspetta di trovarci qualcosa. Perché la configurazione abbia senso, quel portafoglio deve contenere un importo modesto ma plausibile e mostrare una storia di operazioni coerente nel tempo, non un unico versamento fatto il giorno dell’installazione.

C’è poi un limite di fondo che va detto con chiarezza. L’esistenza di questo meccanismo è pubblica e documentata: chiunque si occupi della materia sa che una frase mnemonica può nascondere una stringa aggiuntiva. In uno scenario di costrizione, negare non è una difesa affidabile, ed è una considerazione che riguarda soprattutto chi rende visibile il proprio interesse per il settore. Su questo punto le abitudini di riservatezza contano più della configurazione tecnica, come descritto anche in questa panoramica sulla protezione degli asset digitali.

Le tre varianti dello stesso errore

La prima riguarda gli spazi. Uno spazio finale battuto per abitudine cambia il risultato, e non è visibile né sullo schermo né sul foglio. Alcune interfacce lo rimuovono automaticamente, altre no, e passare da un’applicazione all’altra può quindi produrre due portafogli diversi a partire dalla stessa annotazione.

La seconda riguarda le maiuscole. La stringa distingue maiuscole e minuscole in ogni carattere. Una parola scritta con l’iniziale maiuscola su un dispositivo e tutta minuscola su un altro genera due semi differenti, e chi ha annotato la stringa senza rispettarne la forma esatta ha annotato qualcosa di inservibile.

La terza riguarda i caratteri accentati e i simboli non presenti nell’alfabeto di base. La specifica impone una normalizzazione del testo prima del calcolo, ma le implementazioni non si sono comportate tutte allo stesso modo nel tempo, e una lettera accentata può essere codificata in due modi visivamente identici. La conclusione operativa è netta: usare solo lettere non accentate, cifre e simboli comuni. Il testo di riferimento è pubblicato nel repository dei documenti BIP, ed è la fonte da consultare quando due strumenti si comportano in modo diverso.

Duemilaquarantotto iterazioni non sono molte

C’è una convinzione diffusa secondo cui una stringa qualsiasi basterebbe, perché tanto serve solo a chi già possiede la frase. Il ragionamento è corretto nella premessa e sbagliato nella conclusione.

La funzione di derivazione prevista dalla specifica esegue duemilaquarantotto iterazioni. Era un numero ragionevole quando è stato scelto, ed è poco oggi: chi entra in possesso della frase mnemonica può provare un enorme numero di stringhe candidate su una macchina comune, partendo dagli elenchi di parole più usate, dalle date, dai nomi propri e dalle loro combinazioni.

Per dare una misura: quattro parole scelte davvero a caso da una lista di duemilaquarantotto voci valgono quarantaquattro bit, che contro un attacco condotto con la frase già in mano non sono una difesa solida. Sei parole arrivano a sessantasei bit, otto a ottantotto. Una stringa che valga qualcosa va costruita con la stessa cura della frase: scelta a caso, non pensata, non derivata da qualcosa che riguarda chi la usa.

Vale il ragionamento opposto per chi la sceglie corta e memorabile: quella configurazione non aggiunge sicurezza, aggiunge solo un punto in più in cui il recupero può fallire.

Dove si annota, e dove non si annota mai

Il principio è uno solo: la stringa deve stare in un luogo diverso da quello della frase mnemonica, con un rischio di perdita indipendente. Scriverla sulla stessa piastra, nella stessa busta o nella stessa cassetta annulla l’intero vantaggio e lascia in piedi soltanto lo svantaggio.

  • Supporto separato e durevole. Una seconda piastra o una scheda in un contenitore diverso, conservata in un altro luogo o presso un’altra persona di fiducia.
  • Trascrizione letterale. Carattere per carattere, con l’indicazione esplicita di maiuscole e minuscole e il numero totale di caratteri annotato a fianco.
  • Nessun riferimento incrociato. Sul supporto della stringa non deve comparire nulla che indichi dove si trova la frase, e viceversa.
  • Mai solo a memoria. Dopo qualche mese senza usarla, una stringa complessa non si ricorda con affidabilità, e la certezza soggettiva del contrario è il preludio più comune alla perdita.
  • Mai in un servizio sincronizzato. Una nota sul telefono o un file in una cartella che si allinea da sola sposta il segreto dove non lo si controlla più.

Un’annotazione utile riguarda il contesto: quale applicazione è stata usata, quale percorso di derivazione, se la stringa era attiva. Non il saldo, non il nome di chi la detiene. Chi si affaccia adesso a questa materia trova un inquadramento più generale in questa introduzione, utile per capire in che punto della custodia ci si trova.

La verifica che dura venti minuti

Quaderno aperto con una penna appoggiata sopra su una scrivania in penombra
  1. Prepara un dispositivo pulito. Un apparecchio azzerato oppure la funzione di ripristino temporaneo, dove disponibile. Mai un computer collegato alla rete.
  2. Inserisci solo la frase. Annota il primo indirizzo di ricezione che compare: è il portafoglio di facciata.
  3. Inserisci frase e stringa. Confronta il primo indirizzo con quello registrato quando hai configurato il portafoglio riservato. Se coincide, il backup funziona.
  4. Prova un errore volontario. Inserisci la stringa con una maiuscola diversa e osserva che compare un terzo portafoglio, senza alcun avviso. Serve a rendere concreto il meccanismo.
  5. Azzera il dispositivo di prova. E annota la data della verifica accanto al supporto, non sulla stessa riga del segreto.

La verifica va rifatta quando cambia qualcosa: applicazione nuova, dispositivo nuovo, trasloco dei supporti. Un backup che non è mai stato ripristinato resta un’ipotesi, e questa configurazione ha un elemento in più che può fallire rispetto a una custodia semplice.

Eredità, deleghe e situazioni in cui manca una persona

Una configurazione con stringa aggiuntiva raddoppia il problema della trasmissione. Chi eredita la frase mnemonica senza sapere che esiste una stringa vede un portafoglio vuoto e conclude che non ci fosse nulla, e non ha alcun elemento per sospettare il contrario.

La soluzione non è tecnica ma organizzativa: le istruzioni devono esistere, essere comprensibili a chi non conosce la materia e indicare la sequenza dei passaggi senza contenere i segreti in chiaro nello stesso documento. Una busta sigillata presso una persona diversa da quella che custodisce la frase, con l’indicazione di che cosa si trova dove, risolve la maggior parte dei casi.

Il testo va scritto pensando a chi lo leggerà: qualcuno che non ha mai visto un dispositivo di firma, in un momento difficile, senza nessuno a cui chiedere. Ogni riferimento implicito, ogni allusione comprensibile solo a chi l’ha scritta, è un punto in cui la procedura si interrompe. Quanto affidare a questa configurazione è una decisione personale che dipende da circostanze che nessun testo può conoscere, e quanto scritto qui riguarda la meccanica della custodia, non scelte di investimento né consulenza finanziaria.

Quando conviene non usarla

La stringa aggiuntiva protegge da uno scenario preciso: qualcuno trova la frase mnemonica ma non il resto. Se quel rischio è basso, per esempio perché la frase è incisa su metallo e conservata in un luogo che nessuno frequenta, il beneficio è modesto e il costo, in termini di possibilità di sbagliare, è concreto.

Ci sono tre situazioni in cui conviene rinunciarvi. La prima è quando non si ha un secondo luogo di conservazione realmente indipendente: due segreti nella stessa scatola sono un segreto solo. La seconda è quando la custodia deve restare accessibile ad altre persone in caso di necessità e non si è disposti a scrivere istruzioni complete. La terza è quando l’importo custodito non giustifica un ulteriore punto di rottura.

Va detto anche che nessuna stringa difende da una firma concessa per errore su un sito che imita un progetto conosciuto, né da un finto assistente tecnico che chiede di digitare la frase per «verificarla». Sono percorsi che passano dall’utente e non dalla matematica, e sono descritti nel dettaglio in questa ricognizione delle truffe più diffuse.

Domande frequenti

Posso aggiungere la stringa a un portafoglio già in uso?

Non si aggiunge a un portafoglio esistente: se ne crea uno nuovo. Attivarla significa ottenere indirizzi diversi, verso i quali i fondi vanno trasferiti con transazioni ordinarie, pagando le commissioni di rete. Il portafoglio precedente resta valido e va considerato ancora attivo finché contiene qualcosa.

Se la dimentico, esiste un modo per riprovare le combinazioni?

Esistono strumenti che provano varianti a partire da un’ipotesi, e funzionano solo se si ricorda quasi tutto: la struttura, la lunghezza, i caratteri incerti. Se la stringa era davvero casuale e non se ne conserva traccia, non c’è alcuna possibilità concreta di ritrovarla. Nessun operatore può intervenire, perché non ne esiste copia da nessuna parte.

Quante stringhe diverse posso usare sulla stessa frase?

Tutte quelle che si vuole, e ciascuna genera un portafoglio indipendente. La difficoltà non è tecnica ma organizzativa: ogni configurazione in più è un backup in più da verificare, e la moltiplicazione dei portafogli è una delle cause ricorrenti di fondi dimenticati su indirizzi che nessuno controlla più.

I dispositivi la chiedono sempre allo stesso modo?

No. Alcuni la richiedono a ogni collegamento, altri permettono di associarla a un secondo codice di accesso, altri ancora impongono un limite alla lunghezza. Le differenze contano quando si passa da un dispositivo all’altro, ed è uno dei motivi per cui la prova di ripristino va rifatta dopo ogni cambio di apparecchio.

Una frase di ventiquattro parole rende superflua la stringa?

Sono due cose distinte. La lunghezza della frase riguarda la resistenza a una ricerca esaustiva, che è già fuori portata in entrambi i casi; la stringa riguarda lo scenario in cui la frase viene trovata da qualcuno. Aumentare le parole non offre alcuna protezione contro quel rischio specifico.

Posso usare una frase di senso compiuto per ricordarla meglio?

È la scelta che rende il meccanismo quasi inutile. Le frasi tratte da canzoni, libri, ricorrenze o nomi di famiglia sono esattamente il primo insieme che viene provato da chi possiede già la frase mnemonica. Se serve qualcosa di memorizzabile, meglio più parole scelte a caso che una frase costruita con criterio personale.

La stringa aggiuntiva è uno strumento serio, e come tutti gli strumenti seri va usata sapendo che cosa fa e che cosa costa. Chi la attiva senza annotarla in modo separato e senza provare il ripristino non ha rafforzato la propria custodia: ha soltanto aggiunto una condizione in più perché funzioni.

Si occupa di sicurezza applicativa e di modelli di custodia per patrimoni digitali. Analizza attacchi reali e procedure di ripristino, con attenzione a ciò che accade quando qualcosa va storto. Consiglia sempre di provare il backup prima di averne bisogno.
2