Bearbeiter | (nur für Mitarbeiter:innen einsehbar) |
Betreuer | Dr. Dominik Schürmann |
Professor | Prof. Dr.-Ing. Lars Wolf |
IBR Gruppe | CM (Prof. Wolf) |
Art | Bachelorarbeit |
Status | abgeschlossen |
EinleitungDie meisten der weit verbreiteten Messaging-Anwendungen unter Android bieten keine Ende-zu-Ende-Verschlüsselung und somit keine Sicherheit gegenüber Abhörung oder Veränderung durch Dritte. WhatsApp, LINE, Google Hangout und ähnliche Anwendungen sind Closed-Source-Programme und bieten somit keine Möglichkeit Verschlüsselungsmethoden einzubinden. Es fehlen außerdem Programmschnittstellen, bzw. existierende APIs bieten keine Möglichkeiten Nachrichten vor dem Versand oder nach dem Versand zu bearbeiten. Dennoch existiert eine Methode Verschlüsselung und Integrität in diese Programme zu integrieren, zu der bisher aber keine veröffentlichten Anwendungen in Google Play existieren. Das Android-Betriebssystem erlaubt eigene benutzerdefinierte Bildschirmtastaturen zu programmieren. Diese könnten also eingesetzt werden um eingegebenen Text zu verschlüsseln. Des Weiteren ist es möglich die Zwischenablage unter Android zu verwalten, was eine Entschlüsselung von zwischengespeichertem Text erlaubt. DetailsEine Bildschirmtastatur soll programmiert werden in der Texte wie in der normalen Android-Tastatur eingegeben werden können. Die Eingabe soll hierbei aber nicht direkt an die Programme weitergegeben, sondern erst in der Tastatur zwischengespeichert werden. Das Drücken eines zusätzlichen Buttons soll die Eingabe übernehmen, verschlüsseln und an die Anwendung, wie beispielsweise WhatsApp, weitergeben. Die Entschlüsselung soll über einen anderen Kniff realisiert werden. Ab Android 3.0 können Clipboard-Listener registriert werden, die die Tastatur-Anwendung benachrichtigen sobald neuer Inhalt kopiert wurde. In einem Background-Service kann hier auf verschlüsselten Inhalt gewartet, dieser entschlüsselt und anschließend wieder in unserer Tastatur angezeigt werden. Der Benutzer muss somit verschlüsselte eingehende Nachrichten nur in die Zwischenablage kopieren um sie zu Entschlüsseln (Unter WhatsApp geht dies recht einfach: Long-Click auf die Nachricht und einen einfachen Linksklick auf "kopieren"). Bei dem Projekt kann auf eine API zurückgegriffen werden, die alle nötigen kryptografischen Operationen und das benötigte Key-Management zur Verfügung stellt. Vorzugsweise sollte hierbei das Open-Source-Projekt "OpenPGP Keychain" verwendet werden. Zur Durchführung der Arbeit gehört die Entwicklung der Keyboard-Anwendung zur Verschlüsselung und eines Background-Services zur Entschlüsselung. Ein Hauptaugenmerk liegt hier neben der technischen Realisierung des Background-Services und der Nutzung einer kryptografischen API, auf dem User Interface. Es sollte eine Anwendung entstehen, die so intuitiv wie möglich benutzbar sein soll und sich an die Android Design Guidelines hält. Alle weiteren Details können wir dann bei einem Gespräch festlegen. AnforderungenFür die Arbeit sind gute Kenntnisse in Java und objektorientierter Programmierung erforderlich. Erfahrung in der Programmierung unter Android ist hilfreich. Bei Interesse schicke bitte eine E-Mail an Dr. Dominik Schürmann und füge die folgenden Informationen hinzu:
|