2 votos

Vídeo protegido con contraseña

Quiero proteger mi vídeo de instrucciones con una contraseña. Hay un caso de uso.

Cuando un usuario quiere reproducir un archivo cifrado ( actualización: archivo ubicado en el dispositivo Android del usuario ), el archivo encriptado abrirá un cuadro de diálogo para solicitar al usuario que introduzca una contraseña de reproducción. Este cuadro de diálogo mostrará el ID de la máquina del dispositivo Android del usuario. El usuario puede enviarle su propio ID de máquina y usted puede crear una contraseña de reproducción basada en el ID de máquina del usuario. Después, el usuario puede utilizar esta contraseña de reproducción para reproducir su archivo en su dispositivo. Dado que la contraseña de reproducción se crea a partir del ID del equipo del usuario, éste no podrá compartirla con otros usuarios. Dado que la contraseña de reproducción está vinculada al dispositivo del usuario, éste no podrá redistribuir sus archivos.

¿Existe algún software que me ayude a conseguir este propósito?


Parece que he asegurado la transmisión de vídeo desde el sitio web bastante bien, pero muchos de los miembros quieren archivos de vídeo en sus dispositivos porque no quieren tener que lidiar con el wi-fi para reproducir el vídeo mientras dirigen la clase. ( actualización: no soy bueno en inglés. Me refería a que el archivo debe estar ubicado en el dispositivo Android del usuario. No hay streaming )


No hay duda de que alguien puede grabar el vídeo desde la pantalla, pero quiero frenar la proliferación de mi vídeo.

0 votos

El vídeo está alojado en un sitio web, ¿verdad? ¿Hiciste este sitio web? Esto no parece un problema de Android, sino más bien un problema de desarrollo con respecto a la seguridad.

0 votos

En realidad, necesito el vídeo en los dispositivos Android de los usuarios, porque éstos no quieren tener que lidiar con el wi-fi para reproducir el vídeo mientras imparten la clase.

2 votos

Parece que quiere implementar su propia solución DRM (gestión de derechos/restricciones digitales). Parece que esto está muy por encima del propósito de este sitio, ya que es realmente independiente de Android. Buena suerte tratando de reinventar la rueda pinchada sin embargo :)

2voto

CharlesB Puntos 27070

¿Qué tal una aplicación como Android Video Protector ? Se anuncia como si fuera exactamente lo que buscas:

¿Cómo proteger los archivos de vídeo en la plataforma Android?

La solución Android Video Protector contiene dos programas, que son Android Video Protector y PPVM Video Player. Android Video Protector es un software de cifrado de vídeo que se ejecuta en el sistema operativo Microsoft Windows, utiliza una contraseña para cifrar el vídeo que se espera proteger, y soporta 4 tipos de modos de cifrado:

  1. Vinculación de dispositivos, un dispositivo, una contraseña
  2. No vinculación de dispositivos, todos los dispositivos, un ID de dispositivo, una contraseña
  3. No vinculación con el dispositivo, todos los dispositivos, una contraseña
  4. Cifrar sólo el vídeo

¿Cómo reproducir el vídeo encriptado en la plataforma Android?

Debido a que el vídeo está encriptado, el reproductor de vídeo general no puede reproducir este vídeo, PPVM Video Player es el reproductor que funciona en es el reproductor que funciona en la plataforma Android y soporta la reproducción del vídeo encriptado. primero comprueba la contraseña de reproducción, que puede ser generada usando Android Video Protector, después de completar la autenticación de la contraseña, se reproducirá el vídeo encriptado.

No tengo ni idea de si estos programas son fiables o si funcionan. La aplicación para Android es una descarga directa desde su sitio web (no desde la tienda Google Play) - proceda con precaución bajo su propio riesgo.

1voto

Beska Puntos 6717

