• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

PDF und Passwortschutz

rethus

Advanced Hacker
Hi @ all,
ich nutze SUSE 9.1 und OpenOffice 1.0. Das erstellen von PDF-Dokumenten ist ja kein Problem, aber kennt jemand eine Möglichkeit, wie ich die Sicherheitseinstellungen von PDF-Dokumenten verändern kann?

Am Idealsten wäre es natürlich, wenn dies in einem GUI-Dialog vor dem exportieren erscheint.

Gruß
rethus
 
In das Thema lese ich mich auch gerade ein. OOo hat diese Funktion nicht. scribus kann das direkt im Export-Dialog, aber scribus ist keine Textverarbeitung und will auch keine sein.

Folgendes schaue ich mir gerade an:

http://www.accesspdf.com/pdftk/

Es sieht gut aus, aber Du musst es selbst kompilieren, RPMs habe ich nicht gefunden. Weiteres kann ich berichten, wenn ich soweit bin. ;)

Nachtrag: Einen Unsinn schreibe ich hier, natürlich gibt es RPMs. Bei der 9.3 ist es schon auf der Distribution, für frühere SuSE-Releases gibt es hier Links zu fertigen RPMs:

http://www.accesspdf.com/article.php/20041130153545577

Falls kein passendes RPM da ist, kann man es natürlich einfach mit dem RPM versuchen, das am nächsten dran ist, oder man nimmt das Source-RPM zum rebuilden.
 
OP
R

rethus

Advanced Hacker
werde da mal reinschauen.
Bin an weiteren Erfahrungen mit pdftk und anderen Programmen interessiert.
 
pdftk funktioniert super! Die Dokumentation auf der Webseite ist eigentlich ausreichend, trotzdem mal die Befehlszeile, um ein PDF so zu verschlüsseln, dass zum Öffnen kein Passwort benötigt wird, jedoch alles bis auf das Drucken verboten ist:
Code:
pdftk dokument.pdf output dokument-verschluesselt.pdf owner_pw besitzerpasswort allow printing
In dem Fall wäre "dokument.pdf" das unverschlüsselte Originaldokument, "dokument-verschluesselt.pdf" das resultierende verschlüsselte Dokument, "besitzerpasswort" das Passwort, das eingegeben werden muss, um verbotene Sachen mit dem Dokument zu machen und "allow printing" ist selbsterklärend.

Oder um ein PDF zu komprimieren:
Code:
pdftk dokument.pdf output dokument-komprimiert.pdf compress
Das ist ganz besonders nützlich, weil OpenOffice.org riesige PDFs produziert, die völlig unkomprimiert sind. Mit dieser Befehlszeile kann man Dokumente oft auf ein Fünftel verkleinern, ohne jeden Qualitätsverlust, weil es sich um eine verlustfreie Kompression wie bei Zip oder GZip handelt.

Auch sehr nützlich ist das Programm pdfopt, das zu GhostScript gehört und wahrscheinlich schon installiert ist. Die Befehlszeile lautet dann:
Code:
pdfopt dokument.pdf dokument-optimiert.pdf
Dadurch wird das PDF linearisiert. Das bedeutet, dass der Acrobat Reader im Internet die ersten Seiten des Dokuments schon anzeigen kann, selbst wenn das Dokument noch gar nicht komplett heruntergeladen wurde. Auch das macht OpenOffice.org nicht, aber die Dokumente lassen sich nachbearbeiten.

Mit pdftk kannst Du auch Dokumente zusammenfügen, aufteilen, Anhänge hinzufügen oder extrahieren und vieles mehr. Schau Dir die Dokumentation auf der Webseite an, die Befehlszeilensyntax ist ein wenig ungewohnt, weil es sehr viele Optionen sind.

Nachtrag:

Die Version 1.00 findest Du hier als RPM für SuSE 9.1:

http://volker.dnsalias.net/soft/rpm/suse9.1/

Wenn Du die neueste Version 1.12 haben willst, dann müsstest Du die entweder selber bauen oder versuchen, ob ein RPM für die 9.2 auf der 9.1 funktioniert. Wahrscheinlich müssen ein paar Pakete von SuSE nachinstalliert werden, insbesondere libgcj.
 
OP
R

rethus

Advanced Hacker
ich habe ein 461|9 Kb großes Dokument mit pdfopt komprimiert - sollte es zumindest - aber danach war es über 900 Kb groß....

pdftk war hat zwar komprimiert, aber nicht gerade viel, nach der Komprimierung war es 459,1 Kb groß....

Wie kann denn das sein ??? Scheint nicht soweit her zu sein mit Komprimierung !?!

Unter Hilfe steht:
[compress | uncompress]
These are only useful when you want to edit PDF
code in a text editor like vim or emacs. Remove
PDF page stream compression by applying the uncom-
press filter. Use the compress filter to restore
compression.

Ich denke dieses compress | uncompress heißt nur, das man ein lesbaren Format erhält um den Inhalt in einem Texteditor ändern zu können, oder?

Gibts eigentlich schon ne GUI für pdftk ?
 
Woher kam dieses Dokument? Wenn es aus einer anderen Quelle kam, dann war es wahrscheinlich schon komprimiert, vielleicht wurde es auch mit Acrobat erstellt. Meine letzte Hausarbeit war 146 Seiten groß, OOo hat daraus ein 5,7 MB großes PDF gemacht und hinterher waren es noch 1,2 MB.

pdfopt komprimiert Dokumente nicht, sondern linearisiert sie, also das genaue Gegenteil, die Dokumente werden für schnelle Darstellbarkeit und nicht geringe Größe komprimiert. Probier das Ganze am besten nochmal mit einem in OOo erstellten Dokument. Von einem GUI für diese Programme weiß ich nichts.
 
