original in en Angel Lopez
en to de Katja Socher
Angel Lopez ist der Autor dieses Artikels.
PGP ist das geeignete Werkzeug, um die Privatsphäre und Authentität von Informationen in unsicheren Kommunikationsnetzwerken, wie dem Internet zu gewährleisten.
Geheimhaltung (privacy) stellt sicher, daß nur der Empfänger der Informationen etwas damit anfangen kann. Wenn diese Informationen in die Hände von anderen Personen gelangen würden, wären sie für sie total nutzlos, da sie nicht entschlüsselt werden können.
Die Authentität stellt sicher, daß bestimmte Informationen, die von Person "A" erzeugt wurden, wirklich von "A" kommen und nicht von irgendjemand anderem unterwegs verfälscht oder verändert wurden.
PGP basiert auf einem krypthographischen System, das unter dem Namen öffentlicher Schlüssel (public key) bekannt ist und das für unsichere Datenkanäle benutzt werden kann. Dies macht es ideal, um die Geheimhaltung von Informationen, die über Netzwerke wie das Internet übermittelt werden, zu gewährleisten.
Man muß nicht in eine dicke Industrieverschwörung :) verwickelt sein, um an der Geheimhaltung seiner Kommunikation interessiert zu sein und deshalb ein Bedürfnis nach einem Kryptographiewerkzeug zu haben. Etwas so einfaches wie E-mail kann ein ausreichender Grund dafür sein, anzufangen, PGP zu benutzen. Laßt uns anschauen, warum:
In Systemen mit einem öffentlichen Schlüssel (Public Key Cryptography) hat jede Person zwei Schlüssel, die zueinander komplementär sind, der eine ist der öffentliche Schlüssel und der andere der private Schlüssel.
Der öffentliche Schlüssel kann und muß frei preisgegeben werden, da es durch diesen Schlüssel für den Rest der Welt möglich ist, dir Informationen geheim/privat zuzusenden. Der öffentliche Schlüssel gefährdet nicht die Geheimhaltung des privaten Schlüssels.
Laß uns den Fall von zwei Freunden betrachten, Juan und Pedro. Juan ist in der Lage, Pedro persönliche Informationen zu senden, wenn er Pedros öffentlichen Schlüssel kennt. Auf der anderen Seite ist Pedro durch die Benutzung seines privaten Schlüssels in der Lage, die Nachricht, die Juan gerade geschickt hat, zu entschlüsseln. Laßt uns annehmen, daß noch eine andere Person da ist, Marcos, der die Nachricht, die Juan an Pedro geschickt hat, abfängt. Marcos kann mit der Nachricht nichts anfangen, da er den privaten Schlüssel von Pedro nicht kennt. Selbst Juan, der Sender und Erschaffer der Nachricht, ist nicht in der Lage, sie zu entschlüsseln, nur Pedro kann das mit seinem privaten Schlüssel.
Die Sicherheit eines Systems basiert darauf, daß jeder Benutzer seinen privaten Schlüssel sicher abspeichert, auch wenn der öffentliche Schlüssel weithin bekannt ist. Wenn jemand versuchen würde, das System zu knacken, ohne den privaten Schlüssel des Empfängers zu kennen, würde dies so viele Jahre dauern, daß es nutzlos wäre.
Wie zuvor in der Einführung erwähnt, bietet PGP neben der Geheimhaltung auch die Möglichkeit der Autentifizierung der Informationen. Laßt uns anschauen, warum:
Unser privater Schlüssel entschlüsselt nicht nur die Nachrichten, sondern kann auch die gesendetet Information "unterschreiben", ganz analog zu den Unterschriften unter Papierdokumenten.
Ein digital unterschriebenes Dokument ohne privaten Schlüssel kann von jedem authentifiziert werden, der einen öffentlichen Schlüssel besitzt. Die Authentifizierung sorgt für eine Überprüfung, so daß das Dokument tatsächlich von der Person geschickt wurde, die vorgibt, es geschickt zu haben, und daß es zwischendurch nicht verändert oder verfälscht wurde.
Beide Prozesse, Veschlüsseln und Unterschreiben, können benutzt werden, um zusammen Geheimhaltung und Authentifizierung zu erreichen. Zuerst wird das Dokument mit unserem privaten Schlüssel unterschrieben und dann wird es verschlüsselt, wobei der öffentliche Schlüssel des Empfängers benutzt wird.
Wenn der Empfänger die Nachricht erhält, dreht er die Schritte um, zuerst entschlüsselt er das Dokument mit dem privaten Schlüssel und dann überprüft er die Unterschrift mit unserem öffentlichen Schlüssel.
Alle diese Prozesse können automatisiert werden, wie wir später sehen werden.
Ein öffentlicher Schlüssel wird in einem Schlüsselzertifikat abgespeichert, dies ist einfach der öffentliche Schlüssel zusammen mit dem Namen des Eigentümers und des Erstellungsdatums.
Der private Schlüssel ist durch ein Paßwort geschützt, das den unbefugten Gebrauch durch unautorisierte Personen verhindert.
Beide Schlüssel werden zusammen in einer Datei namens key ring (Schlüsselring) gespeichert, die auch verschiedene Schlüsselzertifikate speichert. Normalerweise gibt es einen Ring für öffentliche Schlüssel und einen anderen für private Schlüssel.
Intern werden die Schlüssel durch eine Schlüssel ID key ID referenziert, die durch die letzten 64 Bits des Schlüssels gegeben sind. Wenn Informationen über den Schlüssel angezeigt werden, dann werden in Wirklichkeit nur die letzten 32 Bits des Schlüssels angezeigt. Diese Schlüssel IDs werden von PGP z.B. dazu benutzt, um einen Schlüssel im Moment des Entschlüsselns einer Nachricht zu finden.
Beim Unterschreiben eines Dokuments erzeugt PGP 128 Bits, die das Dokument
charakterisieren. Diese Unterschrift ist eine Art Prüfsumme oder CRC, die es
ermöglicht, Änderungen im Dokument zu erkennen. Im Gegensatz zum normalen CRC
oder Prüfsumme kann kein Hochstapler diese Unterschrift erneut erzeugen, um
irgendwelche gemachten Änderungen am Originaldokument zu legitmieren. Die
Unterschrift entsteht durch Benutzung des privaten Schlüssels des Senders und
der Hochstapler wird darauf normalerweise keinen Zugriff haben.
An dieser Stelle muß darauf hingewiesen werden, daß es eine beträchtliche
Verwirrung um die verschiedenen Versionen von PGP gibt. Aufgrund der in den USA
existierenden Politik in Bezug auf den Export von kryptographischem Material,
haben sich mehrere Versionen von PGP herausgebildet, zusammen mit einigen
Gesetzen, die die Benutzung angehen. Um soviel Ordnung wie möglich in dieses
ganze Durcheinander zu bringen, werde ich die verschiedenen zur Zeit für PGP
verfügbaren Versionen aufzählen.
Freeware PGP Versionen:
Dies ist das "klassische" PGP. Es kann noch immer benutzt werden, obwohl es
zu Inkompatibilitätsproblemen beim Verarbeiten von Schlüsseln und Nachrichten
kommen kann, die mit den Versionen 2.6.x und später erstellt wurden oder beim
Gebrauch von Schlüsseln, die größer als 1280 Bits sind.
PGP 2.3a kann normalerweise aufgrund von
Beschränkungen im Patent nicht außerhalb der USA benutzt werden.
Dies ist die in-offizielle Version von PGP 2.3a, die die vorher erwähnten
Inkompatibilitätsprobleme korrigiert. Diese Version ist keine 2.6.x Version, weil sie
auf dem Quellcode für 2.3a basiert
Sie basiert auf dem Quellcode von 2.6ui, sie ist eine Änderung, die versucht,
zu den neuesten Innovationen, die in den Versionen 2.6.x eingeführt wurden,
kompatibel zu bleiben.
Dies ist die neuste offizielle Version von PGP. Seine Nachrichten können von
Versionen, die der 2.5 Version vorausgingen, gelesen werden und sie benutzt die
RSAREF Verschlüsselungsbibliothek. Es ist illegal, diese Version aus den USA zu
exportieren, aber kurioser Weise ist es so, daß sie frei benutzt werden kann,
sobald sie einmal exportiert ist.
Basiert auf dem Quellcode für MIT PGP 2.6.2, der für den internationalen
Gebrauch verändert wurde. Eine der durchgeführten Änderungen ist die Entfernung
der oben erwähnten RSAREF Verschlüsselungsbibliothek. Die Benutzung dieser
Version ist in den USA illegal.
PGP 5.0 (vorher bekannt als PGP 3.0) ist eine vollständig neue PGP Version. Ihr Quellcode wurde von Grund auf neu geschrieben. Es fügt neue Optionen hinzu, einschließlich der Unterstützung anderer kryptografischer Algorithmen außer RSA und IDEA. Es ist eine GUI-Benutzeroberfläche enthalten, um die Benutzung zu vereinfachen. Diese Version wird Mitte des Sommers verfügbar sein.
Diese kommerzielle Version umfaßt ein Handbuch und eine individuelle Benutzungslizenz.
Es beinhaltet nicht den Quellcode.
Im Juni 1996 kaufte PGP Inc. ViaCrypt und beginnt die Entwicklung kommerzieller PGP Versionen für die USA und Kanada. Die aktuellste Version ist PGPMail 4.5.
Es muß beachtet werden, daß in einigen Ländern, wie Frankreich, Iran, Irak, Rußland und China, die Benutzung von Kryptographie reguliert oder verboten ist.
Einige interessante Links, um Version 2.6.3i für verschiedene Linuxdistributionen zu bekommen:
Der erste Schritt ist dann, ein Verzeichnis für den Quellcode anzulegen:
mkdir pgpAls nächstes muß die Archivdatei dekomprimiert werden:
tar -C ./pgp -xzvf pgp263is.tar.gzJetzt wechsle in das neu angelegte Verzeichnis:
cd pgpAls nächstes mußt du die Datei pgp263ii.tar auspacken, die die Dokumentation und den Quellcode für das Programm enthält. Um dies zu erreichen, führe das folgende aus:
tar -xvf pgp263ii.tarAn diesem Punkt bist du soweit, PGP zu kompilieren. Wenn du nicht den Quellcode, sondern eine kompilierte Version (entweder a.out oder ELF) heruntergeladen hast, kannst du diesen Schritt weglassen. Wenn du den Quellcode fertig hast, kann die Kompilierung durch Eingeben folgender Befehle ausgeführt werden:
cd src make linuxWenn alles gutgegangen ist, dann hat das makefile jetzt ein pgp executable erzeugt. Im Fall einer globalen Installation kannst du es nach /usr/local/bin, /usr/bin kopieren, wo immer du es am besten findest. Ansonsten kannst du es in deinem persönlichen Verzeichnis lassen.
Genauso kann man auch die Handbuchseite pgp.1 nach /usr/man/man1 kopieren, im
Fall einer systemweiten Installation.
cd mkdir .pgpWenn du den Distributionsdateien etwas Aufmerksamkeit schenkst, dann findest du eine Datei namens config.txt, die dazu dient, einige Aspekte von PGP zu konfigurieren. Um eine persönliche Konfiguration vornehmen zu können, mußt du diese Datei in dein gerade erzeugtes Verzeichnis ~/.pgp kopieren.
Optional, statt ~/.pgp/config.txt kannst du es in .pgprc umbennenen und in deinem Homeverzeichnis abspeichern, das ist ~/.pgprc
Unter anderem kann diese Datei die Sprache, die benutzt werden soll, durch den Parameter Language spezifizieren, die Möglichkeiten sind:
Language = en (Englisch) Language = es (Spanisch) Language = ja (Japanisch)Es gibt noch andere Parameter in der Datei. Um aus dieser Option Nutzen ziehen zu können, mußt du die Datei language.txt nach ~/.pgp kopieren.
Ein weiterer empfohlener Schritt ist, die persönliche Hilfedatei für deine
Sprache nach ~/.pgp zu kopieren. Im Fall eines Spanisch sprechenden
Benutzers würde man die Datei es.hlp kopieren.
pgp -kgMan wird gebeten, die maximale Größe des Schlüssels auszuwählen (512, 768 oder 1024 Bytes), je größer der Schlüssel, desto größer die Sicherheit, auf Kosten einer kleinen Geschwindigkeitseinbuße.
Nach der Auswahl der Schlüsselgröße wirst du gebeten, den Identifizierer zu dem öffentlichen Schlüssel einzugeben. Normalerweise geben die Leute hier ihren Namen oder ihre Emailadresse an. In meinem Fall habe ich folgendes geschrieben:
Angel Lopez Gonzalez <alogo@mx2.redestb.es>
Als nächstes kommt das Paßwort, um deinen privaten Schlüssel zu schützen. Wähle einen Satz, an den du dich leicht wieder erinnern kannst. Dies ist notwendig, um deinen privaten Schlüssel zu schützen, so daß, wenn jemand ihn stiehlt, er ohne Paßwort nicht benutzbar ist.
Schließlich fragt dich das Programm, zufällig mehrere Tasten auf deiner Tastatur zu tippen, um eine Folge von Zufallszahlen zu erzeugen. Das Programm wird die Folge von Bits aus dem Intervall zwischen den Anschlägen auf die Tastatur erzeugen.
PGP erzeugt die Schlüssel nach ein paar Sekunden und informiert dich durch ein Nachricht. Nach richtiger Erzeugung der Schlüssel sollten sie in dem Verzeichnis ~/.pgp gespeichert werden als die folgenden Dateien: pubring.pgp und secring.pgp
Der erste, pubring.pgp, ist der Ring mit den öffentlichen Schlüsseln. Im Moment enthält er nur unseren Schlüssel.
Der zweite, secring.pgp ist, wie du dir denken kannst, der Ring mit den privaten Schlüsseln, der im Moment nur deinen eigenen privaten Schlüssel enthält.
Es sollte daran erinnert werden, daß die Sicherheit der Public Key Chryptography auf der Geheimhaltung des privaten Schlüssels basiert, deshalb stell sicher, daß du ihn an einem sicheren Ort aufbewahrst und daß niemand zu dem Ring der privaten Schlüssel Zugriff haben kann. Überprüfe die Zugriffsrechte von secring.pgp und stell sicher, daß nur du darauf lesen und schreiben kannst, während andere Leute darauf überhaupt keinen Zugriff haben.
Schließlich sollte erwähnt werden, daß sowohl die Identifikation der Schlüssel als auch die Paßwörter für die privaten Schlüssel editiert und verändert werden können, und zwar durch den Befehl:
pgp -ke identifier [ring]
Wenn die Datei Somekey.pgp einen Schlüssel enthält und du ihn zu einem deiner Ringe hinzufügen möchtest, dann ist die Prozedur ganz einfach, führe folgendes aus:
pgp -ka Somekey [ring]Per default zeigt die Endung .pgp eine Datei mit einem Schlüssel an und die Namen pubring.pgp und secring.pgp sind an die Dateien, die die Ringe der öffentlichen und privaten Schlüssel enthalten, angehängt.
Wenn ein Schlüssel hinzugefügt wird, könnte PGP dich informieren, daß der hinzugefügte Schlüssel nicht komplett zertifiziert ist, was bedeutet, daß der besagte Schlüssel authentisch zu seinem angeblichen Eigentümer gehört oder auch nicht.
Wenn "Sicherheit" darüber besteht, daß der Schlüssel wirklich zu dem angegebenen Eigentümer gehört, entweder, weil er oder sie ihn uns persönlich oder durch einen sicheren Kanal gegeben hat, dann kann es vom Benutzer/ der Benutzerin selbst zertifiziert werden. Dies impliziert, daß wir unsere Unterschrift auf den Schlüssel legen als Beweis für seine Zertifizierung.
Dies erleichtert die Weiterleitung unseres Schlüssels zu einer Person, die uns traut und die die vollständige Sicherheit hat, daß wir ihr einen guten und authentischen Schlüssel übergeben.
Es gibt für diesen Prozeß sogar einen Namen, ein web trust. In den USA
gibt es sogar Treffen von PGP Benutzern, wo die öffentlichen Schlüssel
untereinander ausgetauscht und unterschrieben werden :)
Laßt uns ein Beispiel betrachten, um dieses Konzept klar zu machen.
Betrachte wieder die zwei Freunde, Juan und Pedro. Juan gibt seinen öffentlichen Schlüssel
an Pedro. Pedro ist sicher, daß der Schlüssel, den Juan ihm gegeben hat, richtig
ist, da sie einander vertrauen. Wenn er zu Hause ankommt und ihn zu dem Ring
öffentlicher Schlüssel hinzufügt, kann er zertifizieren, daß der Schlüssel
wirklich zu Juan gehört, deshalb unterschreibt er ihn mit seinem eigenen
persönlichen Schlüssel.
Jetzt betreten zwei weitere Personen die Szene; Luis und Maria. Luis erhält von Pedro Juans Schlüssel und später schickt Luis ihn zu Maria. Maria traut Luis nicht, aber sie sieht, daß Juan's Schlüssel mit Pedros Zertifizerung kommt. Maria kann den öffentlichen Schlüssel von Juan dank Pedros Unterschrift überprüfen. Sie hat Pedros öffentlichen Schlüssel, weil er ihn ihr persönlich gegeben hat, deshalb kann sie jetzt der Echtheit von Luis' Schlüssel nach Überprüfung der Authentität von Pedros Unterschrift trauen. Hier sehen wir nun, wie Maria jetzt den, ihr von einer nicht-vertrauenswürdigen Person wie Luis gegebenen Schlüssel benutzen und trauen kann.
Es ist etwas chaotisch :) , aber notwendig, um sich von dem einzigen schwachen
Punkt bei diesem Typ von Kryptographie zu schützen: der Tatsache, daß der
öffentliche Schlüssel falsch sein könnte.
pgp -kr identifier [ring]Zum Beispiel: "pgp -kr juan " entfernt jeden Schlüssel, der "juan" irgendwo im Identifizierer hat. Per default ist der durchsuchte Schlüsselring der Ring, mit den öffentlichen Schlüsseln.
pgp -kx identifier file [ring]Zum Beispiel: "pgp -kx angel mykey" filtert den öffentlichen Schlüssel in die Datei mykey.pgp heraus, identifiziert durch die Unterzeichenkette "angel"
Die generierte Datei mykey.pgp ist nicht im ASCII Format (probier cat aus, um es zu sehen). Wenn jemand aber eine Schlüsseldatei im ASCII Format haben möchte, um sie z.B. als E-Mail zu verschicken oder sie als Zusatzinformation zu einer finger Datenbank hinzuzufügen, so muß man folgendes tippen:
pgp -kxa identifies file [ring]Zum Beispiel: "pgp -kxa angel mykey" filtert den öffentlichen Schlüssel, der durch die Unterzeichenkette "angel" in die Datei "mykey.asc" identifiziert wurde, heraus.
Zusammen mit dem Schlüssel werden auch alle Zertifikationen herausgezogen,
die ihn unterstützen.
pgp -kv [identifier] [ring]Wiederum ist der default Ring der pubring.pgp, der öffentliche Ring. Wenn nicht explizit ein Identifizierer angegeben wird, werden alle Schlüssel im Ring angezeigt.
Um alle Zertifikationen für jeden Schlüssel zu sehen, benutze:
pgp -kvv [identifier] [ring]
pgp -e file identifierHier ist ein Beispiel: Ein Lehrer möchte seinem College eine Klausur per E-Mail schicken und er möchte sie verschlüsseln, damit kein Student sie abfangen kann :). Laßt uns sagen, der Name des zweiten Lehreres ist Marcos und der Identifizierer seines öffentlichen Schlüssels enthält seinen Namen. Dann tippt unser erster Lehrer:
pgp -e exam.doc marcosDieser Befehl erzeugt eine Datei mit dem Namen exam.pgp, die die Datei exam.doc enthält, verschlüsselt in einer Weise, daß nur Marcos mit seinem Schlüssel sie entschlüsseln kann.
Erinnere dich, daß die erzeugte Datei, exam.pgp, keine ASCII Datei ist, deshalb ist es für E-Mail besser, eine weitere Option -a hinzuzufügen, so daß die verschlüsselte Ausgabedatei im ASCII Format ist, wie dies:
pgp -ea exam.doc marcosAus Sicherheitsgründen möchten wir manchmal das Original löschen. PGP kann dies automatisch mit der Option -w tun:
pgp -eaw exam.doc marcos
pgp -ea exam.doc marcos juan aliciaBeachte, daß der Befehl wieder die Option -a enthält, so daß die Ausgabedatei im ASCII Format ist, angemessen für E-Mail.
Um ein Dokument zu unterschreiben, ist es notwendig, den privaten Schlüssel zu benutzen:
pgp -s file [-u identifier]Wenn wir mehrere private Schlüssel in unserem secring.pgp haben, können wir einen davon durch Benutzen des Identifizierers auswählen.
Wenn unser Lehrer in dem Beispiel sich entscheidet, die Klausur zu unterzeichnen, damit seine Kollegen wissen, daß die Nachricht nicht von einem lustigen Studenten :) kommt, tippt er das folgende:
pgp -s exam.docDieser Befehlt erzeugt eine Datei namens exam.doc.pgp, die nicht im ASCII Format ist, weil PGP versucht, die Datei zu komprimieren. Wenn du aber ein Dokument unterschreiben und den Text mit deiner Unterschrift am Ende lesbar lassen möchtest, dann wäre die Prozedur folgendermaßen:
pgp -sta exam.docDieser letzte Befehl ist sehr nützlich, um elektronische Post zu unterschreiben, die noch für diejenigen, die kein PGP haben, lesbar ist oder von denen, die die Unterschrift nicht überprüfen wollen.
Es ist auch möglich, ein Doukument zu unterschreiben und es dann anhand des folgenden Befehls zu verschlüsseln:
pgp -es file recipient_identifier [-u my_identifier]Zum Beispiel:
pgp -es exam.doc marcos -u angelEs verschlüsselt und unterzeichnet die Datei exam.doc, und generiert dabei die Datei exam.pgp. Der öffentliche Schlüssel, der benutzt wurde, um die Datei zu verschlüsseln, ist der, der durch der Zeichenkette "marcos" identifiziert wurde, deshalb kann nur der Eigentümer dieses Schlüssels sie entschlüsseln. Dann identifiziere ich meinen privaten schlüssel mit der Zeichenkette "angel", weil ich in meinem Ring mehrere Schlüssel habe.
Selbst in diesem Fall könnte durch Benutzen der Option -a eine ASCII-Datei erzeugt werden.
Eine andere interessante Möglichkeit wäre, eine Unterschrift für eine Datei getrennt von den Daten zu erzeugen. Um dies zu erreichen, benutzt man die -b Option:
pgp -sb exam.docDieser Befehl erzeugt eine neue Datei exam.sig, die nur die Unterschrift enthält.
pgp input_file [-o output_file]Per default wird angenommen, daß die Eingabedatei die Endung .pgp besitzt. Die Ausgabedatei ist nur optional und enthält die entschlüsselte Datei. Wenn keine Ausgabedatei spezifiziert ist, wird die entschlüsselte Datei in der Eingabedatei gespeichert, wobei die Endung .pgp entfernt wird.
Nach dem Entschlüsseln einer Datei können wir jedoch auch die Standardausgabe für die entschlüsselte Datei spezifizieren. Dies wird durch Benutzen der -m Option erreicht:
pgp -m fileEs gibt noch eine andere Möglichkeit: Benutzen von Eingabe- und Ausgabe-Pipes, dank der Option -f:
pgp -fs identifier < input_file > output_fileEin weiteres interessantes Szenario ist, daß wir die unterzeichnete Nachricht entschlüsseln möchten, die jemand uns geschickt hat, aber die Unterschrift behalten wollen, weil wir sie wieder verschlüsseln wollen, um sie an eine dritte Partei zu schicken. Um dies zu tun, benutzt man die Option -d:
pgp -d examDies würde die Datei exam.pgp nehmen und sie entschlüsseln, aber die Originalunterschrift in der Datei lassen. Jetzt können wir fortfahren, sie mit dem öffentlichen Schlüssel einer dritten Person zu verschlüsseln, die, sobald sie sie empfangen hat, die Authentizität der Originalunterschrift überprüfen könnte.
pgp -sta text_file identifier
Um den Fingerabdruck eines Schlüssels anzuzeigen, benutzt man den Befehl:
pgp -kvc identifier [ring]
+batchmode
Mit dieser Option wird PGP nichts fragen, was nicht strikt notwendig ist. Benutz diese Option, um eine Unterschrift automatisch zu überprüfen. Wenn die Datei keine Unterschrift hat, wird der Fehlercode 1 zurückgegeben; wenn die Datei eine Unterschrift hat und sie korrekt war, wird 0 zurückgegeben.
pgp +batchmode fileforce
Diese Option zwingt jede Operation, eine Datei zu überschreiben oder einen Schlüssel zu löschen.
pgp +force +kr marcosInnerhalb einer Shell ist es sinnvoll, zu vermeiden, daß PGP nach Paßwörtern fragt, wenn es eine Datei verschlüsselt. Um zum Beispiel nicht interaktiv während der Verschlüsselung gefragt zu werden, können wir dies einfach mit der Umgebungsvariablen PGPPASS umgehen.
Hier ein Beispiel:
PGPPASS="password" export PGPPASS pgp -s file.txt marcosEin anderer Weg, das Paßwort zu PGP zu umgehen, in einem sich nicht-wiederholenden Weg, ist das Benutzen der Option -z
Wie hier:
pgp -sta exams.txt angel -z "password"Eine andere nützliche Operation unter der Shell ist, PGP in einem wortreichen Mode durch +verbose. laufen zu lassen. Dies erreicht einen ruhigen mode -- , was heißt, keine informativen Nachrichten, nur Fehlermeldungen:
pgp file.pgp +verbose=0
Als ein Beispiel werde ich die Integration von PGP mit Pine diskutieren. Hoffentlich ist das der vom Leser benutzte Mailleser.
Obwohl ich beschreibe, wie es mit PGP für Pine funktioniert, können die Prinzipien hinter diesen Schritten auch auf andere Mailleser angewendet werden. Die Konfigurationsoptionen werden aber natürlich für verschiedenen Mailprogramme unterschiedlich sein.
Um Mail automatisch vor dem Lesen zu entschlüsseln, braucht man einen Filter, der die Nachricht weiterverarbeitet, um sie auf dem Bildschirm anzuzeigen. Eine andere Möglichkeit wäre, ein Macro zu schreiben, das Entschlüsseln und Bildschirmanzeige kombiniert.
Im Fall von Pine gibt es eine Option, um Filter zu definieren, die vor dem Anzeigen der Nachricht ausgeführt werden. Diese Option heißt 'display-filters' und findet sich in Pines Konfigurationsmenu. In dieser Option fügen wir einen neuen Filter hinzu, der so aussieht:
_BEGINNING("-----BEGIN PGP MESSAGE-----") _ /usr/local/bin/pgpJede in PGP verschlüsselte Nachricht ist von zwei spezifischen line-bars umschlossen, "-----BEGIN PGP MESSAGE-----" und "-----END PGP MESSAGE-----", so daß es, wenn du wissen willst, ob eine Nachricht verschlüsselten Text in ihrem Rumpf hat, ausreicht, nach einer der beiden obigen Zeilen zu suchen. Der in Pine definierte Filter macht genau dies. Bevor er die tatsächliche Nachricht anzeigt, inspiziert es den Rumpf und sucht nach der Zeichenkette "-----BEGIN PGP MESSAGE-----", mit der Einschränkung, daß sie zu Beginn einer Zeile erscheinen muß. Wenn er sie findet, dann führt er das Programm: /usr/local/bin/pgp aus.
Wenn es tatsächlich eine verschlüsselte Nachricht im Rumpf gibt, wird PGP ausgeführt. Es fragt dich nach dem Paßwort und dann kannst du die Nachricht lesen. Wenn du den Prozeß noch mehr automatisieren möchtst, durch Sparen von Zeit, die nötig ist, um jedes Mal dein Paßwort einzugeben, dann kannst du die Umgebungsvariable PGPPASS definieren oder die Option -z benutzen, wie oben beschrieben.
Jetzt müssen wir nur noch einen Filter definieren, der unsere Nachrichten mit den öffentlichen Schlüsseln der Empfänger, die in unserem öffentlichen Ring verfügbar sind, verschlüsselt, bevor die Nachricht tatsächlich abgeschickt wird. Pine hilft uns wiederum mit der Konfigurationsoption 'sending-filters.' Hier ist ein Filter, um diese Option einzuschließen:
/usr/local/bin/pgp -etaf _RECIPIENTS_Nach dem Schreiben der Nachricht und Tippen von CTRL-X, um sie zu senden, fragt Pine dich, ob du sie direkt senden willst, ohne durch die definierten Filter zu gehen. Um die Nachricht entschlüsselt zu senden, bestätige einfach, aber wenn du die Nachricht verschlüsselt senden willst, dann drück CTRL-N oder CTRL-P, was dich durch eine Liste mit allen definierten Filtern führt. In unserem Fall ist das gerade der oben geschriebene PGP Filter.
Dies ist ein sehr einfaches und grundlegendes Setup, das dir erlaubt, PGP unter Pine zu benutzen, mit nur zwei Filtern. Um mehr Informationen darüber zu erhalten, wie PGP weiter mit Pine oder anderen Systemen integriert werden kann, schau diese Links an:
elm | GNU Emacs | tin | mailx | MH | Pine | sendmail | vi | zmail
Für weiter Informationen: