- Institute of Operating Systems and Computer Networks
- News
- About us
- Connected and Mobile Systems
- Distributed Systems
- Algorithms
- Microprocessor Lab
- Education
- Services
- Spin-Offs
- Research Cooperations
Softwareentwicklungspraktikum: SSH Agent on Android
Semester | |
IBR Group | CM (Prof. Wolf) |
Type | Lab |
Lecturer | |
Assistants | Martin Wegner Ehemaliger Wissenschaftlicher Mitarbeiter |
Hiwi | Linda Fliss |
Time & Place | Übungstermine am IBR
|
Start | 03.04.2017 |
Attendees | Studierende der Informatik, Wirtschaftsinformatik und Informations-Systemtechnik im vierten Semester |
Content | EinleitungSSH bezeichnet ein Netzwerkprotokoll mit dem man auf eine sichere Art und Weise eine verschlüsselte Netzwerkverbindung mit einem entfernten Gerät herstellen kann. Häufig wird diese Methode verwendet, um lokal eine entfernte Kommandozeile verfügbar zu machen, das heißt, auf einer lokalen Konsole werden die Ausgaben der entfernten Konsole ausgegeben und die lokalen Tastatureingaben werden an den entfernten Rechner gesendet. SSH auf LinuxWie in Abbildung 1 zu sehen, gibt es unter Linux hierfür den "ssh"-Client und "sshd"-Server-Daemon. Neben einer Passwort-basierten Authentisierung, können auch sogenannte Public-Key-Verfahren genutzt werden. Die Verwaltung solcher Schlüssel findet traditionell im "ssh-agent" statt. Man kann aber auch einen anderen SSH Agent einstellen und die Schlüssel beispielsweise von GnuPG durch den "gpg-agent" verwalten lassen. Abbildung 1: SSH Agent auf Linux SSH auf AndroidUnter Android existiert mit ConnectBot eine der wichtigsten quelloffenen SSH-Client-Implementierungen. Eine sehr gute proprietäre Alterantive ist JuiceSSH, von dem man sich weitere Features abgucken könnte. In ConnectBot findet die Verwaltung von Schlüsseln in ConnectBot selber statt. Im Moment gibt es keine Möglichkeit andere Apps als SSH Agent zu nutzen (siehe Abbildung 2). Abbildung 2: Aktuelle Android-Implementierung Ziel dieses SEPIn diesem SEP soll ConnectBot so erweitert werden, sodass andere Apps als SSH Agent genutzt werden können. Des Weiteren sollen zwei SSH Agents implementiert werden, wie in Abbildung 3:
Abbildung 3: Ziel dieses SEP AblaufDie Anzahl an Codezeilen in diesem SEP wird im Vergleich zu anderen Projekten eher gering ausfallen. Stattdessen muss man sich hier mehr Hintergrundwissen aneignen als in anderen Projekten. Außerdem soll der produzierte Code in die Originalprojekte zurückfließen und veröffentlicht werden. Ihr arbeitet also an "Real-World Source Code". Damit die Komplexität zu meistern ist, schlage ich folgendes Vorgehen vor:
Anmerkung zur Nutzung SVN/GitDer von euch erstellte Code und die Dokumente müssen im SVN des ISF verwaltet werden. Nur für die Pull Requests an ConnectBot und OpenKeychain soll Git verwendet werden. |
Schedule | 09.02.2017, 13:15 Vorstellung der Projekte (PK 2.2) 03.04.2017, 13:00 IBR: Kick-off (IZ 105) 19.04.2017, 23:59 Abgabe Angebot 10.05.2017, 23:59 Abgabe Pflichtenheft und Abnahmetestspezifikation 12.05.2017, 23:59 IBR-CM: Abgabe Folien 24.05.2017, 15:00 Zwischenpräsentation Prototyp (IZ 160) 31.05.2017, 23:59 Abgabe Fachentwurf 21.06.2017, 23:59 Abgabe Technischer Entwurf 05.07.2017, 23:59 Abgabe Testdokumentation 11.07.2017, 23:59 IBR-CM: Abgabe Poster zum Druck 13.07.2017, 13:00 Tag der jungen Software Entwickler (TDSE) |
References | Dokumente The material is only available to registered attendees. In order to register, you need either an IBR POSIX account or a self-activated IBR-y-account. Afterwards you can login to this site. Chapter Slides Movies Audio Exercises Kick-Off ![]() ![]() ![]() SVN-Einfuehrung ![]() ![]() ![]() |