A quanto ho capito, l'utente ha un segreto sensibile (la sua chiave PGP) nel suo browser. Il server mantiene una "modalità di ripristino" in cui una copia di tale segreto può essere ripristinata nel caso in cui il browser non sia disponibile (ad esempio l'utente passa a un altro tipo di browser o su un altro dispositivo), ma soggetto a una "chiave di ripristino" . SE ho offerto un servizio di questo tipo, quindi memorizzerei il S segreto crittografato (simmetricamente) con una chiave specifica per l'utente K e quella chiave K sarebbe la "chiave di ripristino", nota all'utente, ma non a me.
Una "chiave di ripristino" di 21 caratteri è sufficiente per codificare circa 126 bit chiave, utilizzando Base64 e il tasto 126 i bit sono abbastanza ampiamente per garantire la sicurezza della crittografia simmetrica.
Questo non dice come l'elaborazione è implementata: se la decrittografia viene eseguita sul server dell'hoster, o è fatta con codice JavaScript appena ottenuto dal server dell'hoster, allora l'hoster può, tecnicamente, saccheggiare le chiavi durante l'operazione di recupero ( il saccheggio sarà molto più discreto se la decifrazione avviene sul server dell'hoster). Se la crittografia simmetrica viene eseguita correttamente è anche una domanda aperta.
Pertanto, si può affermare che una chiave di ripristino di 21 caratteri non implica necessariamente una riduzione o una violazione del modello di sicurezza, purché sia utilizzata correttamente.