Entwicklung eines FPGA basierten Triggergenerators für Fehlerinjektionsattacken und Seitenkanalanalysen von Smart Cards

URL
Dokumentart: Bachelor Thesis
Institut: Department Informatik
Sprache: Deutsch
Erstellungsjahr: 2015
Publikationsdatum:
SWD-Schlagwörter: Field programmable gate array
DDC-Sachgruppe: Informatik

Kurzfassung auf Deutsch:

Moderne mikrokontrollerbasierte SmartCards enthalten vertrauliche Algorithmen und Daten. Um diese vor unerlaubtem Zugriff zu schützen, entwickeln SmartCard-Hersteller Sicherheitsfunktionen und Gegenmaßnahmen. Zur Analyse und Verifizierung dieser Schutzmechanismen bedarf es komplexer Messaufbauten. Die an einer Messung beteiligten Komponenten müssen zeitlich präzise, mithilfe digitaler Triggersignale, gesteuert werden, welche abhängig von internen Zuständen der untersuchten SmartCard generiert werden. Zeitgemäße Oszilloskope bieten hierzu die Möglichkeit durch Verknüpfung einzelner Messsignale, über die Definition einer Triggerbedingung, ein Triggersignal zu generieren. Die Triggerbedingung lässt sich jedoch selten aus mehr als vier einfachen Unterbedingungen formulieren und beschränkt sich zusätzlich auf ein Ausgangssignal. Dieses und weitere zur Triggererzeugung eingesetzte Geräte weisen zusammen zwei schwerwiegende Nachteile hinsichtlich der Konfigurierbarkeit auf: Erstens ist die Anzahl der Triggerbedingungen sehr eingeschränkt. Zweitens ist die Konfiguration zeitaufwändig und nicht automatisierbar. Ziel dieser Arbeit ist die Entwicklung eines Triggergenerators, der auf ein spezielles bestehendes System zugeschnitten ist und die Verarbeitung komplexerer Triggerbedingungen, auf Basis digital ausgewerteter Signale, ermöglicht. Zudem soll mit dem Ansatz die Möglichkeit bestehen, mehrere Ausgangssignale gleichzeitig generieren zu können. Zur Realisierung des Triggergenerators bietet sich eine FPGA basierte Entwicklungsplattform an. Kernstück dieser Arbeit ist die Implementierung elementarer Triggerkomponenten, die zur Laufzeit konfiguriert werden können, um zusammen komplexe Triggerbedingungen zu realisieren. Praktische Anwendung findet der Triggergenerator als Komponente eines SmartCard-Lesegeräts. Dort wertet er die Signalleitungen zwischen SmartCard und Lesegerät, hinsichtlich benutzerdefinierter Triggerbedingungen, aus und erzeugt entsprechende Triggersignale. Letztere werden dann beispielsweise verwendet, um eine Seitenkanalanalyse zu starten, einen Angriff zum Auslesen geheimer Daten. Dieser und andere Angriffe werden von SmartCard-Testern durchgeführt, um die Wirksamkeit von Sicherheitsfunktionen und Abwehrmechanismen der SmartCard zu kontrollieren. Ein wichtiger Aspekt dieser Arbeit ist ein modularer Aufbau der Teilkomponenten und einfache Schnittstellen um ein Höchstmaß an Erweiterbarkeit zu gewährleisten.

Kurzfassung auf Englisch:

Modern microcontroller based smart cards contain confidential algorithms and data. For protection against unauthorized access security features and countermeasures are implemented by the smart card developer. Their efficiency is analyzed and verified using complex test setups. The involved measuring instruments must be controlled by precisely timed trigger signals which are generated according to various internal states of a smart card. Modern oscilloscopes provide the required function to combine measuring signals logically by defining multistage trigger conditions to generate trigger signals. In most cases it is, however, not possible to define a multistage trigger condition from more than four subconditions or use more than one trigger output. The goal of development is a triggergenerator which is compatible to a specific existing system and which allows the user to define more complex digitally processed trigger conditions. Several trigger signals shall also be computable simultaneously. For the implementation a FPGA based development platform is conceivable. Core work of this bachelor thesis is the implementation of runtime configurable elementary trigger components which can be combined to realize complex trigger conditions. The triggergenerator will serve as component of a smart card reader. He analyzes signal lines about user-defined trigger conditions and generates appropriate trigger signals. These are subsequently used to start a side-channel analysis, an attack to gain confidential data. These and other attacks are performed by smart card tester to verify the efficiency of security functions and countermeasures of smart cards. An important aspect of implementation is a modular design of the components and their interfaces to ensure the best possible extensibility.

Hinweis zum Urheberrecht

Für Dokumente, die in elektronischer Form über Datenenetze angeboten werden, gilt uneingeschränkt das Urheberrechtsgesetz (UrhG). Insbesondere gilt:

Einzelne Vervielfältigungen, z.B. Kopien und Ausdrucke, dürfen nur zum privaten und sonstigen eigenen Gebrauch angefertigt werden (Paragraph 53 Urheberrecht). Die Herstellung und Verbreitung von weiteren Reproduktionen ist nur mit ausdrücklicher Genehmigung des Urhebers gestattet.

Der Benutzer ist für die Einhaltung der Rechtsvorschriften selbst verantwortlich und kann bei Mißbrauch haftbar gemacht werden.