Bosshard, Ueli and Stauber, Tobias (2015) frontg8 - Chatsystem mit hohen Anforderungen an die Privatsphäre. Student Research Project thesis, HSR Hochschule für Technik Rapperswil.
frontg8_doku.pdf - Supplemental Material
Download (1MB) | Preview
Abstract
Frontg8 ist ein, aus einer Server- und einer Clientkomponente bestehendes, Chatsystem. Dabei fokussiert sich frontg8 primär auf die anonymisierte Kommunikation zwischen den Anwendern. Um dabei zu gewährleisten, dass die Anonymität gewahrt bleibt muss der verwendete Kanal nicht sicher sein. Deshalb kann die Kommunikation zum Beispiel auch übers Internet erfolgen.
Um die Privatsphäre zu wahren, ist es unerlässlich, jede beteiligte Komponente (Clients und Server) jederzeit vollständig unter eigener Kontrolle zu haben. Jede im System teilnehmende Person verfügt über ein aus öffentlichem Schlüssel (Publickey) und privatem Schlüssel (Privatekey) bestehendes Schlüsselpaar, welches eingesetzt wird um die Kommunikationspartner zu identifizieren und auch dazu die gemeinsamen Geheimnisse zu erarbeiten, welche für das Verschlüsseln und Signieren der Nachrichten verwendet werden.
Um die Anonymität zu wahren, ist es unerlässlich, dass der Server nur so wenig wie möglich über die teilnehmenden Parteien in Erfahrung bringen kann. Durch diese Anforderung entsteht die Limitation, dass der initiale Schlüsselaustausch nicht über den Server durchgeführt werden kann. Die Teilnehmer müssen also ihre Publickeys auf einem anderen Weg (Out-of-Band) austauschen. Wenn zwei Partner ihre Publickeys ausgetauscht haben, erarbeitet frontg8 daraus mittels Diffie–Hellman auf elliptischen Kurven (ECDH) je einen gemeinsamen symmetrischen Schlüssel für die Kryptographie und für das Unterschreiben der Nachrichten.
In Software Engineering 2 – Projekt (SE2P) wurden von uns (Ueli Bosshard, Felix Morgner und Tobias Stauber) bereits ein Server und ein Python-Client umgesetzt. In dieser Studienarbeit (SA) war es nun das Ziel, einen vollumfänglich kompatiblen, auf dem Mobile-Betriebssystem Android lauffähigen, Client zu entwickeln. Im Zentrum der Arbeit stand es, die Privatsphäre zu wahren, sichere Verschlüsselung einzusetzen und eine einfache Bedienung zu ermöglichen. Dazu setzen wir zeitgemässe Verschlüsselungsalgorithmen und aktuelle API-Funktionen ein.
Da Android einige interessante Möglichkeiten anbietet geheime Schlüssel zu speichern und zu verwalten, setzten wir uns im Verlauf der Arbeit intensiv damit auseinander um zu ergründen, ob es die angebotene Funktionalität erlaubt, den von uns gewünschten Funktionsumfang direkt mit Android-Bordmitteln umzusetzen. Das vollendete Produkt ist eine vollumfängliche Android Applikation, welche alle unsere Anforderungen erfüllt und es erlaubt, sichere und voll anonymisierte Kommunikation mit anderen Teilnehmern zu führen.
Item Type: | Thesis (Student Research Project) |
---|---|
Subjects: | Topics > Security Area of Application > Mobile > Mobile App Area of Application > Security Technologies > Operating Systems > Android Technologies > Cryptography Metatags > ITA (Institute for Internet Technologies and Applications) |
Divisions: | Bachelor of Science FHO in Informatik > Student Research Project |
Depositing User: | OST Deposit User |
Contributors: | Contribution Name Email Thesis advisor Steffen, Andreas UNSPECIFIED |
Date Deposited: | 17 Mar 2016 08:50 |
Last Modified: | 17 Mar 2016 08:50 |
URI: | https://eprints.ost.ch/id/eprint/483 |