Secure Implementation of Cryptographic Algorithms
Lecturer (assistant) |
|
---|---|
Number | 0000004154 |
Type | Lecture |
Duration | 2 SWS |
Term | Wintersemester 2024/25 |
Language of instruction | German |
Position within curricula | See TUMonline |
Dates | See TUMonline |
Admission information
Objectives
Nach erfolgreichem Abschluß des Moduls sind die Teilnehmer in der Lage kryptographische Verfahren in eingebetteten Systemen zu implementieren. Des Weiteren sind den Studierenden die Grundlagen der Angriffe bekannt, die auf solche Implementierungen in der Praxis typischerweise durchgeführt werden. Außerdem lernen sie die Prinzipen von zahlreichen Schutzmaßnahmen gegen diese Angriffe kennen.
Das Wissen der Studierenden beschränkt sich nicht auf die Theorie, sondern wurde durch mehrere praktische Übungen an eigenen Programmbeispielen vertieft.
Description
Kryptographische Verfahren und die Geheimhaltung der darin verwendeten privaten Schlüssel stellen die Grundlage der Sicherheit sämtlicher digitaler Systeme dar. Gerade deshalb sind diese Elemente das klassische Ziel von Angriffen in der Praxis. Inhalte dieser Modulveranstaltung sind die Grundlagen der Implementierung von kryptographischen Verfahren in eingebetteten Systemen, die typischen Angriffe auf diese Verfahren sowie entsprechende Schutzmaßnahmen. Die Veranstaltung gliedert sich in folgende Themenblöcke:
1. Einführung: Implementierung kryptographischer Verfahren in eingebetteten Systemen, Angriffsszenarien, Überblick über physikalische Angriffe, Bewertung der Relevanz
2. Angriffe und Schutzmaßnahmen für symmetrische kryptographische Verfahren: Laufzeitangriffe (Timing Attacks), Stromangriffe (Power Analysis Attacks), Fehlerangriffe (Fault Attacks), Schutzmaßnahmen gegen Angriffe
3. Angriffe und Schutzmaßnahmen für asymmetrische kryptographische Verfahren: Laufzeitangriffe (Timing Attacks), Stromangriffe (Power Analysis Attacks), Fehlerangriffe (Fault Attacks), Schutzmaßnahmen gegen die Angriffe
4. Spezialthemen: Diskussion aktueller Forschungsergebnisse
Zu jedem der Themenblöcke sind Hausaufgaben bzw. praktische Übungen im Labor durchzuführen.
Prerequisites
Folgende Module sollten vor der Teilnahme bereits erfolgreich absolviert sein:
Kryptologie oder gleichwertige Grundlagenvorlesung
Teaching and learning methods
Die im Rahmen der Vorlesung vermittelten Kenntnisse werden durch Hausübungen und praktische Übungen im Labor vertieft. Die praktischen Übungen im Labor werden zusätzlich von einem Tutor betreut.
Examination
Die Prüfungsleistung setzt sich aus an die Lernziele angepasste Teilleistungen zusammen:
- Das Verständnis des in der Vorlesung vermittelten Wissens wird mit einer 60-minütigen schriftlichen Prüfung nachgewiesen.
- Zusätzlich werden begleitend zur Vorlesung vier freiwillige praktische Übungen angeboten, die zur Notenverbesserung herangezogen werden können.
Die Endnote ergibt sich zu 100% aus der schriftliche Klausur.
Das erfolgreiche Absolvieren aller freiwilligen praktischen Übungen wird mit einem Bonus von 0,3 auf die Note für das bestandene Modul angerechnet.
Recommended literature
Folgende Literatur wird empfohlen: 1. Cetin Kaya Koc, Cryptographic Engineering, Springer Verlag, 2009 2. Stefan Mangard, Elisabeth Oswald, Thomas Popp: Power Analysis Attacks Revealing the Secrets of Smart Cards, Springer Verlag, 2007 3. Alfred J. Menezes, Paul C. Van Oorschot, Scott A. Vanstone: Handbook of Applied Cryptography, CRC Press, 1996
Links
Additional Information
Offered only in winter semester.
Practical Exercises
During the course, four practical exercises have to be implemented. Each exercise has to be implemented within about one month time. The tasks of each exercise are presented in a tutorial session; topics are:
- Implementation of the AES algorithm on a microcontroller
- Implementation of a timing attack against RSA
- Implementation of a DPA attack against AES
- Implementation of a DFA attack against AES
For the dates of each tutorial session see above. The exercises and additional material can be accessed via Moodle.