Configuración actual
Tenemos un servicio que permite a los usuarios cargar documentos a través de un sitio web y almacenar los documentos cargados encriptados en el disco.
Los documentos en el disco se cifran con una clave por usuario, que se genera aleatoriamente al crear la cuenta. Esta clave de documento se almacena en un campo de base de datos que se cifra con la contraseña del usuario como clave. Cuando el usuario (propietario) desea descargar un documento, debe proporcionar su contraseña, que se utiliza para descifrar la clave del documento que, a su vez, se usa para descifrar el documento.
Hemos elegido este patrón para negar la necesidad de volver a cifrar todos los documentos cifrados cuando el usuario elige cambiar su contraseña: solo necesitamos volver a cifrar la clave del documento.
Esta configuración funciona bien (y creemos que es un patrón seguro 1 ).
Cambios requeridos
Desafortunadamente, tenemos dos nuevos requisitos para implementar.
- Por ley, estamos obligados a poder descifrar cualquier documento que tengamos en el disco, a solicitud del gobierno;
- Alguien ha decidido que el propietario de un documento debería poder compartir el documento cargado con otros usuarios.
No sé cómo implementar esos requisitos mientras mantengo los documentos almacenados con cifrado por usuario.
Entonces, mi pregunta es:
¿Existe un patrón conocido que permita el cifrado de documentos para que una o más partes los puedan descifrar, donde las partes en cuestión se determinarán al cifrar el documento?
Actualizar :
Algunos antecedentes sobre la ley mencionada anteriormente:
De hecho, la ley no establece que estamos obligados a construir una puerta trasera. La ley tipifica como delito el hecho de no entregar la clave a cualquier dato cifrado que tenga 2 si la policía solicita la clave 3 . El resultado de esto es que nosotros, los que alojamos los datos, debemos tener una puerta trasera o enfrentar un proceso judicial en caso de que no podamos descifrar los datos cuando se nos solicite. Sin embargo, aparte de en otros países, tenemos la libertad de comunicar el hecho de que recibimos una orden para descifrar documentos. Lamentablemente, estas leyes no son infrecuentes .
Informar a nuestros clientes y al público:
Como indiqué en un comentario antes, tengo la intención de esforzarme al máximo para asegurarme de que esta política se comunique claramente a nuestros clientes. Las declaraciones de privacidad deben cambiarse y los TOS deben actualizarse.
La conciencia pública por un lado y asegurarme de que las 'malas leyes cuestan dinero' por el otro, son el mejor método que tengo disponible para protestar contra tales leyes.
Sin embargo, al mismo tiempo soy un poco escéptico sobre el impacto de dicha declaración. La mayoría de las personas simplemente no les importa. Al mismo tiempo, muchas personas usan su correo electrónico y bandeja de entrada para almacenar y compartir documentos. Por lo tanto, desde esa perspectiva, nuestro servicio es (aún) una gran mejora (y es la razón por la que algunos de nuestros clientes requieren que sus empleados lo utilicen).
1. Si hay un agujero deslumbrante en este método, no dude en comentarlo.
2. Los abogados han pensado que 'los datos que usted tiene' están destinados a incluir todos los datos almacenados en los dispositivos físicos que posee (no soy un abogado, por lo que esta es mi traducción de lo que concluyeron).
3. Sí, no una oficina de seguridad elegante, pero la policía. Hay algunas medidas de seguridad cuando pueden solicitar una contraseña, pero eso no cambia las implicaciones de esta ley. La gran pregunta es qué sucede cuando realmente olvidó la contraseña de algunos datos. El ministro ha indicado que es responsabilidad del propietario de dichos datos encriptados eliminarlos luego. Pero ningún caso de este tipo ha sido juzgado (a mi entender) en la corte.