Encriptar un video, esto suena fascinante. Me gustaría compartir un enfoque que creo que se puede utilizar aquí:

  1. Obtenga la matriz de bytes del vídeo en su proyecto de prueba.
  2. Copie este (byte-array) en su proyecto de destino como una variable
  3. Ahora su proyecto de destino tiene el vídeo, en forma de matriz de bytes.
  4. Para añadir la contraseña, convierta la cadena de contraseñas en una matriz de bytes.
  5. Ahora, para guardar la contraseña en el vídeo, añada la matriz de bytes del paso 4 a la parte superior de la matriz de bytes del paso 3.
  6. ¡Ahora tu vídeo está encriptado! Cualquier otro reproductor que intente reproducir este archivo arrojará un error. Sin embargo, no nos preocupa lo del archivo. En realidad no tenemos ningún archivo de vídeo, sólo tenemos una variable estática que fue creada en el paso 3 y modificada en el paso 5
  7. Para reproducir esta variable byte-array, primero tendremos que extraer la contraseña de la misma.
  8. Siempre utilizamos un buffer para leer este tipo de archivos. Un buffer es básicamente un array de bytes de cualquier tamaño. Dejemos que queramos elegir un buffer[128]. Esto hace que nuestro paso-5 varible parezca un conjunto de matrices de bytes de 128 tamaños, como:[0100101011010....],[01010100010110..],[0010101010110....].....
  9. Por lo tanto, el primer búfer creado durante la lectura de la variable del paso 5. Contiene la contraseña, pero ¿dónde? es algo así como: [XXXXXX]+[010101011.....128] donde [XXXXXX] es la contraseña que establecimos en el paso 5 y la otra parte es la parte del vídeo. Ahora tenemos que filtrar nuestra contraseña de este buffer, ¡no es una tarea fácil!
  10. Así que vamos a optar por otro enfoque. Haremos que nuestra contraseña (Paso 5) tome el tamaño completo del buffer (aquí 128). Lo que significa que las primeras 128 posiciones de la variable del paso 5 se utilizarán por completo para reconocer la contraseña. Así que ahora el primer buffer se verá como:[XXXXXXXXXXX....XXX] (sólo contraseña)
  11. Para ello, el paso 5 convertirá la cadena de contraseñas en una matriz de bytes y, si es menor que el tamaño del búfer (128 en este caso), le añadirá valores ficticios para que su tamaño sea igual a 128.
  12. En el paso 11 hemos creado una contraseña encriptada.
  13. Así que finalmente, cuando el vídeo se reproduzca, obtendremos la variable del paso 5 que fue modificada según el paso 11.
  14. Pide la contraseña del usuario.
  15. Convierte esta contraseña en un array de bytes y añádele valores para que tenga un tamaño de 128 (similar a lo que hicimos en el paso 11)
  16. Ahora compararemos la primera parte del tamaño del buffer(128) de la variable paso-13, la compararemos con el array input-Password-byte del paso-15.
  17. Si no coinciden, muestra un cuadro de diálogo con el mensaje correspondiente.
  18. O si coincide, eliminar la primera parte del tamaño del buffer. El resto contiene el vídeo que se va a reproducir.

¡Vaya! ¡Salud!

0 votos

Creo que este algoritmo es genial, por favor, dame tu opinión. Cualquiera...

0 votos

Deberías haber proporcionado algún tipo de pseudocódigo....

0voto

tekina Puntos 1

Puedes crear un archivo zip encriptado de ese vídeo y configurarlo para que lo descomprima y reproduzca automáticamente al introducir la contraseña correcta. Zip4j es una biblioteca Java de código abierto que soporta el cifrado/descifrado de archivos zip, ya que las bibliotecas Java de Android por defecto no lo tienen.

Esto es más bien una solución porque no cifrará directamente el vídeo, sino que creará una carpeta cifrada de la que se podrá extraer el vídeo.

0voto

breezy Puntos 11

Se pueden grabar vídeos protegidos por contraseña en Android con Grabador de vídeo seguro

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X