# Mailvelope

Mailvelope ist eine freie Software zur Ende-zu-Ende-Verschlüsselung von E-Mail-Verkehr innerhalb eines Webbrowsers (Firefox, Chromium oder Edge), die sich in bestehende Webmail-Anwendungen („E-Mail-Webseiten“) integriert. Damit können elektronische Nachrichten samt angehängten Dateien auch ohne ein separates, natives E-Mail-Programm (wie Thunderbird) unter Benutzung des OpenPGP-Standards signiert und verschlüsselt werden.
Der Name ist ein Kofferwort aus den Wörtern „Mail“ (englisch für „Post“) und „Envelope“ (englisch für „Umschlag“). Es steht mitsamt Quellcode unter den Bedingungen von Version 3 der GNU Affero General Public License (AGPL) zur Verfügung. Das Herstellerunternehmen Mailvelope GmbH betreibt die Entwicklung mit einem öffentlichen Code-Repository auf GitHub. Die Entwicklung wird vom Open Technology Fund und Internews gefördert.

## Funktionsweise

Mailvelope rüstet Webmail-Anwendungen mit OpenPGP-Funktionalität aus. Die Unterstützung mehrerer populärer Anbieter wie Gmail, Outlook.com, Yahoo, Web.de, GMX, Posteo und anderer sind in Mailvelope bereits vorkonfiguriert und Mailvelope erkennt diese als Webmail-Provider. Die Webmail-Software Roundcube erkennt und unterstützt Mailvelope ab Version 1.2 vom Mai 2016. Weitere Anbieter können optional hinzugefügt (autorisiert) werden. Für Chromium/Chrome besteht über die integrierte Software-Verwaltung „Chrome Web Store“ eine authentifizierte Installationsmöglichkeit. Daneben ist Mailvelope auch für Firefox und Microsoft-Edge als Add-On verfügbar.
Mailvelope arbeitet nach dem 1998 erstmals standardisierten asymmetrischen Verschlüsselungsverfahren OpenPGP. Es ist eine in JavaScript geschriebene Webbrowser-Erweiterung für Firefox oder Chromium (beziehungsweise Chrome). Auf voreingestellten, bzw. vom Benutzer autorisierten Webseiten überlagert es die Seite durch seine Bedienelemente, welche optisch durch eine umgebende Hintergrundgrafik als getrennt von der Webanwendung gekennzeichnet werden. Diese kann zur Erkennung von Imitationen in den Einstellungen individualisiert werden. Für die Verschlüsselung baut es auf die Funktionalität der Programmbibliothek OpenPGP.js, einer freien JavaScript-Implementierung des OpenPGP-Standards. Indem es in einem eigenen Inlineframe läuft, wird sein Code separat von der Webanwendung ausgeführt und diese sollte somit keinen Zugriff auf Klartext haben.
Die in Zusammenarbeit mit United Internet entwickelte Einbindung von Mailvelope über eine API, erlaubt eine tiefergehende Integration zwischen dem Webmail-Dienst und den Mailvelope-Komponenten. Somit kann die Einrichtung und Erzeugung eines Schlüsselpaares mit Hilfe eines Assistenten direkt im Webmailer erfolgen. Mailvelope verwaltet alle OpenPGP-Schlüssel lokal im Browser. Seit Version 3.0 kann eine lokale GnuPG-Installation in die Schlüsselverwaltung von Mailvelope eingebunden werden, sodass Nutzer auf Wunsch native Anwendungen verwenden können.

## Geschichte und Verbreitung

