Buscar este blog

viernes, 4 de enero de 2013

Los PDF, sus contraseñas y marcas de agua

 
Alguna vez nos habrá llegado a nuestras manos un PDF con contraseña y con una marca de agua, y luego hemos intentado buscar algún tipo de software para eliminarlos.
Las marcas de agua es una técnica que sirve entre otras cosas para  insertar un grupo de bits con información sobre el autor o propietario intelectual.
Quitar contraseña del PDF
En los passwords pueden haber de apertura de fichero o de protección de contenido. Si buscáramos por internet algún software que nos ayudara a esto, muchos son de pago, y ya sabemos lo peligroso que es buscar programas con internet si no nos quedemos infectar con algun tipo de virus.
Vamos a mirar bien este archivo PDF empezando por sus propiedades:
En este caso solo está permitido el poder imprimir, pero no podremos en ningún caso modificar este PDF, lo podemos ver en la imagen.
Una manera de curiosa de poder quitar todos los permisos al PDF es imprimir el documento en una impresora en concreto. Es en este caso cuando hablamos del formato XPS.
El formato XPS, XML parser specification, es un formato creado por Microsoft y que viene de serie incluído desde Windows Vista. En teoría era un formato para competir con el formato PDF, se trata de un formato que sea fácil de compartir y de leer.
Como explicaba a partir de Windows Vista, viene incorporada una impresora XPS para generar este tipo de documentos. Es por eso que ahora con el PDF protegido por contraseña lo imprimimos en esta impresora y generamos el documento XPS.
 

Ahora tendremos el fichero en formato XPS, igualito que lo tendríamos en PDF. Lo que haremos ahora es volver a generar el PDF, en este caso lo haremos de la manera mas sencilla posible y es usar una impresora virtual. Existen multitud de ellas, en este caso yo he usado la propia que viene incluída con Adobe.
Lo que haremos ahora es abrir el docuemento XPS y volver a imprimirlo pero esta vez seleccionando la impresora Adobe. Miramos los permisos y....
  De este modo ya tenemos el documento PDF sin seguridad, para poder editarlo.
Marcas de agua
En el caso de la marca de agua ya es algo un poco mas complicado y es que tendremos que usar algún programa y luego un sencillo script para automatizar la tarea.
Lo primero que haremos es con Total Comander y su visor abrir el PDF
Si, no se entiende ni se puede ver nada, así que tendremos que limpiarlo un poquito para que podamos trabajar con él.
La manera más rápida es usar pdftk, lo bajamos de la web y hacemos:
Ejecutamos pdftk, como parámetro el pdf a limpiar, le indicamos el nombre del fichero del output y la opción uncompress.
Ahora abrimos el PDF con el visor de total comander de nuevo. El fichero se presentará mas limpio, y lo que haremos será buscar la imagen en RAW directamente en el fichero hasta que encontramos las imágenes.
En la última parte del visor es donde tenemos la imagen, en la parte de stream. Lo que tenemos que hacer ahora es eliminar el obj del PDF. De esta manera eliminaremos la imagen.
Si el documento tiene n páginas, está claro que no tenemos porque hacer esto de manera manual. 
Con un cutre script en python podemos solucionar esto, en este caso , yo además me he encontrado marcas de agua de diferente tamaño...
El script MUY mejorable podría ser:
Con esto obtendremos el PDF sin las marcas de agua.
Este artículo sirve para poder ver que con un poco de trabajo manual, no hace falta valerse de esos programas que te dicen que te quitan el candado del documento. Además se ha podido ver como quitar las marcas de agua con un script y mirando que tiene el documento.

No hay comentarios:

Publicar un comentario