Vorrei creare un portafoglio Bitcoin.
Parte del processo consiste nel memorizzare chiavi pubbliche e private in forma crittografata nel database del server.
Tutte le chiavi che sto memorizzando sono crittografate utilizzando il codice di accesso dell'utente
1) È sicuro conservare il codice d'accesso dell'utente in forma crittografata nel database del server. (Pensando che l'Utente possa dimenticare il suo passcode, considerando quindi un'opzione di recupero)
2) C'è qualche tipo di possibilità futura di mettermi nei guai se si verifica un qualche tipo di attacco o un'azione di qualche intruso / amministratore stesso (peggiore possibilità) - la chiave rivelata all'attaccante che guiderà l'accesso e aprirà tutte le chiavi pub / priv dal database di quell'utente specifico? In questo modo non posso dimenticare l'opzione pass-code all'utente.
Pertanto, considerando entrambe le opzioni, conservo il pass-code dell'utente o no?
Qual è la migliore pratica per implementare questa funzionalità di sicurezza nel portafoglio bitcoin?
Aggiorna
Questa domanda non è duplicata di Come password di hash sicure?
come la domanda rivela modi di fare l'hashing della password e qui quello che sto chiedendo è di trovare una best practice per decifrare codice di accesso e il relativo impatto sul sistema.
Ad es. Cosa succede se l'utente vuole recuperare la sua password dimenticata?