Un modo per proteggere lo spazio di archiviazione online
Una cosa che potrebbe essere di grande aiuto con la protezione di qualsiasi file di dati di interesse dall'accesso è di utilizzare il Controllo di accesso obbligatorio (SELinux in questo esempio) e una seconda macchina, possibilmente con aria compressa. Avrai bisogno di un piccolo programma in esecuzione sul wallet machine (lo chiamerò banker
per questo post) il cui compito è generare sfide e rilasciare monete solo a richieste correttamente autenticate.
Ci affidiamo a SELinux per fare quanto segue: impedire la lettura, la scrittura e il permesso di modificare l'accesso ai file bit di bitcoin e di autenticazione in ogni applicazione, tranne che per banker
e qualunque cosa generi. Ci affidiamo anche a SELinux per evitare che venga escluso dalla modalità di enforcing senza il riavvio del sistema.
Il banker
autentica qualsiasi prelievo stampando un valore seme casuale e l'output HMAC corrispondente generato combinando il valore seme con il seme di autenticazione. Questo seme di autenticazione viene conservato da qualche altra parte, forse sul tuo telefono. Puoi utilizzare qualsiasi metodo desideri per lo scambio della richiesta firmata come e-mail, scp, interfaccia web, o scattare una foto di un codice QR e eseguirlo attraverso la tua app sul telefono, quindi scattare una foto di quel codice con la fotocamera del tuo computer. Impazzire! Puoi anche fare uso di un contatore incrementale che non consente mai una richiesta uguale o inferiore di avere successo al fine di rendere autenticazioni unidirezionali, o se ti senti molto stravagante, puoi usare GnuPG e un OpenPGP smartcard per l'autenticazione con un pinpad.
Scade qualsiasi richiesta dopo un certo periodo di tempo: da cinque minuti a un'ora a seconda di quanto velocemente ti senti. Scade tutte le richieste che funzionano immediatamente in modo che non possano essere riprodotte. Non che lo raccomando (la difesa in profondità è sempre saggia), ma in teoria questo dovrebbe consentire a qualcuno di accedere al tuo computer come root e comunque non riuscire a rubare le tue monete.
La sicurezza della tua memoria offline
Mi sono reso conto che in realtà non ho risposto alla tua domanda iniziale, quindi ecco il seguito: stai cercando di difenderti dal perdere i tuoi soldi in due modi:
- Qualcuno ruba il tuo portafoglio
- Hai perso il tuo portafoglio
In entrambi i casi di archiviazione offline, sei protetto se non sei stato compromesso prima che i dati siano stati stampati e cancellati dalla memoria del computer. Questa seconda parte è un grande avvertimento: se si stampano i file possono essere lasciati come file temporanei da qualche parte sul disco.
Entrambi i sistemi sono approssimativamente uguali per il rischio di perdita. La tua password dovrebbe essere molto lunga e complessa. Se si dimentica o si perde la carta in cui è scritta la password, il portafoglio si perde, in sostanza per un incendio. Se si perde la carta su cui sono stampati i singoli valori stampati, accade lo stesso.