Es gibt doch ein GUI für pdftk:

http://www.paehl.com/pdf/?GUI_for_PDFTK

Screenshot:

http://www.paehl.com/pdf/?GUI_for_PDFTK:Screenshot_PDFTK_Linux

Ich probiere gerade damit herum, es scheint gut zu sein.
 
OP
R

rethus

Advanced Hacker
ich habe die GUI mal ausprobiert. Erleichtert den Arbeitsablauf schon um einiges.
Allerdings habe ich noch nicht rausgefunden, wie man das Passwort setzt. Da erzeugt er bei mir keine neue Datei.

Wenn ich compress oder eines der anderen Optionen wähle, klappt das wunderbar (die neue Datei hat dann das Postfix '_compress')

Wenn du da ne Lösung hast, wäre es toll, wenn du mir weiterhilfst.

Gruß
rehtus
 
OP
R

rethus

Advanced Hacker
:!: am 27.05.2005 um 15:18:!:
------------------------------------
:idea:
Ich habe den Fehler gefunden. Der Dateiname darf keine Leerzeichen enthalten, sonst kann das GUI-Programm das nicht verarbeiten.

Sicherlich ist das ein Bug, der noch behoben werden sollte... sonst wäre es umständlich, die Dateinamen vor der PDF-Erzeugung immer auf Leerzeichen zu prüfen.
 
Ich hab jetzt leider keine weiteren Tipps zu bieten, nur ein kleiner Hinweis noch zum Passwortschutz: Wenn Du die Dokumente so verschlüsselst, dass zum Öffnen ein Passwort gebraucht wird, dann ist das sehr sicher. Wenn Du sie so verschlüsselst, dass nur ein Besitzerpasswort gesetzt ist und Benutzer sie ohne Passwort öffnen können, dann sieht das ja ganz gut aus, weil man so scheinbar das Drucken und das Rauskopieren von Text verhindern kann.

So sieht es aus, ist es aber nicht. Diese PDF-Restriktions-Features basieren nur auf Respekt, es steckt kein technischer Biss dahinter. Das geht auch gar nicht, wenn ein Dokument ohne Passwort geöffnet werden kann, dann ist es zwangsläufig entschlüsselbar. Der Acrobat Reader respektiert diese Einstellungen natürlich und XPDF sowie XPDF-Abkömmlinge ebenfalls. Es gibt aber für XPDF und dessen Abkömmlinge Patches im Netz, die das umgehen. Ein solcher Patch könnte zum Beispiel so aussehen:

http://www-2.cs.cmu.edu/~dst/Adobe/Gallery/xpdf-generic-patch.html

Auch für Windows gibt es Tools, die dasselbe bewirken. Und GhostScript ist technisch gar nicht in der Lage, die Restriktionen zu beachten, weil es ein PostScript-Interpreter ist und die PDFs zu PostScript konvertiert, bevor sie angezeigt werden. Bei dieser Konvertierungen gehen die Restriktionen verloren, weil PostScript sie gar nicht unterstützt. Das nur als Hinweis, damit Du nicht denkst, dass diese Verschlüsselung sicher sei. Besser man weiß von Anfang an, dass sie es nicht ist.

PS, hier ist noch mal ein besserer Patch. Besser deshalb, weil man ihn gleich maschinenlesbar anwenden kann und nicht erst von Hand die Funktionen raussuchen muss. Außerdem hat sich an diesen vier Funktionen auch eine Kleinigkeit geändert, dieser Patch passt zur neuesten Version:

https://svn.uludag.org.tr/paketler/tags/Pardus-Çalışan-CD-1.0/app-text/xpdf/files/xpdf-3.00-nodrm.diff
 
OP
R

rethus

Advanced Hacker
damit ist man schon mal ne ganze Ecke informierter.
Allerdings hatte ich so meine Proble die Einstellung, dass das PDF nicht druckbar sein soll hinzubekommen.

Der AcrobatReader hat immer alles gedruckt...

Mir geht es lediglich darum, dass wenn ich Geschäftspapiere (WhitePapers, Angebote etc.) verschicke, das da nicht ohne Probleme drin verändert und weiterverschikt werden kann.

Danke auf jeden Fall schon mal für deine Mühe.
 
rethus schrieb:
Allerdings hatte ich so meine Proble die Einstellung, dass das PDF nicht druckbar sein soll hinzubekommen.

Der AcrobatReader hat immer alles gedruckt...
Das hier
Code:
pdftk <Dokument>.pdf output <Dokument>-verschluesselt.pdf owner_pw <Besitzerpasswort>
sperrt für Leute, die das Besitzerpasswort nicht kennen, alle Funktionen, die gesperrt werden können: Das Dokument lässt sich also ohne Passwort öffnen, es kann aber nicht ausgedruckt und auch nichts rauskopiert werden. Leute, die die Vollversion von Acrobat besitzen, können das Dokument nicht ändern und keine Seiten zusammenstellen.
 
So, die Frage war schon eine Weile her, trotzdem:

http://jdisoftware.co.uk/pages/epdf-home.php

Das ist ein Add-On für OpenOffice.org, mit dem man die Verschlüsselungsfunktion direkt aus der OpenOffice.org-Oberfläche erreichen kann.

Das Richtige Paket für Linux ist die "Universal Edition":

http://jdisoftware.co.uk/pages/epdf-download.php

Lasst euch durch die Bezeichnungen "Professional Edition" und "order" nicht verwirren, alle Pakete sind GPL und kostenlos.

Voraussetzung für die Benutzung ist ein installiertes Ghostscript und wahlweise entweder ein installiertes pdftk oder eine installierte Java-Laufzeitumgebung.
 
Oben