Puedo respetar su deseo de generar confianza diseñando un sistema en el que solo el cliente pueda descifrar y leer sus datos que están bajo su cuidado. Pero como usted dice, esto requiere que solo el usuario esté en posesión de la clave o contraseña. Desafortunadamente, los usuarios tienden a olvidar las contraseñas y perder claves, y se enojan cuando pierden sus datos (incluso si es su culpa). Entonces, ¿cómo protegerlos de sí mismos?
Creo que es instructivo ver cómo Dropbox hace las cosas, ya que son un servicio en la nube que existe específicamente para almacenar datos de clientes. Su sistema almacena los datos del cliente en bloques, que están protegidos por un cifrado fuerte (AES-256). Dropbox retiene las claves, pero ha diseñado múltiples capas de controles técnicos y de procedimiento a su alrededor para garantizar que solo el mínimo número mínimo de empleados internos pueda acceder a ellas (incluidas las auditorías de acceso y las aprobaciones de múltiples partes). También hay otras capas de controles destinados a proteger sus sistemas de ataques externos. Su sistema de controles está construido bajo las pautas ISO 27002 y desarrollado bajo un ISMS ISO 27001. El cumplimiento es auditado regularmente a un nivel detallado por organizaciones externas, y las pruebas de seguridad se realizan regularmente. Están haciendo las cosas de la mejor manera que yo podría hacer, y esto los ha hecho bastante confiables en el espacio de almacenamiento en la nube.
Un método que puede considerar es almacenar la clave de cifrado de datos del cliente localmente en una cookie segura (httpOnly). Sin embargo, esto solo estará disponible para http / https y no para JavaScript. Pero si el cliente borra la tienda de cookies de su navegador, están jodidos.
- ¿Qué tan peligroso es enviar un correo electrónico a una ventana emergente de virus falso?
- ¿Cuáles son algunas medidas preventivas básicas que la computadora promedio puede tomar para proteger la transmisión de datos confidenciales en sus computadoras?
- ¿Es una buena idea descargar la versión paga de antivirus torrent?
- ¿Qué tan fuerte debe ser la contraseña raíz de una caja de Linux?
- ¿Es cierto que todos los hacks exitosos de sistemas informáticos bien protegidos dependen de la manipulación de una persona para entrar?
Si no está preparado para hacer el tipo de cosas que Dropbox está haciendo (que ciertamente son bastante costosas), entonces tendrá que tomar una decisión clásica de compensación de seguridad y privacidad frente a usabilidad. Si decide que la seguridad y la privacidad son primordiales, asegúrese de que sus clientes entiendan completamente que no podrá ayudarlos si pierden su clave.
Un último pensamiento más: también podría considerar un esquema de custodia de claves donde la clave del cliente se almacena en un tercero de confianza (como quizás Dropbox).