Seitenkanalattacke
Eine „Seitenkanalattacke“ (“Side-Channel-Attack”) bezeichnet eine kryptoanalytische Methode, bei der nicht das kryptographische Verfahren selbst, sondern seine physische Implementierung angegriffen wird. Geprägt hat den Begriff der US-Amerikanische Kryptologe Paul C. Kocher im Jahr 1996. Bei Seitenkanalangriffen werden Erkenntnisse aus beobachtbaren physikalischen Effekten bei der Verarbeitung von sensitiven Daten gewonnen. Während sich passive Seitenkanalattacken auf die reine Beobachtung und Analyse der Nebeneffekte beschränkt, greifen aktive Seitenkanalattacken direkt in den Ablauf oder die Funktion eines Geräts ein. Mittels Seitenkanalattacken werden bestimmte Parameter des den Algorithmus ausführenden Systems gemessen, z.B.
- die Bearbeitungsdauer (“Rechenzeitangriff” / “Timing-Attack”)
- die Speichernutzung
- die Leistungsaufnahme (“Simple Power Analysis” SPA, “Differential Power Analysis” DPA)
- die elektromagnetische Abstrahlung (“Tempest”)
- die Geräuschemmission
- die Reaktion auf falsche Eingaben
- die Reaktion auf herbeigeführte fehlerhafte Betriebsbedingungen (“Differential Fault Analysis” DFA, “Glitch-Attack”)
- die Ausnutzung fehlerhaft implementierter Funktionen (“Bug-Attack”)
Aus den ermittelten Parametern werden Informationen über den Programmfluss extrahiert, die das Brechen des Verfahrens (oder eines bestimmten Schlüssels) vereinfachen. Typische Maßnahmen gegen Seitenkanalangriffe sind:
- elektromagnetische Abschirmung der Geräte
- physikalische Maßnahmen gegen Schall- und Wärmeabstrahlung
- Angleichung von Laufzeiten unterschiedlicher Prozesse durch Einfügen von Redundanzen
- Erzeugen von Laufzeiten, die von Zufallsfunktionen abhängig sind
- Einfügen von physikalischen und logischen Rauschfunktionen
- eingabeunabhängige Ausführung von Code
- identische Reaktionen auf fehlerhafte Eingaben.