NUMMER: | 142022 |
KÜRZEL: | mpJavCard |
MODULBEAUFTRAGTE:R: | Prof. Dr.-Ing. Christof Paar |
DOZENT:IN: | Dr.-Ing. Pawel Swierczynski |
FAKULTÄT: | Fakultät für Informatik |
SPRACHE: | Deutsch |
SWS: | 3 |
CREDITS: | 3 |
ANGEBOTEN IM: | unregelmäßig |
PRÜFUNGEN
FORM: | Praktikum, studienbegleitend |
TERMIN: | Siehe Prüfungsamt. |
LERNFORM
Praktikum
LERNZIELE
Nach dem erfolgreichen Abschluss des Praktikums versteht der Studierende folgendeZusammenhänge:
• Authentifizierung (Challenge/Response Protokoll) gegenüber dem Kartenmanager der Java Card zur Verwaltung des Systems
• Erstellen von kryptographischen Java Card Applets
• Aufruf der Funktionen des Hardware Co-Prozessors
• Übertragung und Installation von Java Card Applets ¨
• Ansteuern von Java Card Applets
• Verarbeiten eingehender APDUs sowie Erstellen ausgehender APDUs, usw.
• Umgang mit dem Übertragungsprotokoll in C++
INHALT
In diesem Praktikum erlernen die Teilnehmer den sicheren Umgang mit Java Cards.Diese Smart Cards können spezielle Java Applets auf einem Mikrocontroller ausfuhren. Die ¨
Programmiersprache Java kommt in Millionen von eingebetteten Geräten zum Einsatz, z.B.
in SIM Karten, die den GSM Standard implementieren. Dabei stellen Java Cards die kleinste
aller bekannten Java Plattformen dar. Diese fuhren einen reduzierten Satz von Java Code aus
und bieten eine Schnittstelle zu sicheren kryptographischen Co-Prozessoren (DES, 3-DES, AES,
usw.), welche den Ver- und Entschlusselungsprozess erheblich beschleunigen. Der erste Teil des ¨
Praktikums erläutert Grundlagen über die Funktionsweise und den Aufbau von Java Cards.
Anschließend wird den Teilnehmern vermittelt, wie die Authentifizierung (SCP01/SCP02) gegenüber einer Java Card funktioniert. In einem dritten Schritt erlernen die Teilnehmer das ¨
Erstellen von Java Card Applets, deren Konvertierung und Upload auf die Java Card selbst.
Anschließend wird den Teilnehmern vermittelt wie die eigenes erstellten Java Applikationen
gemäß dem GlobalPlatform Standard selektiert und ausgeführt werden können. Ein Großteil der Programmierarbeiten erfolgt dabei in C++. In einem Abschlussprojekt werden einige sicherheitsrelevante Anwendungen - inklusive einer Blockchiffre - für die Java Card implementiert.
VORAUSSETZUNGEN CREDITS
Keine