Il nostro sistema è uno storage per brevi segreti di breve durata (meno di 10 caratteri) generati da terze parti per conto dei nostri utenti. I segreti sono crittografati dalle terze parti con le chiavi pubbliche degli utenti.
Il nostro sistema memorizza sia i segreti crittografati sia le chiavi private e pubbliche protette da passphrase degli utenti finché gli utenti non hanno bisogno dei segreti.
Quando un utente ha bisogno del suo segreto, inviamo loro il segreto crittografato insieme alla sua chiave privata protetta da passphrase. Solo l'utente conosce la passphrase e quindi solo l'utente può decifrare la chiave privata e quindi usarla per decodificare il segreto. Nota che la decrittografia viene eseguita lato client, quindi il nostro sistema non vede mai la passphrase o il segreto decrittografato.
La domanda è: quanto è sicuro, dato che memorizziamo insieme sia i segreti crittografati sia le chiavi private protette da password e pubbliche. Vogliamo che il nostro sistema sia relativamente a prova di hacker (cioè dovrebbe impiegare più di un giorno per decifrare i segreti con la forza bruta).