Secure Implementation of Cryptographic Algorithms

Lecturer (assistant)
Number0000004154
TypeLecture
Duration2 SWS
TermWintersemester 2020/21
Language of instructionGerman
Position within curriculaSee TUMonline
DatesSee TUMonline

Dates

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:

  1. Implementation of the AES algorithm on a microcontroller
  2. Implementation of a timing attack against RSA
  3. Implementation of a DPA attack against AES
  4. 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.