¿Cómo cifrar un mensaje para múltiples destinatarios?

¿Cuáles son los fundamentos para lograr el cifrado de datos con exactamente dos claves (que podrían estar basadas en contraseña), pero que solo necesitan una (cualquiera de las dos claves) para descifrar los datos?

Por ejemplo, los datos se cifran con la contraseña de un usuario y la contraseña de su empresa, y luego él o su empresa pueden descifrar los datos. Ninguno de ellos conoce la otra contraseña. Solo se almacena una copia de los datos cifrados.

No me refiero a la clave pública / privada. Probablemente a través de criptografía de clave simétrica y tal vez implique algo como XOR unir las claves para usarlas para el cifrado.

Actualización: también me gustaría encontrar una solución que no implique almacenar las claves en absoluto.

Respuestas a la pregunta(5)

Su respuesta a la pregunta