Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung | ||
projekte:pgp_mbox_decrypt [2021/01/02 18:59] keno |
projekte:pgp_mbox_decrypt [2021/02/01 14:38] (aktuell) keno |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== PGPSearch ====== | + | ====== PGP-mbox-decrypt ====== |
- | Üblicherweise lassen sich PGP-verschlüsselte Emails in den Clients nicht durchsuchen. Der Grund dafür ist in erster Linie, dass viele Clients einfach die Suchfunktion von IMAP benutzen, die Suche also auf dem Server stattfindet. Der Server hat aber natürlich keinen Zugriff auf den Inhalt der Emails, dafür benutzt man schließlich PGP. Doch auch Clients, die eine lokale Suche unterstützen, tun dies in der Regel nicht für PGP. Der Grund dafür ist, dass die Emails in der Regel verschlüsselt abgespeichert werden und für jede Suche alle Emails nach und nach zu entschlüsseln ein nicht willkommener Zeitfaktor ist. Jedoch wird es so fast unmöglich, eine alte Email zu finden, wenn man viel verschlüsselt kommuniziert. | + | [[https://gitlab.com/kenogo/pgp-mbox-decrypt|Git Repository]] |
- | Die Lösung ist also, dass alle Emails beim Holen vom Server lokal unverschlüsselt abgespeichert werden. Das Programm sollte daher aus Sicherheitsgründen nur auf einer verschlüsselten Festplatte oder in einem verschlüsselten Container benutzt werden. | + | Verschlüsselte Emails lassen sich nicht durchsuchen. Die einfachste und schnellste Lösung ist, die Emails lokal entschlüsselt zu speichern und sie anschließend zu durchsuchen. Eigentlich alle ernst zu nehmenden Email-Programme unterstützen das [[wp>mbox|mbox-Format]]. Man kann also ohne weiteres sein Postfach als mbox abspeichern. PGP-mbox-decrypt hat dann die Aufgabe, diese mbox-Datei voller verschlüsselter Nachrichten zu einer mbox-Datei voller entschlüsselter Nachrichten zu verwandeln. Die entschlüsselte mbox kann dann wieder im Email-Programm importiert und durchsucht werden. |
- | [[http://www.offlineimap.org/|OfflineIMAP]] könnte als Grundlage benutzt werden. Einfach noch irgendwie die Fähigkeit zum entschlüsselten Abspeichern verschlüsselter Mails hinzufügen und eine grafische Oberfläche einbauen. Emails könnten dann mit den Python-Modulen [[https://docs.python.org/3/library/mailbox.html|mailbox]] und [[https://docs.python.org/3/library/email.examples.html|email]] durchsucht werden. | + | ===== Installation ===== |
- | Alternativ könnte man nutzen, dass viele Email-Programme Emails im Mbox- oder Maildir-Format abspeichern und einlesen können. PGPSearch wäre dann weniger ein Suchprogramm als einfach ein Programm, dass eine Mbox mit verschlüsselten Emails einliest und eine Mbox mit unverschlüsselten Emails ausspuckt. Hiermit sollten wir sowieso anfangen. Im Nachhinein können wir dann entscheiden, ob wir die anderen Funktionen auch hinzufügen wollen. | + | Um das Programm benutzen zu können, muss lediglich [[https://www.python.org/|Python 3]] installiert sein. Mit [[https://git-scm.com|Git]] kann es am einfachsten heruntergeladen werden. Installiere also diese beiden Programme für dein Betriebssystem und führe in der Kommandozeile folgenden Befehl aus: |
+ | |||
+ | <code> | ||
+ | $ git clone https://gitlab.com/kenogo/pgp-mbox-decrypt | ||
+ | </code> | ||
+ | |||
+ | In dem Ordner //pgp-mbox-decrypt// befindet sich dann das Programm. Auf Linux kannst du es systemweit mit den folgenden Befehlen installieren. | ||
+ | |||
+ | <code> | ||
+ | $ cd pgp-mbox-decrypt | ||
+ | $ sudo cp pgp_mbox_decrypt /usr/local/bin/ | ||
+ | </code> | ||
+ | |||
+ | Nun kannst du den Befehl ''pgp_mbox_decrypt'' von überall aufrufen. | ||
+ | |||
+ | ==== Deinstallation ===== | ||
+ | |||
+ | Deinstallieren kannst du das Programm dann einfach mit | ||
+ | |||
+ | <code> | ||
+ | $ sudo rm /usr/local/bin/pgp_mbox_decrypt | ||
+ | </code> | ||
+ | |||
+ | ===== Benutzung ===== | ||
+ | |||
+ | Angenommen, deine verschlüsselten Emails befinden sich in der Datei //encrypted.mbox// und du willst die entschlüsselten Emails in //decrypted.mbox// abspeichern, dann kannst du das mit dem folgenden Befehl: | ||
+ | |||
+ | <code> | ||
+ | pgp_mbox_decrypt encrypted.mbox decrypted.mbox | ||
+ | </code> | ||
+ | |||
+ | ===== Export- und Import von mbox-Dateien in Email-Programmen ===== | ||
+ | |||
+ | ==== Evolution ==== | ||
+ | |||
+ | In [[https://wiki.gnome.org/Apps/Evolution/|Evolution]] kannst du Emails im mbox-Format abspeichern, indem du alle gewünschten Emails markierst (das ganze aktuell ausgewählte Postfach kannst du mit STRG+A markieren) und dann //Datei > Speichern als mbox…// auswählst. | ||
+ | |||
+ | Importieren kannst du eine mbox-Datei über //Datei > Importieren//. Bei //Importeurtyp// wählst du dann //Eine einzelne Datei importieren//. Danach wählst du einfach die gewünschte Datei, das mbox-Format sollte automatisch erkannt werden. Als nächstes wählst du das Postfach, in welches die Dateien importiert werden sollen. Beachte dabei unbedingt den folgenden Hinweis. | ||
+ | |||
+ | <WRAP center round important 90%> | ||
+ | **Wähle niemals ein Postfach für den Import, das mit einem Online-Konto verknüpft ist!** Wähle unbedingt ein Postfach im Konto //Auf diesem Rechner//. Andernfalls werden deine entschlüsselten Emails mit einem Email-Server synchronisiert. Das ist dann ungefähr so sicher, als wären sie nie verschlüsselt gewesen. | ||
+ | </WRAP> | ||
+ | |||
+ | |||
+ | ===== Informationen für Entwickler*innen ===== | ||
+ | |||
+ | ==== Standards ==== | ||
+ | |||
+ | Besondere Relevanz haben [[https://tools.ietf.org/html/rfc3156|RFC 3156 (MIME Security with OpenPGP)]] und [[https://tools.ietf.org/html/rfc4880|RFC 4880 (OpenPGP Message Format)]]. | ||
+ | |||
+ | ==== Python ==== | ||
+ | |||
+ | Das Programm ist in Python geschrieben werden. Für das Einlesen und Schreiben der mbox-Dateien wird die Bibliothek [[https://docs.python.org/3/library/mailbox.html#mbox|mailbox]] benutzt. Außerdem wird für das Einlesen der entschlüsselten Emails das Modul [[https://docs.python.org/3/library/email.html|email]] benötigt. Zur Entschlüsselung wird GnuPG mit der Python-Bibliothek [[https://docs.python.org/3/library/subprocess.html|subprocess]] verwendet. | ||
+ | |||
+ | ==== Todos ==== | ||
+ | |||
+ | * Unterstützung des Maildir-Formats | ||
+ | * Graphische Nutzeroberfläche | ||
+ | * Einbindung in Thunderbird? |