PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : pdf verschlüsseln bzw. signieren



sam600
05.12.07, 15:01
hallo

wie kann ich unter linux pdf dateien signieren bzw. verschlusseln.

laut dem internet ist das X.509 format ( .p12 ) behoerdlich anerkannt.

hat mir jemand einen tip

danke

`Ghost
05.12.07, 16:33
hi

mit dem Programm pdftk (siehe Suche) kannst du einem PDF-Dokument ein Passwort zuweisen, vielleicht ist es das, was du willst ?

mfg

sam600
06.12.07, 08:24
mit dem Programm pdftk (siehe Suche) kannst du einem PDF-Dokument ein Passwort zuweisen, vielleicht ist es das, was du willst ?


danke,aber ich meine was anderes
- leider fehlt mir der fachbegriff, deshalb versuche ich es noch zu beschreiben!

ich will pdf generieren, die eindeutig von mir stammen,
d.h. niemand kann die pdf austauschen, da diese durch einen schluessel gesichert ist.
( keine passwort )

der wo die pdf bekommt, kann sich sicher sein, das die pdf von mir ist.
- oeffentlicher schluessel,...

wie geht das mit linux? - danke fuer jedes stichwort!

danke

Flummi
06.12.07, 09:09
Ich würde mal GPG[1] vorschlagen. Das ist auch nicht auf PDF beschränkt, sondern damit kann man alles signieren, wenn mal will.

[1] http://www.gnupg.org/

sam600
06.12.07, 09:21
Ich würde mal GPG[1] vorschlagen.

danke, soweit ist es mit klar
-> sollte .p12 format sein
-> wie signiere ich die pdf dann?

Newbie314
06.12.07, 09:29
.. google doch mal nach pdf-Editoren die "signieren" beherrschen... da gibt es auch shareware etc...

/dev/null_Peter
06.12.07, 10:27
laut dem internet ist das X.509 format ( .p12 ) behoerdlich anerkannt.

Hi sam600,

"Behördlich anerkannt" ist natürlich Quatsch, aber du hast dich schon richtig informiert. Das was du meinst, ist eine "qualifizierte elektronische Signatur" gemäß Signaturgesetz (SigG). Diese und nur diese Signatur ist gemäß SigG "der Unterschrift einer natürlichen Person weitestgehend gleichgestellt", wird also u.a. im behördlichen Schriftverkehr einem Brief gleichgestellt (wenn es denn die Behörde überhaupt kann ... .).

Was benötigst du dazu?

1.
Ein Zertifikat auf einer "Sicheren Signaturerstellungseinheit" (= Chipkarte), welches von einem für die Erstellung derartiger Zertifikate von der Bundesnetzagentur akkreditierten Trustcenter herausgegeben wurde (oder einem TC, welches zumindest per Selbsterklärung erklärt, dass es den äußerst hohen Anforderungen genügt ...) und im welchem auch die Zulassung gem. SigG nachgewiesen ist.

2.
Einen entsprechenden für SigG zugelassenen Kartenleser. und

3.
Ein ebenfalls für die qualifizierte elektronische Dokumentensignatur zugelassenes Programm.


Alles das kannst du käuflich erwerben. Für die Chipkarte legst du 2-300 Euronen auf den Tisch. Eine ausgezeichnete Software für die qual. Signatur von pdf-Dokumenten und natürlich auch für deren Verschlüsselung stellt die gleiche Firma her, welche den bekannten Adobe-Reader herstellt (Ich will die Firma nicht nennen, wegen Werbung ... .) Allerdings kenne ich bislang keine Software, welche unter unserem OS läuft. Meine letzte Anfrage bei dieser Firma sagte aber, dass dort an einer Portierung auf Linux gearbeitet wird.

Du siehst also. die Messlatte liegt, wenn es dir wirklich um die "Behördliche Anerkennung", also qualifizierte Signatur, geht, äußerst hoch und mit OSS einfach nicht zu machen. Wer will denn die Evaluierung bezahlen?


Selbstverständlich wird dich niemand hindern, eigene Zertifikate mit openssl oder TinyCA zu erzeugen, oder die beliebten Kostnix-Zertifikate der Trustcenter zu nutzen, um damit Dokumente und Mails zu signieren/verschlüsseln. Im privaten Bereich, unter Freunden und Bekannten und meinetwegen unter Geschäftspartnern ist das ja alles problemlos möglich. (Und immer noch viel besser als unsigniert und/oder unverschlüsselt.)

MfG Peter

joe johnson
16.10.08, 17:20
Hallo, ich wollte das Thema noch mal aufgreifen.
Komischerweise findet man im Internet nur spärliche Informationen dazu, obwohl das doch ein recht brisantes Thema sein müsste. Es gibt in DE doch "millionen" von Webshops, die (wenn sie Ihre Rechnungen online versenden) ihre PDF-Rechnungen nach dem deutschen Signaturgesetz (SigG) digital signieren müssen.

Ich habe dazu ein nettes Open-Source Tool gefunden, das hier anscheinen noch nicht angesprochen wurde: PortableSigner
http://portablesigner.sourceforge.net/
http://sourceforge.net/projects/portablesigner/
So wie es aussieht wurde das Programm von den Österreichischen Behörden entwickelt.

Wir betreiben einen Online-Shop und wollen/müssen unsere Rechnungen per E-Mail versenden und wollen die Signierung auch von unserem Server (Debian) machen lassen (nicht über externe Partner).
Wie bereits geschrieben, ist es ziemlich schwierig sich in das Thema einzuarbeiten, weil man kaum vernünfitige Informationen findet.

- wie ist der theoretische Ablauf so einer Signierung?
- wird unbedingt ein Cardreader benötigt, oder reicht ein Zertifikat, das in irgendeiner Form vorliegt? Auf der Seite von PortableSigner steht folgendes:
"you need...one PKCS#12 file with your personal digital X.509 certificate".
Nichts von einem Cardreader.

Hat hier jemand evtl. schon mal mit dem Thema zu tun gehabt und kann mir eine Starthilfe/Tips/Links geben?

Vielen Dank und viele Grüße,
Robert

/dev/null_Peter
16.10.08, 21:35
Hi Robert,

das Thema ist schon sehr interessant, aber sehr zu unserem Leidwesen hat sich diese Thematik noch nicht so richtig durchgesetzt. Hinter vorgehaltener Hand nennen wir die kaum zu realisierenden extrem hohen Forderungen des dt. SigG als eine Ursache für die fehlende Akzeptanz. Es ist eben ein Produkt von Juristen ... .

Ob ihr als Betreiber eines Webshops die Rechnungen wirklich mit einer qualifizierten Signatur signieren MÜSST, kann ich nicht sagen, bin (zum Glück) kein Jurist sondern "nur" ein Produzent der Chipkarten. Ich kenne auch Systeme, welche eine automatisierte Signatur von Dokumenten (zur Dokumentenarchivierung) durchführen. Sinngemäß funktioniert das auch bei Rechnungen. Aber das, was ich da kenne, sprengt wohl den Rahmen eines "normalen Webshops". Und unter Linux läuft davon keines der Programme und OSS ist da schon gar nix. Ich nannte ja in meinem ersten Beitrag schon ein paar Eckpunkte (... für SigG zugelassene Anwendung).

Ich kenne die von dir genannte Anwendung nicht. Aber wenn diese in Ö. zugelassen sein sollte, heißt das noch lange nicht, dass unsere Bundesnetzagentur (die dafür zuständige Behörde) dieses für uns einfach so übernimmt. Da müsste ich mich in den dortigen Kollegen sehr täuschen ... . (Sorry, Herr S.!)


> Wie bereits geschrieben, ist es ziemlich schwierig sich in das Thema einzuarbeiten,
> weil man kaum vernünfitige Informationen findet.
www.Bundesnetzagentur.de (Wenn Interesse besthet,kann ich noch mehr bringen, aber jetzt nicht ... .)

> - wie ist der theoretische Ablauf so einer Signierung?
extrem (!) vereinfacht:
- ein Hashwertgenerator berechnet von dem Dokument (.pdf) einen Hashwert
- dieser wird mit dem geheimen/privaten Schlüssel des Absenders verschlüsselt und
- je nach Software dem Dokument direkt angehängt oder als zusätzliche Datei übergeben.
- Der Empfänger besitzt ein (ebenfalls zugelassenes!) Signaturüberprüfungsprogramm. Dieses lädt automatisch das Zertifikat des Signierenden sowie die Zertifikate des Herausgebers aus dem Internet, entschlüsselt mit ersterem den verschlüsselten Hash, berechnet selbst den Hash des Dokumentes und vergleicht beide. (Und der Nutzer freut sich, wenn beide übereinstimmen.)

> - wird unbedingt ein Cardreader benötigt, oder reicht ein Zertifikat, das in irgendeiner
> Form vorliegt? Auf der Seite von PortableSigner steht folgendes:
> "you need...one PKCS#12 file with your personal digital X.509 certificate".
> Nichts von einem Cardreader.

PKCS#12 ist ein reiner Softwaretoken. Also eine Schlüsseldatei. Damit ist schon definiert, dass dieses Programm "nur" mit einer fortgeschrittenen Signatur signieren kann. Bei der qual.S. benötigst du (lt. dt.SigG) unbedingt ... eine "Sichere Signaturerstellungseinheit" = eine Chipkarte. Und diese muss wiederum von einem lt. SigG dafür zugelassenen Trustcenter hergestellt sein. Und sämtliche Programme (Erstellung und Auswertung) benötigen diese Zulassung ebenfalls ... . (S. meine Bemerkung ganz oben ... .)
Und nebenbei: der Cardreader ist wohl das billigste bei der ganzen Angelegenheit ... .

MfG
Peter

joe johnson
17.10.08, 10:52
Hallo Peter,

vielen Dank für deine Antwort.
Ich habe gestern noch den ganzen Abend/Nacht nach Informationen recherchiert und bin auch zum Schluss gekommen, dass die ganze Angelegenheit nicht so "trivial" ist.

Ich habe gestern auch mit einem Unternehmen aus der Schweiz telefoniert, die eine Lösung für Linux ab dem 2. Quartal nächsten Jahres (2009) anbietet.
Ich weiß nicht, ob ich hier den Namen/Link nennen darf.
Der Preis (wenn ich alles richtig verstanden habe/Angaben ohne Gewähr) wird dann einmalig bei ca. 2500-3000 Eur liegen + 20% jährlich für ca. 60.000 (niedrigste Staffelung) Signierungen.
Nur mal so paar Infos für Diejenigen, die eine ähnliche Lösung suchen...

Grüße,
Robert

glup
28.11.08, 15:03
Eine "kleine" Zusammenfassung und Erweiterung des bisher geschriebenen um bei diesem wichtigen Thema die Anzahl der zu lesenden Postings zu reduzieren:

Um Rechnungen zu erstellen, die zum Vorsteuerabzug berechtigen muß diese mit einem qualifizierten Zertifikat unterschrieben sein. Ein qualifiziertes Zertifikat kann nur von Trust-Center erstellt werden, die dafür eine Genehmigung der Bundesnetzargentur (BNetzA) haben. Diese bekommen sie nur wenn sie sehr strenge technische Voraussetzungen erfüllen.

Die Liste der deutschen Anbieter und weitere Informationen dazu findet man bei der BNetzA:

http://www.bundesnetzagentur.de/enid/Elektronische_Signatur/Zertifizierungsdiensteanbieter_ph.html

Eine technische Voraussetzung für eine qualifizierte Signatur ist das der private Schlüssel des Zertifikats technisch so gesichert ist das dieser nicht ausgelesen werden kann. Hintergrund ist das die digitale Signatur einer handschriftlichen Unterschrift gleich gestellt ist und man damit alles Unterzeichnen kann was gesetzlich kein "höheres" Formerfordernis wie eine Notarielle Urkunde hat. Das hat weitreichende Konsequenzen z.B. kann man mit der qualifizierten Signatur Verträge unterzeichnen wie den Verkauf des eigenen Wagen, auch wenn dies gar nicht beim beantragen des Zertifikats beabsichtigt ist. Aus diesem Grund sind derzeit nur qualifizierte Zertifikate auf Chip Karten erhältlich.

Die Beantragung eines qualifizierten Zertifikats muß nach Prozessen ablaufen, die letztendlich von der BNetzA genehmigt werden müssen. Teil dessen ist das sicher gestellt werden muß, dass die Person die die Karte bekommt, auch die ist die im Zertifikat aufgeführt ist und nur diese Person die zugehörige PIN zur Kenntnis bekommt.

Damit nun eine Person auch für eine Firma unterschreiben kann, muß die Firma ebenfals Teil des Zertifikats werden. Dazu muß die Firma diesem durch eine vertretungsberechtigte Person (im Handelsregister eingetragen) im Rahmen des Antrags zustimmen.

Wie schon von /dev/null_Peter gesagt muß nicht nur die Karte und der Kartenleser (bzw dessen Firmware) den gesetzlichen Bestimmungen entsprechen, sondern auch die PC Anwendung. Dazu ist von dessen Hersteller eine Herstellererklärung ab zu geben, die von der BNetzA im Amtsblatt veröffentlicht wird und faktisch eine Garantieerklärung des Herstellers ist das die Software den gesetzlichen Voraussetzungen (fehlerfrei!!!) entspricht. Wie /dev/null_Peter sagte kann dies bei OSS keiner leisten weil ja jeder die Software ändern kann und solche Garantien grundsätzlich geldwerte Risiken sind die besichert werden müssen (z.B. per Versicherung gegen Prämienzahlung seitens des Herstellers).

Das Verfahren zur Unterschrift ist nun:
1. Eine PC Anwendung berechnet von dem zu unterzeichnenden Dokument einen Hashwert
2. Dieser Hashwert wird über den Kartenleser an die Chipkarte zur unterschrift geschickt.
3. Die Karte fragt nach der PIN die sinnvollerweise auf dem Kartenleser sicher vor Trojanern eigegeben wird
4. Die Karte berechnet die Signatur und schickt sie zurück an die PC Anwendung.

Dieser Prozess ist der für eine einzellne Signatur. Es ist klar das so etwas für Firmen mit vielen Rechnungen pro Tag wenig sinnvoll ist. Für diesen Zweck gibt es Hardware (z.B. mehrere zugelassene Card-Reader in einem 19'' Gehäuse mit einem USB Anschluß), Zertifikate und (teilweise Server basierte) Software für so genannte Stapel Signaturen mit dennen mit einer Freigabe (PIN) viele Rechnungen in einem Rutsch signiert werden können.

Und noch zu den Preisen:
Qualifizierte Zertifikate kosten ab ca 100 €. Stapelsignaturkarten kosten etwa das 3 fache. Die Gültigkeit beträgt gemeinhin 24 Monate, aber die BNetzA kann die Gültigkeit von Zertifikaten beschränken, wenn sie davon ausgeht, dass die Schlüssellänge angesichts des kryptoanalytischen Fortschritts nicht mehr ausreicht. Zuletzt passiert letztes Jahr als 1024 bit Schlüssellänge als nicht mehr ausreichend bestimmt wurde und alte Karten damit zu einem von der BNetzA definieren Zeitpunkt ungültig wurden. Neue Zertifikate müssen mindestens 2048 bit lange RSA Schlüssel verwenden.

Ich hoffe das dies hilfreich ist.

:-glup