Seitenkanalangriffe Auflösung schlägt Duplizierung

Zur Abschwächung der indirekten Angreifbarkeit durch Analyse der Feldemission, wurden verschiedene Duplizierungsverfahren vorgeschlagen. Mit hinreichend guter Auflösung und Speichertiefe sind diese Schutzmechanismen überwindbar.

Seitenkanalangriffe müssen durch die Implementierung kryptografischer Verfahren verhindert werden. Anderenfalls kann durch den datenabhängigen Energieverbrauch der Schaltung der geheime Schlüssel einer kryptografischen Berechnung extrahiert werden. Dies wird im Englischen als Differential-Power-Analysis (DPA) bezeichnet beziehungsweise nachfolgend als Leistungsanalyse.

Als ein Teil von mehreren Gegenmaßnahmen können in FPGAs sogenannte DPA-resiliente Logikdesigns als Schutzmaßnahme auf Zellebene verwendet werden, die den datenabhängigen Stromumsatz ausbalancieren, wodurch ein konstanter Stromumsatz erreicht wird; aus diesem sind keine Rückschlüsse auf die Daten mehr möglich. Diese Logikstile basieren häufig auf dualer Logik mit entsprechend doppelter Verdrahtung (Dual-Rail) die zueinander komplementär arbeiten, was auch als true/false Pfad bezeichnet wird. Anders als bei einer einfachen Logik (Single-Rail) wird dabei eine logische 1 als (1,0) und eine 0 als (0,1) kodiert; dadurch ist auf Schaltungsebene beim Wechsel zwischen dual-kodierten 0 und 1 idealisiert der gleiche Stromumsatz garantiert. Die praktische Implementierung dieser Verfahren ist jedoch schwierig, insbesondere auf FPGAs, da die Architektur und Designwerkzeuge nicht für diesen Anwendungsfall ausgelegt sind. Frühere Arbeiten zeigten dennoch einen wesentlichen Sicherheitszuwachs unter Nutzung solcher Logikarten in FPGAs.

Diese Arbeit weist nach, dass das nur für die kontaktbasierte Leistungsanalyse per Tastkopf gilt, zum Beispiel unter Messung des Spannungsabfalls über einen Widerstand außerhalb des zu analysierenden Chips. Im Gegensatz dazu zeigen unsere hochauflösenden Messungen per Nahfeldmikrosonde des elektromagnetischen (EM)-Feldes der Schaltung, dass es möglich ist, lokale Charakteristika der Implementierung für einen Angriff auszunutzen. Das meint zum Beispiel unzureichende Positionierung und Netztopologie. Als Ergebnis ist kaum noch ein Sicherheitsgewinn gegenüber einer einfachen Logik beobachtbar. Zur weiteren Analyse der Eigenschaften von Angriff und Implementierung, wurde ein eigener Positionierer, zur Verbesserung der Standardpositionierung der AES-S-Box, entwickelt. Unterschiedliche Kostenfunktionen für die Positionierung werden mit Hinblick auf die Resilienz gegen EM-Angriffe auf einem Spartan-6-FPGA geprüft und evaluiert.

Einführung

Zu DPA-Angriffen wurde bereits ausgiebig geforscht. Im Ergebnis wurden Gegenmaßnahmen auf unterschiedlichen Abstraktionsniveaus entwickelt, zum Beispiel absichtliches Hinzufügen von Rauschen, eine Verwürfelung (shuffling) der Rechenschritte oder eine Maskierung der verarbeiteten Werte. Im Gegensatz dazu setzen die DPA-resilienten Logikstile auf eine konstante Charakteristik in Bezug auf Strom/Spannung.

Um das zu erreichen gibt es zwei unterschiedliche Ansätze, die vereinfacht formuliert entweder Logik lokal (DRP) oder global (DUP) duplizieren (Bild 1). Ein Bit wird auf komplementärer Verdrahtung (true,false)=(t,f) kodiert, jeder Bit-Flip wird daher von einem inversen Bit-Flip kompensiert. Diese Dopplung birgt aber weitere Fehlerquellen wie Glitches oder voreilige Logikauswertung, zum Beispiel im Fall von OR-Gattern bei denen die Auswertung eines einzelnen Eingangssignals schon ausreichend sein kann um die Ausgabe zu bestimmen. Außerdem sind in der dualen Verdrahtung Asymmetrien in den kapazitiven Lasten kaum zu vermeiden.

Leider ist es so, dass die Auswertung der Verdrahtungseigenschaften per Leistungsanalyse durch die zunehmende Integration von Koppelkondensatoren in den Chip immer schwieriger wird. Eine Alternative stellt die Messung der Feldemissionen dar: Bei der Off-Chip-Messung wird eine Sonde in geringem Abstand zum Chip gehalten,  bei der On-Chip-Messung wird der Chip teilweise geöffnet und die Sonde direkt über der Die-Fläche positioniert; so werden lokale Charakteristika der Platzierung und Verdrahtung auflösbar, was auch als lokale Feldmessung bezeichnet wird.

Unser Beitrag

In der Arbeit wird der On-Chip-EM-Angriff mit der konventionellen Leistungsanalyse auf verschiedenen FPGA-Logik-Implementierungen verglichen –- insbesondere auf Implementierungen mit hoher Positionsdichte und geringen Netzasymmetrien.  Im Ergebnis schneiden solche DRP-Logik-Implementierungen unter lokaler Feldmessung nur geringfügig besser ab, als eine Single-Rail-Logik, die mit Standard Xilinx ISE-Werkzeugen erstellt wurde. Bei der Feldmessung wird eine EM-Sonde mit 150 µm Durchmesser in weniger als 50 µm Abstand zur Chipoberfläche positioniert. Verglichen werden Signalkorrelation, die Transinformation (mutual information) und das SNR anhand der Implementierung einer AES-S-Box auf dem Spartan-6-FPGA.Neben der ISE-Standard-Positionierung wurden Simulated-Annealing-Verfahren, deren Kostenfunktion die Netztopologie und Positionierungsdichte hinsichtlich der Sicherheit optimieren, getestet.
Unsere Ergebnisse zeigen, dass mit steigender Positionierungsdichte die Menge der über die Feldemissionen extrahierbaren Daten leicht sinkt.