Intento comprender dónde se almacenan las claves privadas en el sistema de Persona y cómo están protegidas.
¿Alguien puede dar detalles sobre dónde se crea, almacena y qué se transfiere el material criptográfico?
Intento comprender dónde se almacenan las claves privadas en el sistema de Persona y cómo están protegidas.
¿Alguien puede dar detalles sobre dónde se crea, almacena y qué se transfiere el material criptográfico?
Tom tiene razón en que una vez que los navegadores tengan soporte nativo para Persona, podrán almacenar claves en su almacén de claves.
Actualmente, sin embargo, los navegadores que usan el código de JavaScript usan localStorage para almacenar las claves de manera que solo el shim pueda leerlas y escribirlas: enlace
Las propias claves se crean en el lado del cliente en el navegador pero haciendo uso de la entropía proveniente del servidor login.persona.org
.
Un vistazo a la especificación muestra que en la implementación del BrowserID, privado el manejo de claves se delega a una API de Javascript proporcionada por el navegador llamada navigator.id
. Por lo tanto, depende del navegador generar pares de claves y almacenarlos "lo mejor que pueda". La documentación es escasa, pero parece plausible que los navegadores utilicen las mismas instalaciones que utilizan para los certificados X.509, es decir, libnss para Firefox y los proveedores criptográficos del sistema operativo Internet Explorer y Chrome. Las claves privadas nunca se escapan de las garras del navegador (solo las claves públicas viajarán a otras máquinas).
Lea otras preguntas en las etiquetas authentication web-browser persona