Kryptosystem auf Basis der 8-bit-Mikrokontroller-Familie uPSD von STMicroelectronics

Fraktales Verschlüsselungssystem

15. November 2006, 16:17 Uhr | Herbert Golawski
Diesen Artikel anhören

Fortsetzung des Artikels von Teil 1

Physikalischer Schutz

Hinweise auf mögliche physikalische Angriffsmethoden finden sich in der Literatur, insbesondere Angriffe durch Auswerten der Störsignale auf der Stromversorgungsleitung des Chips oder durch gezielte Veränderungen des Systemtaktes, um die Bearbeitung des Programmcodes zu stören.

Ein physikalischer Schutz kann mit Hilfe des controllerinternen Pulsweitenmodulators (PWM) aufgebaut werden, indem die Pulsweite des PWM-Signals quasizufällig moduliert und an eine externe Last gelegt wird. Damit wird eine zusätzliche, stochastische Belastung der Stromversorgung des Kryptosystems erreicht. Als Quelle für die quasizufällige Pulsweite wird ein eigener Zufallszahlengenerator mit langer Periode eingesetzt. Durch diese Maßnahme werden dem Versorgungsstrom Störimpulse hinzugefügt, deren quasizufällige Amplitude und Periodizität abgestimmt sind auf die entsprechenden Parameter der verschiedenen Kernroutinen des Verschlüsselungsalgorithmus während der Verarbeitung von Daten. Die Analyse von Stromimpulsen auf der Versorgungsleitung zum Kryptosystem wird auf diese Weise erschwert oder sogar unmöglich gemacht.

Der Schutz wird durch ein flächig ausgeführtes Tiefpassglied, als Last am PWM-Ausgang angeschlossen, erweitert (Bild 4). Das Ausgangssignal des Tiefpasses wird über den ADU in gleichbleibendem zeitlichem Abstand nach einer Änderung des PWM-Ausgangssignals gemessen. Das hat im ungestörten Fall ein festes Verhältnis zwischen dem Stellwert des PWM-Signals und dem digitalisierten Ausgangssignal des Tiefpasses zur Folge (Korrelation). Die Einschwingcharakteristik des Tiefpasses muss die Änderungsperiode des PWM-Signals und die Verzögerungszeiten bei der Analog/Digital-Umsetzung berücksichtigen.

Als mögliche Störungen der Korrelation kommen die Beschädigung des flächig ausgeführten, den Mikrocontroller ummantelnden Tiefpasses ebenso in Frage wie die einfache Berührung der kapazitiv wirksamen Flächen oder die Bestrahlung mit hochenergetischen Teilchen. Wird die Korrelation zwischen Eingangs- und Ausgangssignal durch physikalische Angriffe auf das System gestört, so kann dies im Mikrocontroller nach einer Plausibilitätsprüfung als Störung interpretiert werden. Die Veränderung des gemessenen Ausgangssignals muss durch Wiederholungsmessungen und Bewertung der Abweichung einwandfrei als Störung erkannt und kategorisiert werden. Das weitere Verhalten des Verschlüsselungsalgorithmusses kann aus der Bewertung abgeleitet werden und beispielsweise mit dem Abbruch der Verschlüsselungssitzung oder mit dem Versenden einer Warnmeldung reagieren. Materialien, die sich zusätzlich für das Detektieren von hochenergetischer Strahlung eignen, sollten bei Bestrahlung eine Spannung erzeugen, die bei richtiger Dimensionierung unabhängig vom stationären Signalfluss am Ausgang des Tiefpasses zu einer Veränderung des Messsignals führt.

Da die Signalerzeugung im Mikrocontroller erfolgt, kann diese von außen nicht imitiert und bei einem physikalischen Angriff also auch nicht kompensiert werden. Voraussetzung dafür ist, dass keinerlei Rückschlüsse auf den benutzten Zufallszahlengenerator und die aktuelle Initialisierung durch Beobachtung des Ausgangssignals möglich sind. Wäre die Pulsabfolge bekannt, dann könnte diese von außen, unabhängig von den Übertragungseigenschaften am Eingang des A/D-Umsetzers, eingespeist werden und damit bliebe eine physikalische Attacke auf die Hardware unentdeckt.

Prinzipiell können auch kurzzeitige Unterbrechungen der Versorgungsspannung oder gezielte impulsförmige Änderungen der Taktrate erkannt werden, da sie die zeitabhängig gespeicherte Energiemenge und damit das Ausgangssignal des Tiefpasses verändern. Derartige Angriffsmethoden dienen dazu, die Abarbeitung des Programmcodes bei gleichzeitigem Messen des Versorgungsstromes gezielt zu stören. Eine Analyse der Messwerte bei gezielter Änderung des aktuellen Schlüssels ermöglicht das bitweise Brechen des geheimen Schlüssels [8 S. 151, 10, 11].

Das externe Tiefpassglied kann als vollständige Ummantelung des Mikrokontrollers flächig ausgeführt werden (Bild 4). Lediglich die Versorgungsspannungs- und Kommunikationsanschlüsse des Kryptosystems sind aus Sicherheitsgründen von außen zugänglich.

507ek044_03.jpg
Bild 4. Eine Realisierungsvariante für ein Kryptosystem – basierend auf einem Mikrocontroller mit USB-Anschluss –, das zum Schutz vor „Öffnung“ von einem Tiefpass umhüllt ist.

