La forma en que lo implementaría es probablemente similar a la forma en que lo hacen muchos proveedores de almacenamiento con capacidad de encriptación.
Se genera una clave aleatoria simétrica y se utiliza para cifrar los datos. Luego se cifran 2 copias de la clave simétrica, una con una clave pública asimétrica del usuario y otra con la clave pública asimétrica maestra. Solo las claves privadas pueden descifrar la clave de descifrado del archivo y, por lo tanto, los datos.
Es posible que, por razones legales, el proveedor de almacenamiento cifre una tercera copia con su propia clave, de modo que los datos puedan ser descifrados si se les entrega una orden. Si se requiere ese tipo de sistema, usaría una clave pública de justificación de cuenta, desde una clave privada que se generó a partir de una semilla. La clave privada ya no se almacena, y se requiere una gran cantidad de potencia de cómputo para regenerar la clave privada desde la semilla mediante un proceso determinista (por ejemplo, 100 mil millones de iteraciones de hash y 4 gigas de ram). La semilla se almacenará de forma segura de la misma manera que las claves criptográficas.
BoxCryptor, sin embargo, es diferente de un proveedor de almacenamiento en la nube, son un proveedor de criptografía en la nube. La forma en que lo hacen significa que usted genera la clave simétrica y que solo administran las claves públicas para que otros usuarios puedan acceder al archivo. Eso significa que nunca ven claves privadas o claves de archivos, y no tienen acceso a los datos cifrados. Luego, los archivos encriptados se pasan al proveedor de almacenamiento real, que en general habría visto el texto sin formato, tendría acceso a la clave del archivo y podría proporcionar descifrado a las autoridades policiales.
Los proveedores como BoxCryptor también pueden almacenar una copia encriptada de su clave privada (creo que sí), que se descarga al cliente y se descifra con una contraseña. BoxCryptor también puede cifrar claves de archivo con claves adicionales, como claves de grupo y las de usuarios adicionales, para que también puedan acceder al archivo.