Thomas Oberndörfer begann die Entwicklung im Frühjahr 2012, und am 24. August erschien die erste öffentliche Version 0.4.0.1. Im Zuge der NSA-Affäre rückte ab 2013 unter anderem auch die Frage nach der Sicherheit privater und geschäftlicher E-Mail-Kommunikation mehr in das öffentliche Interesse. Gleichzeitig galt die E-Mail-Verschlüsselung mit OpenPGP als zu kompliziert in der Handhabung bzw. boten die von Privatpersonen vielfach genutzten Webmail-Dienste keine Verschlüsselungsfunktionen an. Dies führte zu diversen Erwähnungen von Mailvelope in der Presse.
Mario Heiderich und Krzysztof Kotowicz von Cure53 unterzogen 2012/2013 eine Alpha-Version einem Sicherheitsaudit. Anhand dessen wurde unter anderem die Separation von der Webmail-Anwendung und ihren Datenstrukturen verbessert. Von derselben Gruppe wurde im Februar 2014 auch die zugrundeliegende Bibliothek OpenPGP.js untersucht. Die im folgenden April erschienene Mailvelope-Version 0.8.0 übernahm die daraus hervorgehenden Korrekturen und brachte Unterstützung für die Signierung von Nachrichten. Im Mai 2014 veröffentlichte iSEC Partners eine Untersuchung der Firefox-Erweiterung. Version 1.0.0 wurde am 18. August 2015 veröffentlicht.
Im April 2015 rüsteten De-Mail-Anbieter ihre Dienste mit einer standardmäßig deaktivierten Option für Ende-zu-Ende-Verschlüsselung auf der Basis von Mailvelope aus, die allerdings nur in Kombination mit Mobile TAN oder elektronischem Personalausweis genutzt werden konnte.
Im August 2015 führten die E-Mail-Dienste von GMX und Web.de Unterstützung für OpenPGP-Verschlüsselung ein und integrierten hierfür Mailvelope über eine API in ihre Webmail-Anwendungen. Diese Wahlmöglichkeit, E-Mails künftig zu verschlüsseln, stand nach eigenen Angaben etwa 30 Millionen Nutzern offen.
Eine Studie von 2015 untersuchte die Benutzerfreundlichkeit von Mailvelope, als Beispiel für einen modernen OpenPGP-Client, und bescheinigte ihm fehlende Massentauglichkeit. Sie riet an, Assistenzfunktionen zu integrieren, Einladungsnachrichten mit Anweisungen an neue Gesprächspartner zu versenden und grundlegende Erklärungstexte zu veröffentlichen. Das Mailvelope-basierte OpenPGP-System von United Internet integriert derartige Funktionen. Eine Untersuchung der Benutzerfreundlichkeit von 2016 befand, dass diese „weitestgehend auch für Laien nachvollziehbar“, bewertet sie aber trotzdem als „verbesserungswürdig“ und sprach von „irritierenden Formulierungen“. Weitere Kritikpunkte waren die fehlende Vermittlung des Konzeptes verschlüsselter E-Mails, schlechte Passwortempfehlungen, fehlendernegativer Abgrenzung des aufdringlicheren nur-transportverschlüsselten-Modus sowie unzureichende Unterstützung der Schlüsselauthentizitätsprüfung gegen mögliche Man-in-the-Middle-Angriffe.
Im Mai 2017 wurde bei einem Sicherheitsaudit durch Posteo eine Schwachstelle in der Firefox-Sicherheitsarchitektur gefunden, durch welche auch Mailvelop kompromittiert wurde. Mit Version 2.0 wurde Posteo an die neue WebExtension-Architektur von Firefox umgeschrieben, durch deren Einführung mit Firefox 57 im November 2017 die Sicherheitslücke geschlossen wurde. Außerdem wurde die Umsetzung der UI-Komponenten komplett neu im Framework React reimplementiert.
Mailvelope wurde in den Jahren 2018/19 im Rahmen einer Initiative des BSI erweitert. Dabei wurde die “Schlüsselverwaltung vereinfacht, und Sicherheit der Software verbessert”. Alle durch ein von SEC Consult durchgeführtes Security Audit zutage geförderten Sicherheitslücken im Mailvelope Quellcode, sowie in der genutzten Programmbibliothek OpenPGP.js, wurden geschlossen. Dem BSI zufolge, bestand ein Ziel des Projektes darin, es den Betreibern von Websites künftig zu ermöglichen, Kontaktformulare anzubieten, um die Nachrichten vom Browser des Nutzers zum Empfänger sicher zu verschlüsseln. Der Import neuer Schlüssel werde HTTPS-verschlüsselt über das WKD-Protokoll (Web Key Directory) abgewickelt. Das BSI dachte als Einsatzfeld für diese Technik vor allem an Ärzte oder Banken.