Praktikum im WS 2005/2006
Lehrveranstaltung Kryptographie und Public Key Infrastrukturen
Veranstaltungsform: P4
Hochschullehrer: Prof. J. Buchmann / M. Lippert / A. Wiesmaier
R. Weinmann / K. Schmidt-Samoa / K. Wirt
D. Schepers
Ort / Zeit: ./.
Voraussetzungen: Grundkenntnisse in Java und Kryptographie
Anmeldung: Das Praktikum und die Warteliste sind voll belegt.
Sie können Sich weiter per Email an
krypto-praktikum@cdc.informatik.tu-darmstadt.de
anmelden, allerdings sind die Chancen auf einen
Praktikumsplatz sehr gering.
Anmeldungsmodalitäten: Das Praktikum ist auf voraussichtlich 20 Plätze
beschränkt. Diese werden in der Reihenfolge der
Anmeldung vergeben. Wir führen eine Warteliste,
da eventuell noch weitere Themen vergeben werden
können.
Vorbesprechung: Dienstag, 18.10., ab 14:00 Uhr in Raum C2|02 - 205
Turnus: jedes Semester
Inhalt:
Mit der wachsenden Bedeutung der elektronischen Kommunikation im privaten und öffentlichen Bereich entsteht zunehmend die Notwendigkeit, Daten sicher, d.h. geheim, authentisch und vertraulich, zu speichern und zu übertragen.
In diesem Praktikum werden ausgewählte Themen aus den Bereichen Public-Key Infrastrukturen (PKI) und kryptographische Verfahren sowie Protokolle behandelt.
Beispiele aus diesen Bereichen sind effiziente Implementierung von Chiffren, Hashfunktionen, Signaturverfahren usw., Einbindung kryptographischer Primitive in Anwendungen, Verwendung kryptographischer Hardware wie Smart Cards.
Voraussetzungen:
Kenntnisse der entsprechenden Programmiersprache sind bei den Programmieraufgaben Voraussetzung. Kenntnisse in IT-Sicherheit und Kryptographie sind von Vorteil.
Welche Kenntnisse vermittelt das Praktikum?
Die Fähigkeit, eine professionelle Aufgabe aus den genannten Bereichen in einem Team erfolgreich nach Vorgabe zu bearbeiten und die Ergebnisse angemessen zu präsentieren. Der Schwerpunkt ergibt sich aus der konkreten Aufgabenstellung. Beispiele sind:- Verständnis für die Probleme, die bei der praktischen Entwicklung von sicherheitsrelevanter Software auftreten
- Effiziente Programmierung
- Lesen und Verstehen von wissenschaftlicher Literatur und technischer Dokumentation aus dem Anwendungsgebiet
- Programmieren und Dokumentieren komponentenbasierter, wiederverwendbarer Software (Java, C, C++ UML, Java-Beans)
- Authentifikationsmechanismen und Protokolle (SSL / TLS)
- Zertifikats- uns Schlüsselmanagement in einer PKI (LDAP)
- Profiling und Beseitigung von Bottle Necks
Liste der Themen
| Nr. | Thema | Beschreibung | # Plätze |
|---|---|---|---|
| 1 | Stromchiffren | Implementierung von Stromchiffren (symmetrische Verschlüsselungsverfahren) für den FlexiProvider. Implementierung in Java. Der Schwerpunkt liegt hierbei auf einer effizienten Implementierung und weniger auf einem schönen objektorientierten Design. Natürlich muss die Implementierung die Aspekte des Frameworks Java Cryptographic Architecture (JCA) erfüllen. | 4 |
| 2 | PKI-Roaming | Implementierung eines Plugins für Mozilla und/oder Internetexplorer. Das Plugin soll private Schlüssel und Zertifikate, die auf einem Server gespeichert sind, in diesen Anwendungen zur Verfügung stellen, ohne die entsprechenden Datenobjekte auf der Client-Plattform zu speichern. Implementierungssprache ist C/C++. | 4 |
| 3 | OpenPGP in Java | Implementierung des OpenPGP-Standards in Java. OpenPGP ist ein Standard der IETF. Der Schwerpunkt dieses Praktikums liegt daher weniger auf dem Design der Schnittstellen als auf der Implementierung. | 3 (ein Platz schon vergeben) |
| 4 | OpenSource IKEv2 | Implementierung des Internet Key Exchange Protokolls in der Version 2. Die Implementierungssprache ist nicht vorgegeben. Wegen der starken Interaktion mit dem Betriebssystem ist jedoch C/C++ ratsam. Außerdem schließt das interpretierte Sprachen sowie Sprachen, bei denen die Programme in einer virtuellen Maschine abgeabrbeitet werden (z.B. Java), weitgehend aus. | 2 (zwei Plätze schon vergeben) |
| 5 | Beispiel-Code für den FlexiProvider | vergeben | |
| 6 | Erweiterung von OpenSC | vergeben |
Einordnung in Studienplan und Prüfungsordnung:
Das Praktikum richtet sich vor allem an Studenten der Informatik, Wirtschaftsinformatik, Mathematik, Elektro- und Informationstechnik ab 5. Semester, auch für LaG


