Cómo descifrar un archivo de vídeo mp4 encriptado por un software de terceros

Aquí hay muchas incógnitas. Todo depende de la naturaleza de la aplicación.

Yo he implementado el descifrado de vídeo en streaming en aplicaciones de escritorio puntuales, así que hazme caso, el cifrado/descifrado de vídeo es fácil de implementar, y no hay un método estándar, lo que significa que podría ser muy lento de descifrar.

Este es el peor caso posible:
- aplicación de escritorio (no un sitio web)
- proyecto único (método de encriptación indocumentado y desconocido)
- no tienes acceso al código fuente
- no tienes la cooperación del desarrollador

Si esto suena como tu situación, probablemente deberías renunciar a acceder al flujo de datos original, y utilizar un software de captura de pantalla y audio como Camtasia para piratear el vídeo. Perderá calidad, pero probablemente sea su mejor opción.

Aún así, puede ser posible acceder a los datos de vídeo originales, y podría valer la pena investigar. Necesitarás ser un hacker, o contratar a uno.

Un poco de historia: Si el descifrado del vídeo se hace correctamente, cada byte del archivo de vídeo está cifrado (no sólo las cabeceras). Esto significa que sin la clave, ninguna aplicación será capaz de escanear o reparar el archivo de vídeo, o extraer nada significativo en absoluto. A medida que el reproductor se ejecuta, transmite y descifra los datos un bloque a la vez en un búfer de vídeo (en la memoria o en un archivo temporal) que contiene sólo unos pocos segundos de vídeo, y esta caché es transitoria, se sobrescribe continuamente. De esta manera, el vídeo nunca se descifra de una vez, por lo que enganchar los datos de vídeo no es sencillo.

Si, por otro lado -y esto es una posibilidad remota- el desarrollador se escaquea y la aplicación descifra todo el archivo en un directorio temporal y luego lo introduce en el reproductor, usted podría encontrar ese archivo y simplemente copiarlo antes de que la aplicación lo elimine. Podrías localizar este archivo ejecutando la aplicación dentro de un sandbox. Como he dicho, esto requiere algo de suerte, y depende de la pereza o ineptitud del desarrollador. (Hm... tal vez no sea una posibilidad tan remota.)

Si por casualidad tienes acceso al código fuente, y buscas recuperar los datos de vídeo originales, podrías encontrar que se utilizó una biblioteca de cifrado estándar y extraer las claves; podrías encontrar que se empleó un método más creativo, pero tú o un amigo hacker podríais amañar vuestro propio descifrador con una cantidad razonable de esfuerzo.

Así que, muchas posibilidades, y ninguna garantía. Buena suerte.