Beta, como Goooogle
26 ene
¿Cómo podemos distinguir un tipo de fichero de otro? Por ejemplo, un mp3 de un archivo de vídeo. Sí, ya sé, mirando la extensión, pero qué ocurre si borramos la extensión del nombre de archivo, ¿Cómo podemos saberlo entonces?
Sí, podemos abrir el archivo en un reproductor y ver qué pasa, pero, ¿Y si no tenemos ni idea de qué puede ser el archivo? no podemos ir probando con todos los programas que tengamos a ver si el fichero se abre.
Para solucionar esto existen los Magic Bytes (Bytes Mágicos), que son nada más y nada menos que una serie de bytes que nos permiten identificar inequívocamente un archivo. Por ejemplo un mp3 contendrá las cabeceras que todo fichero mp3 debe tener, lo mismo sucederá con un archivo mpeg o un fichero ejecutable.
Una utilidad muy interesante en linux es el comando “file” que nos permite identificar ficheros sin hacer caso a la extensión. Por ejemplo:
$ file unarchivo.zip
unarchivo.zip: Zip archive data, at least v2.0 to extract
Le cambiamos el nombre y sigue saliendo lo mismo:
$ mv unarchivo.zip unarchivo
$ file unarchivo
unarchivo: Zip archive data, at least v2.0 to extract
Si probamos con un archivo avi incluso nos dirá las propiedades de este:
$ file video.avi
video.avi: RIFF (little-endian) data, AVI, 640 x 480, 23.98 fps, video: XviD, audio: MPEG-1 Layer 3 (stereo, 48000 Hz)
¡Y hasta identifica ficheros de código!
$ file otroarchivo
otroarchivo: PHP script text
16 ene
Es algo obvio, trivial, para mi y para cualquiera, si un sonido se puede reproducir, también se podrá copiar, si un vídeo se puede reproducir, también se podrá copiar, si un disco con un determinado software se puede leer, también se podrá copiar.
¿Por qué siguen gastando ingentes cantidades de dinero para intentar hacer algo que es imposible, por pura lógica?
Esto viene de las últimas noticias que estoy leyendo, sobre la copia de las primeras películas HD-DVD, la copia de los juegos de Wii y Game Cube y por supuesto, también los de Sony (PS3). Lo mejor de todo es cómo lo han hecho, con un mínimo esfuerzo, almenos en los casos de los juegos de Sony y en los HD-DVD, que son los que más me he informado.
Resulta que puedes copiar un juego de PS3 simplemente instalando Linux y utilizando el conocido comando dd de forma habitual, lo cual es de risa. Millones invertidos en buscar métodos para que los discos no puedan ser copiados para que luego, con un simple comando, que cualquier usuario medio de Linux conoce, se puedan copiar.
Con el HD-DVD pasa algo parecido, una gran cantidad de recursos se ha invertido para desarrollar el AACS para que luego, un usuario indignado por no poder reproducir correctamente su película en su monitor, al no disponer de HDCP (sí, quieren proteger hasta las conexiones), se ponga a investigar y logre copiar la película directamente en su disco duro utilizando un pequeño programa en Java (y algo de maña en buscar las claves que decodifica un reproductor oficial, en memoria). Además, todo el trabajo de conseguir la clave de la película se lo hace un programa reproductor de HD-DVD. Lo cual también es bastante obvio, en algún punto, el programa necesitará trabajar con la clave de decodificación y la guardará en memoria, la cual podrá ser investigada con un debugger. Por lo tanto, es inútil tanta encriptación, en algún momento, algún aparato o software, tendrá que decodificar la película y ese aparato o software será manipulable.
Al fin y al cabo, lo único que se consigue poniendo todas estas trabas es que el usuario final, el que compra la película, acabe teniendo un producto de menor calidad que el que puede conseguir bajándose de internet, libre de sistemas anti copia, que podrá reproducir dónde más le guste y convertirlo al formato que prefiera, para poder ver su peli favorita incluso en su reproductor de vídeo portátil o hasta en el móvil.