IntroduzioneLa custodia del seed è un argomento che mi è sempre stato a cuore. Per la prima volta Bitcoin è un sistema che mette nelle mani dell’utente la responsabilità della propria sovranità finanziaria. Questo comporta un difficile bilanciamento di opportunità, ma anche rischi, data la natura intrinsecamente “al portatore” di bitcoin. La proprietà di bitcoin appartiene al soggetto che sia in grado di firmare digitalmente una transazione con la corrispondente chiave privata. Nessun altro soggetto. Persona, istituzione, o bot che sia, chi controlla la chiave privata, controlla i bitcoin.
Ovviamente questo significa che la custodia di bitcoin sia di fondamentale importanza, sia avendo riguardo non solo alla possibilità effettiva di firmare le transazioni, ma anche alla possibilità di eventi avversi, presenti o futuri di natura personale, sociale o tecnologici alla quale si possa andare incontro nel giro di qualche anno.
I rischi tecnologici, personali e legali devono essere attentamente considerate, quando si decida quale sistema di custodia adottare:
Ovviamente la diversa combinazione di queste minacce, poterà ciascuno di noi a decidere quale meccanismo sia migliore nel proprio specifico caso.
Naturalmente, la cosa più rilevante è che bitcoin abilita le opzioni di auto-custodia, che sono di fatto escluse nella finanza tradizionale, ed è una caratteristica unica che dà potere ai bitcoiner in vari scenari, purtroppo, sempre più comuni in pochi anni, di essere un individuo sovrano finanziariamente, custodendo i propri bitcoin indipendentemente da altri intermediari.
Il problema è che l'autocustodia è difficile, e la quantità di bitcoin persi è un monito per tutti coloro che vogliono intraprendere questa strada: le sfide prendono le forme più diverse.
Uno dei primi articoli ad accendere la mia curiosità, e le mie riflessioni in proposito, è stato:
Gifting satoshis to future generationsRecently I’ve been tasked to gift some satoshis to a newborn baby, who is supposed to redeem them when he grows up, about 18 years from now. The challenge was trickier than originally expected, as there are many different ways to store bitcoin, each one with different trade-offs, and at the same time it’s hard to predict the state of the Bitcoin industry two decades into the future.
Leggendo questo articolo ho capito che la custodia di una chiave privata tramite un wallet fisico presentava due indubbi vantaggi:
Indipendenza dallo sviluppo tecnologico in tema di wallet/supporti informatici
Sicurezza rispetto al decadimento del supporto fisico
Semplicità di utilizzo da parte del destinatario del mio omaggio.
Curiosando su internet ho quindi trovato una pagina nella quale Jameson Lopp, famoso cypherpunk ed esperto di sicurezza, metteva alla prova diversi “steel wallet”.
Metal Bitcoin Seed Storage Stress TestNel primo round di test, uno in particolare ha attirato la mia attenzione, dato che rappresentava la prima implementazione dell’idea di stampare il seed su delle rondelle: SAFU Ninja:
SAFU Ninja ReviewL’idea geniale è descritta nel blog:
Cheap and Easy DIY Metal Bitcoin Seed Storage – Safu Ninja L’innovazione è partire dall’usare pezzi che possono essere facilmente trovati in un comune ferramenta per stampare il seed.
Ovviamente la parte più critica del lavoro è stata lo stampaggio delle lettere sulle rondelle, un processo che a mano libera è risultato essere piuttosto lungo, faticoso e dal risultato non sempre perfetto.
Si sono quindi sviluppate delle dime adatte allo scopo, in modo da facilitare il corretto orientamento, separazione e stampa corretta delle lettere.
La dima più famosa è quella di
Cryptocloacks.
Con questa dima è possibile stampare accuratamente le lettere con un posizionamento corretto.
Su bitcointalk.org, è disponibile anche la dima di n0nce.
n0nce's Steel Washer Backup jig
Il vantaggio di questa dima è duplice: in primo luogo il progetto è modulare, è quindi adattabile a diverse grandezze sia per quanto riguarda le rondelle (il progetto nasce proprio per stampare su rondelle di dimensioni maggiori) che soprattutto per adattarsi alle diverse dimensioni dei punzoni.
In secondo luogo, n0nce ha creato un progetto perfezionato della dima Blockmit, irrobustendolo in diverse parti e curando il progetto con tolleranze minori, in modo da ridurre il gioco meccanico tra le parti.
Nel prosieguo della guida, userò la dima di n0nce, ma il funzionamento è esattamente il medesimo. In appendice analizzeremo dettagliatamente le differenze dei due progetti.
Come correttamente sottolineato da Federico Tenga, lo standard BIP 39 presenta dei “rischi di obsolescenza" e soprattutto dei rischi dovuti al percorso di derivazione usato. Per questo lui, nel suo test, ha usato il formato Wif.
Sebbene comprenda perfettamente, ed in qualche modo condivida le sue preoccupazioni, ho deciso, in questa prima iterazione del progetto, di usare invece il più consueto formato BIP39. Ritengo un migliore bilanciamento rischio/beneficio sulla effettiva possibilità di recupero da parte del destinatario del messaggio. Nulla vieta di incidere la chiave in quel formato sulle rondelle: si tratta di una stringa di 51 caratteri, quindi sarebbero necessarie solamente 7 rondelle.
Su internet il primo ad aver descritto l'intero processo è stato:
Securing a Bitcoin seed phrase in stainless-steel washers (abridged).Che dire, un vero figo. Un test con tanto di fiamma ossidrica. Ovviamente non aspiro a tanto e mi accontenterò di stampare le rondelle. Immagino che i test di resistenza al fuoco, alla corrosione ed alla pressione che potrei fare io, non si discostino significativamente dai test fatti da Econoalchemist e da Lopp.
[TOP]
Shopping ListCome detto, il vantaggio dell’impresa è quello di usare pezzi di facile reperibilità. Questo senz’altro aiuta ad avere un certo grado di security by obscurity, dato che nessuno saprà mai veramente cosa state facendo. Anzi, come suggerito direttamente nella guida di Safu, se avete qualcosa di adatto in casa, usate quello, non compratela neanche. Se avete qualcuno che ha dei punzoni, chiedeteli in prestito dicendo che dovete stampare delle chiavi, anziché comprarli (non menzionate mai bitcoin, ovviamente).
Prendete quindi questi link come dei suggerimenti.
RondelleSono sufficienti delle rondelle diametro esterno 24 mm, diametro interno 8 mm, acciaio inossidabile. Si trovano in qualsiasi ferramenta. Sono necessarie 24 rondelle per la chiave e 4 rondelle per i dispositivi di sicurezza supplementari. Munitevi di un buon numero di rondelle extra per fare fronte a prove ed agli inevitabili errori.
Mi raccomando che siano in acciaio INOX. Gli acciai più
resistenti a corrosione sono il 304 e 321Vite Una vite da 60 mm, con bullone, diametro 8 mm (i più astuti avranno notato che il diametro è uguale a quello delle rondelle!).
Anche in questo caso il materiale da scegliere è l'acciaio INOX.
MazzaServe una mazza. Non basta un martello, dato che il peso è necessario per imprimere sufficiente forza al punzone per stampare correttamente la rondella. Anche qui, nulla di troppo sofisticato.
Incudine Chi avrebbe mai potuto pensare che la vostra passione per bitcoin vi avrebbe portato a comprare una incudine!
Data la forza necessaria per stampare correttamente le rondelle, avrete bisogno di un supporto robusto e che non si rovini sotto le mazzate. Questa piccola incudine da 1 kg, la più piccola che ho trovato, fa al caso vostro.
Se volete risparmiare questi euro potete usare il lato liscio di un’altra mazza, o una base di appoggio metallica. L’importante ovviamente è che sia una superficie sufficientemente ampia da garantirvi una buona stabilità della dima e della forza applicata dalla mazza. Questione si preferenze. Devo dire che ho trovato questa mini incudine molto comoda ed adatta al lavoro.
Punzoni Per quanto riguarda il set di punzoni ho scelto il seguente set di punzoni da 6 mm:
Si tratta di un set di 36 caratteri, tutte le lettere, le cifre ed il carattere “&”. La qualità è buona, il dimensionamento dei punzoni è adeguato. Durante l’uso non ho riscontrato difetti, e la qualità di stampa non si è deteriorata durante il lavoro.
Attenzione che la misura alla quale faccio riferimento io è la dimensione fisica del punzone. In questo caso 6mm è la dimensione del punzone, mentre le lettere sono alte 3 mm.
Etichette di sicurezzaSi tratta di etichette adesive, che una volta attaccate, per essere levate, si rompono, lasciando una marcatura sulla superficie.
Per chiudere il contenitore avrete bisogno di etichette di sicurezza, quelle che lasciano una traccia una volta aperte. É fondamentale che siano numerate singolarmente, in modo da poter stampare all’interno delle rondelle il numero seriale.
Contenitore ermeticoVogliamo inserire il seed in un contenitore ermetico,sia per un fattore estetico, sia per poterne verificare l’integrità. Ho trovato questo, in un bell’arancione bitcoin. Tra l’altro il diametro interno è 25 mm, quindi perfettamente adatto ad ospitare le nostre rondelle. Nel caso decidiate di comprare uno differente assicuratevi che il diametro e la lunghezza dello spazio disponibile all'interno sia sufficiente ad ospitare il vostro seed.
A questo punto il setup è circa completo.
Qui di seguito una foto d’insieme di tutti i materiali necessari.
Altro materiale VarioUn paio di guanti
Pistola per colla a caldo e relativo stick. Per sigillare le rondelle.
Etichette circolari per sigillo di garanzia
La chiave privata in formato BIP39
Pennarello indelebile
This is an indicative recap of all possible costs (time excluded):
Devo dire che il totale è risultato più alto di quello preventivamente ipotizzato. é anche vero che la lista qui sopra parte da zero totale, e probabilmente qualche oggetto potrebbe essere già in vostro possesso e potrebbe essere riutilizzata.
[TOP]
Stampaggio, Verifica e Sigillatura del SeedIl procedimento è molto semplice. Inserite la rondella nella dima, avendo cura di coprire il fondo della dima con del nastro adesivo telato. Questo serve ad immobilizzare la rondella all’interno del supporto in modo che non si sosti dopo ogni martellata.
In questo modo non solo eviterete che le lettere siano stampate a distanze diverse, ma soprattutto, se non siete soddisfatti del modo nel quale la lettera si è stampata, potrete provare a stamparla, sovrapponendo completamente i segni. É questo infatti il vantaggio principale di usare una dima: è facile che una lettera “venga male” se si colpisce in maniera non ottimale il punzone. Il funzionamento è molto semplice, ed è ben rappresentato dalla gif seguente:
Le due tacche superiori servono ad identificare l’ordine corretto delle parole, mentre le 8 tacche inferiori servono a stampare le parole. Ricordiamoci che nello standard BIP39 le parole hanno lunghezza massima di 8 lettere e le prime 4 lettere sono sufficienti per identificarle univocamente. Non dovrete preoccuparvi di una perdita di dati nel caso una o due lettere non dovessero essere perfettamente leggibili.
Posizionate la dima sull’incudine ed assestate un colpo.
Procedete così per tutte le parole e tutte le lettere e tutte le parole.
Un video, anzi due video, valgono più di 100 parole:
| | |
| Postazione di lavoro all'aperto.Notate le rondelle errate in primo piano
|