Der Verschlüsselungsalgorithmus AES kann ohne größere Probleme auf dem Mikrocontroller uPSD 3234 eingerichtet werden. Zusätzlich benötigte, externe Komponenten wurden im Entwurf auf ein Minimum beschränkt, sodass die Voraussetzungen für ein geschlossenes Kryptosystem gewahrt bleiben. Mit dem Kryptosystemprototypen lassen sich Daten von und zum Mikrocontroller transferieren, die Kryptoroutinen neu parametrisieren und Testfunktionen starten. Ein Teil der eingerichteten Testfunktionen sind Standardtestfunktionen und wurden der Referenzimplementation des AES-Rijndael entnommen.

Der Prototyp des Kryptosystems (Bild 5) enthält kein Sitzungsprotokoll für den sicheren Austausch von Initialisierungsdaten und eignet sich deshalb in der vorliegenden Ausbaustufe noch nicht für den Einsatz als Kryptosystem. Ein entsprechend ausgelegter und abgesicherter Austausch von Sitzungsparametern muss für eine vollständige Funktion des uPSD als Kryptosystem durch weitere Verfahren sichergestellt werden.

Detaillierte Analysen und Prüfungen zum neuen Einmalschlüsselverfahren und dem physikalischen Schutzmechanismus sind noch notwendig. Insbesondere muss durch gezielte Kryptoanalyse sichergestellt werden, dass es unmöglich ist, anhand mitgeschnittener Daten auf das verwendete Schlüsselgenerierungsverfahren zurückzuschließen. Beide neuen Verfahren, das Einmalschlüsselverfahren auf fraktaler Berechnungsbasis und der Vorschlag für den physikalischen Schutz eines mikrocontrollerbasierten, geschlossenen Kryptosystems, sind zum Patent angemeldet.

507ek045_03.jpg
Bild 5. Der prämierte Prototyp des AES-Kryptosystems, auf dem das Einmalschlüsselverfahren mit fraktaler Berechnung implementiert wurde. (Bild: Elektronik)

[1]Müller, M.: IT-Security in Fahrzeugnetzen. Elektronik Automotive 2004, H. 4, S. 54 – 59.
[2]Vortrag Fa. Escrypt Bochum: Sichere Datenkommunikation im Automobil. Design und Elektronik Entwicklerforum: Drahtlose und drahtgebundene Netzwerke für die Industrie und Automotive, München, Juli 2004.
[3]Federal Information Processing Standards Publication 197 (NIST FIPS PUB 197), 2001. http://csrc.nist.gov/publications/fips/fips197/fips-197.pdf
[4]Backhus, E.; Würfel, H.; Riesener, O.; Wolter, St.: AES in FPGAs. Elektronik 2003, H. 8, S. 54 – 61.
[5]AES Proposal, The Rijndael Block Cipher. Rijndael Documentation, Version 2, September 1999, http://csrc.nist.gov/CryptoToolkit/aes
[6]www.esat.kuleuven.ac.be/~rijmen/rijndael
[7]Daemen, J.; Rijmen, V.: The Design of Rijndael. Springer Verlag, 2002
[8]Wobst, R.: Abenteuer Kryptologie, Methoden, Risiken und Nutzen der Datenverschlüsselung. Addison Wessley, Bonn, 3. Auflage 2001.
[9]OMB Guidance to Federal Agencies on Data Availability and Encryption. http://csrc.nist.gov/policies/ombencryption-guidance.pdf
[10]Kocher, P.; Jaffe, J.; Jun, B.: Introduction to Differential Power Analysis and Related Attacks. Cryptography Research, San Francisco, 1998.
[11]Anderson, R.; Kuhn, M.: Tamper Resistance – A Cautionary Note. Usenix Electronic Commerce workshop, Oakland California, Nov 1996.
[12]Dufner, J.; Roser, A.; Unseld, F.: Fraktale und Julia-Mengen. Verlag Harry Deutsch, 1998.
[13]Marsaglia, G.: http://stat.fsu.edu/pub/diehard, 1997.
[14]NIST Statistical Testsuite, http://csrc.nist.gov/rng/rng2.html
[15]van Tilborg, H.: Fundamentals of Cryptology. Kluver Academic Publishers, Second Printing, 2001.
[16] http://mcu.st.com/inchtml-pages-upsd.html

Dipl.-Ing. Herbert Golawski studierte Elektrotechnik an der RWTH Aachen mit dem Schwerpunkt Festkörperelektronik. Nach dreijähriger Tätigkeit in der Messelektronikentwicklung folgten vier Jahre als IT-Berater für Systemintegration und Netzwerke. Seit 1999 arbeitet er in der Qualitätssicherung der T-Mobile Deutschland. Nebenberuflich entwickelt Herbert Golawski Mikrocontrollersysteme.
E-Mail: herbert.golawski@t-online.de

Verwandte Artikel:


  1. Fraktales Verschlüsselungssystem
  2. Physikalischer Schutz
  3. Implementation des Kryptosystemprototypen auf dem uPSD3234
  4. Symmetrischer Blockverschlüsselungsalgorithmus AES-Rijndael

Jetzt kostenfreie Newsletter bestellen!