Cifrado de clave múltiple PGP para grupos grandes y dinámicos que ven documentos estáticos

2

Supongamos que tengo N usuarios que deberían poder descifrar un subconjunto de documentos D 1 ... D k . N es muy grande y los usuarios a menudo se agregan y eliminan, por lo que no es práctico encriptar un documento dado Di usando todas sus claves públicas .

Como he leído, una solución común aquí es crear un grupo G con su propio par de claves, y su clave pública se usa para cifrar el documento.

Lo que no puedo entender es cómo dar a todos los usuarios que entran y salen de G la capacidad de usar la clave privada de G sin almacenarla en el servidor.

Pensé en cifrar la clave privada de G con la clave pública de todos sus miembros, pero ¿qué sucede cuando se une un nuevo usuario? Siento que necesitaría volver a cifrar la clave privada, esta vez con la clave pública del nuevo usuario mezclada, sin embargo, como el servidor ya no tengo acceso a la clave privada sin cifrar.

La solución más cercana que he visto es crear un nuevo par de claves para G y volver a cifrar Di , pero para una gran cantidad de documentos esto también se convierte en muy impracticable.

Debo agregar que no se debe permitir que el sistema descifre los documentos del usuario.

¿Hay algún patrón utilizando PGP (o cualquier otro estándar realmente) que pueda ayudarme aquí?

    
pregunta Dan 03.06.2017 - 00:40
fuente

1 respuesta

2

He proporcionado una respuesta a una pregunta similar, pero no idéntica, aquí: enlace

sobre cómo tratar esto en una lista de correo electrónico.

Su solución específica obviamente tendrá que ajustarse a su propio y exclusivo modelo de amenazas y requisitos comerciales, pero esencialmente se verá así:

Cifre D con un cifrado de clave simétrica de una sola vez (por ejemplo, algo como AES-256). Cifre esa clave con las claves públicas de PGP de cada miembro del grupo G. Agregue y elimine las claves de PGP a medida que la membresía cambie.

Al menos una clave (que pertenezca a un administrador que mantiene el grupo, o un demonio central de administración de identidades) tendrá que descifrar la clave de sesión (aunque no todo el documento) y volver a cifrarla con la nueva clave pública agregada.

Por supuesto, eliminar a las personas del grupo no ayudará si han copiado los datos no cifrados localmente, pero eso está fuera del alcance de su pregunta. Si desea "bloquearlos" asumiendo que aún no han accedido al texto sin formato, puede volver a cifrar D con una nueva clave de sesión y volver a cifrar eso solo en los miembros actuales restantes del grupo G. Pero nuevamente , eso no sirve de nada si la persona que abandona el grupo ya ha accedido al texto sin formato.

    
respondido por el JesseM 03.06.2017 - 00:55
fuente

Lea otras preguntas en las etiquetas