In der Vorlesung "Physical Attacks and Countermeasures" werden wir uns mit physikalischen Angriffen auf kryptografische Implementierungen befassen. Dazu starten wir mit einer Einführung in die Designprozesse von Hardwaredesigns und sprechen über unterschiedliche Implementierungsstrategien für den Advanced Encryption Standard (AES). Anschließend besprechen wir kurz Implementierungsangriffe, welche Laufzeitunterschiede ausnutzen. Danach werden wir uns intensiv mit Seitenkanalanalysen beschäftigen, welche Unterschiede im Stromverbrauch von eingebetteten System ausnutzten. Hier beginnen wir mit einfachen Angriffen und schauen uns anschließend anspruchsvollere Angriffsmethoden an. Nachdem wir diesen Angriffsvektor im Detail verstanden haben, werden wir uns gängige Gegenmaßnahmen anschauen und diese im Detail analysieren.
Ein weiterer wichtiger Angriffsvektor stellt die Fehlerinjektion dar. Hier versucht ein Angreifer in eine Verschlüsselung oder Entschlüsselung einen Fehler zu injizieren, um die fehlerhaften Ausgaben zu nutzen, um etwas über das Schlüsselmaterial zu lernen. Wir schauen uns verschiedene Fehlermechanismen an und versuchen zu verstehen, warum und wie diese Methoden funktionieren. Anschließend lernen wir unterschiedliche Analysemethoden, die uns ermöglichen, den geheimen Schlüssel zu extrahieren. Auch hier werden wir im Anschluss geeignete Gegenmaßnahmen betrachten und diese auf ihre Wirksamkeit analysieren.
Da das Lernen von physikalischen Angriffen sehr praxisnah ist, sollen die Studierende selber Angriffe implementieren und durchführen. Dafür werden in der Vorlesung spezielle Boards ausgeteilt, welche mit einem Mikrocontroller und kleinem Oszilloskop ausgestattet sind, sodass Seitenkanalangriffe in den Übungen selbständig durchgeführt werden können.
- Kursleiter/in: Jan Richter-Brockmann