TU Darmstadt / ULB / TUprints

Mutating Runtime Architectures as a Countermeasure Against Power Analysis Attacks

Stöttinger, Marc Sebastian Patric (2013)
Mutating Runtime Architectures as a Countermeasure Against Power Analysis Attacks.
Technische Universität Darmstadt
Ph.D. Thesis, Primary publication

[img]
Preview
Text
Thesis.pdf
Copyright Information: CC BY 2.5 Generic - Creative Commons, Attribution.

Download (3MB) | Preview
Item Type: Ph.D. Thesis
Type of entry: Primary publication
Title: Mutating Runtime Architectures as a Countermeasure Against Power Analysis Attacks
Language: English
Referees: Huss, Dr.-Ing. Sorin Alexander ; Sigl, Dr.-Ing. Georg
Date: 8 April 2013
Place of Publication: Darmstadt
Date of oral examination: 20 October 2012
Abstract:

This thesis deals with the study of so-called mutating data paths and their utilization as a countermeasure against power analysis attacks on implementations of cryptographic algorithms. Mutating data paths are conceptually data paths of a circuit, which can change their architecture during runtime without compromising the correctness of the implemented algorithm. The concept of mutating data paths is investigated in this work theoretically and tested on the application examples for use in practice. A FPGA is used as basis platform for the practical implementation, because the platform-specific properties support the core concept of mutating data paths quite well.

Power analysis attacks belong to the class of passive, non-invasive implementation attacks. This type of attack uses the power consumption of an implementation during runtime to extract secret parameters of the cryptographic implementation by exploiting their physical behavior. For these kind of attacks, the device is operated with the implementation of the cryptographic algorithm in normal mode, so that no traces of the attack can be found after the analysis. Essential for this attack is that the adversary knows, which cryptographic algorithm is implemented on the device and that in addition he has access to the power consumption as well as access to the input and output values. It is also essential that the unit with the implementation behaves deterministically, so that the circuit performs the same operations with different input values for every execution in normal operation mode. Exactly at this spot the concept of mutating data paths tries to increase the costs for such an implementation attack in order to make it unattractive for the adversary. Thus, the additional effort to extract the specific parameters of the circuit, being too much or infeasible.

Unlike previous hiding based countermeasures or masking countermeasures the concept of the mutating data paths scramble the circuit of the architecture of the data path, so as to randomize the physical characteristics of the circuit in terms of power consumption and execution time. Instead of randomizing the data for the internal operations, as it is done in case of masking based procedures, the physical properties of the circuit are manipulated. The manipulation of the physical behavior in case of applying mutant data paths is not static but changes continuously, compared to other hiding techniques that also alter the physical behavior of the circuit, for instance dual-rail logic.

Conservatively, various hiding concepts, such as shuffling and noise generation, are used to create such a mutating data path. By the skillful integration of the various processes in the data path, the different hiding techniques are effectively embedded as a countermeasure in an implementation of a cryptographic algorithm. To this end, a design flow for the creation of mutant data paths is proposed and discussed.

Alternative Abstract:
Alternative AbstractLanguage

Diese Doktorarbeit beschäftigt sich mit der Erforschung von so genannten mutierenden Datenpfaden und ihrem Einsatz als Gegenmaßnahme gegen Leistungsanalyseangriffe auf die Implementierungen von kryptographischen Algorithmen. Mutierende Datenpfade sind konzeptionell Datenpfade einer Schaltung, welche während der Laufzeit ihre Architektur ändern können ohne die Korrektheit des implementierten Algorithmus zu kompromittieren. Das Konzept der mutierenden Datenpfade wird theoretisch in dieser Arbeit erforscht und anhand von Anwendungsbeispielen in der Praxis erprobt. Zur praktischen Umsetzung werden als Basisplattform FPGAs verwendet, weil die plattformspezifischen Eigenschaften das Kernkonzept der mutierenden Datenpfade geeignet unterstützen.

Leistungsanalyseangriffe gehören zur Klasse der passiven, nicht invasiven Implementierungsangriffe. Diese Art von Angriff nutzt die Leistungsaufnahme einer Implementierung zur Laufzeit aus, um geheime Parameter der kryptographischen Implementierung über ihr physikalisches Verhalten zu extrahieren. Bei diesen Angriffen wird das Gerät mit der Implementierung des kryptographischen Algorithmus im Normalbetrieb betrieben, so dass keine Spuren eines Angriffs nach Beendigung der Analyse erkennbar sind. Essentiell für diesen Angriff ist, dass der Widersacher weiss, welcher kryptographische Algorithmus im Gerät implementiert ist und dass er neben der Leistungsaufnahme auch Zugriff auf die Eingabe- und Ausgabewerte hat. Ebenso ist essenziell, dass sich das Gerät mit der Implementierung deterministisch verhält, so dass bei jeder Prozedur im Normalbetrieb die Schaltung die gleichen Operationen mit unterschiedlichen Eingabewerten ausführt. Genau dort setzt das Konzept der mutierenden Datenpfade an, um den Aufwand für einen solchen Implementierungsangriff unattraktiv für den Widersacher zu machen, da der zu betreibende Aufwand zum Extrahieren des parameterspezifischen Geheimnis der Schaltung zu groß oder gar unmöglich ist.

Im Gegensatz zu bisherigen Verschleierungs- oder Maskierungsmaßnahmen setzt das Konzept der mutierenden Datenpfade auf eine Verwürfelung der Schaltungsarchitektur des Datenpfades, um so die physikalischen Eigenschaften der Schaltung im Bezug auf die Leistungsaufnahme und die Ausführungszeit zu randomisieren. Es werden nicht wie beim Maskierungsverfahren die zu verarbeitenden Daten für die interne Bearbeitung randomisiert, sondern das physikalisch deterministische Verhalten der Schaltung manipuliert. Im Gegensatz zu manchen anderen Verschleierungsverfahren, welche auch das physikalische Verhalten der Schaltung verändern, wie bei Dual-Rail-Logic, ist die Änderung des physikalischen Verhaltens bei den mutierenden Datenpfaden nicht statisch sondern ändert sich kontinuierlich.

Konservativ betrachtet, werden verschiedene Verschleierungskonzepte, wie zum Beispiel Verwürfelung und Rauschgenerierung, genutzt um so einen mutierenden Datenpfad zu erstellen. Durch die geschickte Integration der verschiedenen Verfahren im Datenpfad können die verschiedenen Verschleierungs-methoden effizient als Gegenmaßnahme in eine Implementierung eines kryptographischen Algorithmus eingebettet werden. Zu diesem Zweck wird ein Entwurfsvorgang zur Erstellung von mutierenden Datenpfaden vorgeschlagen und diskutiert.

German
URN: urn:nbn:de:tuda-tuprints-33741
Classification DDC: 000 Generalities, computers, information > 004 Computer science
600 Technology, medicine, applied sciences > 620 Engineering and machine engineering
Divisions: 20 Department of Computer Science > Integrated Circuits and Systems
Date Deposited: 16 Apr 2013 16:49
Last Modified: 09 Jul 2020 00:19
URI: https://tuprints.ulb.tu-darmstadt.de/id/eprint/3374
PPN: 386275696
Export:
Actions (login required)
View Item View Item