Sto cercando di capire dove sono memorizzate le chiavi private nel sistema Persona e come sono protette.
Qualcuno può approfondire dove viene creato, archiviato e che cosa viene trasferito il materiale crittografico?
Sto cercando di capire dove sono memorizzate le chiavi private nel sistema Persona e come sono protette.
Qualcuno può approfondire dove viene creato, archiviato e che cosa viene trasferito il materiale crittografico?
Tom ha ragione quando i browser hanno il supporto nativo per Persona, saranno in grado di memorizzare le chiavi nel loro keystore.
Attualmente, tuttavia, i browser che utilizzano lo shim JavaScript utilizzano localStorage per archiviare le chiavi in modo che solo lo shim sia in grado di leggerle e scriverle: link
Le chiavi stesse sono create lato client nel browser ma utilizzano l'entropia proveniente dal server login.persona.org
.
Uno sguardo alla specifica mostra che nell'implementazione BrowserID, privata la gestione delle chiavi è delegata a un'API JavaScript fornita dal browser chiamata navigator.id
. Quindi spetta al browser generare coppie di chiavi e archiviarle "nel miglior modo possibile". La documentazione è scarsa, ma sembra plausibile che i browser utilizzino le stesse funzionalità di quello che usano per i certificati X.509, ad esempio libnss per Firefox e i provider di crittografia del sistema operativo Internet Explorer e Chrome. Le chiavi private non sfuggono mai alle frizioni del browser (solo le chiavi pubbliche viaggeranno su altre macchine).
Leggi altre domande sui tag authentication web-browser persona