Kryptosystem auf Basis der 8-bit-Mikrokontroller-Familie uPSD von STMicroelectronics Fraktales Verschlüsselungssystem

Für den Mikrocontroller-Wettbewerb von STMicroelectronics und der Elektronik wurde ein billiges Kryptosystem mit dem 8-bit-Mikrocontroller uPSD3234 aufgebaut, das den symetrischen Blockverschlüsselungs-Algorithmus AES-Rijndael nutzt. Um die besondere Eignung der uPSD-Prozessoren für geschlossene Kryptosysteme zu zeigen, wurde zusätzlich ein neues, wartbares Einmalschlüsselverfahren sowie ein neuer physikalischer Schutzmechanismus neben einigen Standardtestfunktionen mit der Entwicklungsumgebung für den uPSD realisiert.

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

Für den Mikrocontroller-Wettbewerb von STMicroelectronics und der Elektronik wurde ein billiges Kryptosystem mit dem 8-bit-Mikrocontroller uPSD3234 aufgebaut, das den symetrischen Blockverschlüsselungs-Algorithmus AES-Rijndael nutzt. Um die besondere Eignung der uPSD-Prozessoren für geschlossene Kryptosysteme zu zeigen, wurde zusätzlich ein neues, wartbares Einmalschlüsselverfahren sowie ein neuer physikalischer Schutzmechanismus neben einigen Standardtestfunktionen mit der Entwicklungsumgebung für den uPSD realisiert.

Ein Verschlüsselungssystem auf einem 8-bit Mikrocontroller erreicht nur einen kleinen Bruchteil der heute gängigen Datenraten. Dennoch besteht für die 8-bit-Mikrocontroller ein Aufgabenfeld bei der Sicherung kleiner Informationsmengen. Betroffen sind unter anderem Marktsegmente, bei denen es auf geringe Kosten und einfache Integration ankommt. Moderne Derivate der 8-bit-Mikrocontrollerfamilien verfügen über einen großen internen, wiederbeschreibbaren, nichtflüchtigen Speicher (Flash-EPROM), der auch beim Abschalten der Versorgungsspannung sicherheitsrelevante Daten eines Kryptosystems risikoarm aufbewahrt. Wird ein Kryptosystem auf einem Mikrocontroller moderner Bauart mit integriertem Programm und Datenspeicher implementiert, erhält man ein weitgehend geschlossenes System. Das allein erhöht die erreichbare Sicherheit deutlich, da die Anzahl und Zugänglichkeit äußerer Schnittstellen im Design vorgegeben sind und einer gezielten Kontrolle unterworfen werden können.

Anwenden kann man derartige Kryptosysteme beispielsweise zur Verschlüsselung der Kommunikation dezentraler Fernwartungssystemene über öffentliche Netzwerke, die kleine sicherheitsrelevante Datenmengen an einen zentralen Rechner kostengünstig übertragen. Außerdem können sie bei Smartcards eingesetzt werden, deren Hauptaufgabe es ist, den Benutzer zu authentifizieren oder einen Zugang zu autorisieren. Sichere Speicherung personenbezogener Schlüsseldaten und ein fehlerfreier Datentransfer stehen dabei im Vordergrund. In die Sicherheitsanforderungen moderner Automobile der Oberklasse können diese Kryptocontroller ebenfalls vorteilhaft einbezogen werden. Zugriffe auf elektronisch hinterlegte, individuelle Konfigurationsdaten für den persönlichen Fahrkomfort oder zur Kontrolle der Fahreigenschaften bei Wartungsarbeiten oder der Fehlerdiagnose bergen ein Sicherheitsrisiko, das mit solch einem authentifizierenden Kryptosystem minimiert werden kann [1, 2].

Die Sicherheit eines mikrocontrollerbasierten Kryptosystems erhöht sich erheblich, wenn es als geschlossenes System betrieben wird. Mikrocontrollerbasierte Kryptosysteme benötigen sehr wenige externe Komponenten und können sogar auf eine eigene, unabhängige Energiequelle verzichten, wenn sie über ein integriertes Flash-EPROM in der Lage sind, Daten permanent zu speichern. Da Zugriffe auf externe Komponenten, wie etwa Speicherbausteine, nicht erfolgen, werden die Angriffsmöglichkeiten potentieller Angreifer verringert oder ausgeschlossen. Eingesetzt als Zugangskontrolle, lassen sich viele Personen mit unterschiedlichen, intern hinterlegten Schlüs-seln mit nur einem Kryptosystem authentifizieren. Eine solche Anwendung für multifunktionale, wiederverwendbare und übertragbare Schlüssel könnte zum Beispiel ein erweiterter Hotelschlüssel sein, der nicht nur die Zimmertür öffnet, sondern auch das Betreten des Hotels und die Nutzung kostenpflichtiger Einrichtungen ermöglicht, wie z.B. hoteleigener Schließfächer. Leistungen können so gezielt und automatisch über die Authentifikationsfunktion des Kryptosystems auf die Hotelrechnung gebucht werden. Gleichzeitig wird der Benutzer bei Verlust oder Diebstahl des elektronischen Schlüssels vor Missbrauch geschützt.

Der für das Kryptosystem eingesetzte Mikrocontroller uPSD3234 von STMicroelectronics weist integrale Eigenschaften auf, die sich für den Aufbau eines kleinen, geschlossenen Kryptosystems besonders gut eignen (Bild 1). Die uPSD-Architektur umfasst einen 8032 Mikrocontrollerkern mit einer Reihe von Zusatzfunktionen wie Analog/Digital-Umsetzer (ADU) und Pulsweiten-Modulator (PWM) sowie eine Reihe von Standard-E/A-Schnittstellen – USB (Universal Serial Bus), UART (Universal Asynchronous Receiver Transmitter), I2C (Inter IC Communication). Außerdem verfügt der Mikrocontroller über einen großen Programmspeicher von maximal 256 Kbyte Flash-EPROM, der problemlos neben einer Applikations-Software auch die Verschlüsselungs-Software aufnehmen kann. Eine Besonderheit dieses Mikrocontrollers ist die Fähigkeit zu In-Application-Programming (IAP). Damit lassen sich Konfigurationseinstellungen, Teile des Schlüssels oder ganze Programmteile während des Programmlaufs verändern und gleichzeitig dauerhaft speichern.

Ein neues Einmalschlüsselverfahren, das fraktale Berechnungsmethoden nutzt, wurde für den Prototypen eines geschlossenen, mikrocontrollerbasierten Kryptosystems entwickelt. Für das Einmalschlüsselverfahren kann die In-Application-Programming Funktion (IAP) des uPSD besonders vorteilhaft eingesetzt werden, um die Sicherheit des Kryptosystems zu erhöhen. Da Teile des Einmalschlüsselverfahrens im Programmcode hinterlegt sind, lässt sich in regelmäßigen Wartungsintervallen ein Schlüsselwechsel als zusätzliche Sicherheitsmaßnahme benutzerunabhängig als administrativer Service durchführen.

Der im uPSD-Mikrocontroller integrierte Digital/Analog-Umsetzer mit eigenständig arbeitendem Pulsweitenmodulator (PWM) sowie der ebenfalls integrierte Analog/Digital-Umsetzer (ADU) sind vorteilhaft nutzbar, um heute üblichen physikalischen Angriffsmethoden auf Kryptosysteme entgegenzuwirken.