Cómo cifrar un archivo de modo que se deben poseer otros archivos para descifrarlo

Nota: No tengo entrenamiento o calificación en el campo de la criptografía, y solo sé lo que hago al leer (mucho). No piense por un momento que todo lo que sugiero es criptográficamente seguro.

Puede XOR algunos archivos juntos, de modo que su archivo final debe ser XORed nuevamente para descifrar (esto es remotamente seguro, es básicamente una almohadilla única pero sin la aleatoriedad esencial).

Podrías AES repetidamente tu archivo con el bloque sucesivo de 256 biy de tus archivos clave.

Como mencionó Gregory Delrue, puede hacer hash de cada archivo y usarlo como clave, pero cualquiera que descubra el método puede calcular el hash una vez y usarlo cuando lo desee. Seguridad a través de la oscuridad, básicamente, que esencialmente no es seguridad (alguien dijo eso primero, muy posible Bruce Schneier).

DRM realmente no funciona. CSS en DVD está roto, lo mismo ocurre con eso en Blu-ray. Simplemente hace que la vida de todos los que usan su producto sea más difícil, y de todos modos no detiene la piratería.

Estás hablando del cifrado RSA o de cualquier otra forma de cifrado no simétrico. Los archivos se cifran con la clave pública de los usuarios, por lo que solo él, en posesión de la clave privada, puede descifrarlos y leerlos.

Echa un vistazo al paquete gpg para poder hacer eso.

sudo apt-get install gpg

GnuPG – CÓMO

Y actual lo que quieres:

Cifrar y descifrar documentos

Puede ocultar esa clave secreta (la clave de desbloqueo) dentro de esos archivos. Solo piensa en steghide …

sudo apt-get install steghide

Steghide

Por supuesto, puede simplemente canalizar todos esos archivos y hacer una suma de verificación SHA256 sobre ellos. Luego, utilícelo como contraseña para cifrarlo con AES o algo así. Pero eso no es tan seguro.

Puede utilizar el hash criptográfico de los archivos necesarios como clave para el cifrado de los otros archivos.

Por supuesto, hay un agujero de seguridad: si el usuario comprende esto, puede simplemente escribir el resumen de hash en alguna parte y ya no necesitará los archivos en el futuro. Para evitar esto, puede volver a verificar periódicamente su presencia o agregar sal (es) al hash de antemano.

Dicho esto, lo que quieres suena muy parecido a alguna forma de DRM y todos eventualmente se romperán (lo que probablemente sea lo mejor).