Möglichkeiten der Datenverschlüsselung bei Geldausgabe-Automaten:

Hast du was - weißt du was - kriegst du was

31.10.1980

Die Automatisierung des Kassen- und Schaltergeschäfts durch Geldausgabe-Automaten schafft ein neues Sicherheitsmilieu. Neben die "klassischen" Möglichkeiten unbefugter Geldentnahme treten neue computerorientierte Methoden des Mißbrauchs. Dies erfordert eine Erweiterung des Üblichen Katalogs an Sicherheitsvorkehrungen wie: bautechnische Maßnahmen (Tresor), organisatorische Maßnahmen (Kontroller, Revision), personenbezogene Maßnahmen (Sicherheitsüberprüfung) und ein Paket aus systemtechnischen Maßnahmen (Hardware, Software).

Es sollen hier die Möglichkeiten systemtechnischen Datenschutzes am Beispiel des Einsatzes kryptographischer Verfahren (Verschlüsselungsverfahren) für Geldausgabeautomaten verdeutlicht werden. Wir setzen dabei - aus Platzgründen - organisatorische und physikalische Sicherungsmaßnahmen als gegeben voraus.

Geldausgabe-Automaten dienen der Automatisierung von Funktionen des Schalterverkehrs in Banken und Sparkassen. Übliche Funktionen eines Geldausgabe-Automaten (GAA) sind Geldausgabe, Kontoabfrage, Kontoauszugsdruck, Überweisung und Deposit.

Um dieses Funktionsangebot dem Kunden zur Verfügung zu stellen, werden in der Regel zwei Installationsversionen von Geldausgabe-Automaten angeboten: der Indoor- und der Outdoor-GAA.

Tag- und Nachtservice

Die Indoor-Version ist innerhalb einer Sparkasse oder Bank installiert und übernimmt die Funktion eines Kassenplatzes während der Schalterstunden. Die Outdoor-Version wird an Geldbedarfsplätzen (Supermarkt, Bahnhof, Fabrik) installiert und bietet dem Kunden in den meisten Anwendungen einen 24-Stunden-Geldservice.

Die Verbreitung von Geldausgabeautomaten wird künftig vor allem in "Pools" erfolgen, in denen Banken und/oder Sparkassen zusammengeschlossen sind. Grundidee eines solchen Pools ist, jedem Kunden eines (am Pool beteiligten) Geldinstituts an jedem Gerät des Pools sämtliche Nutzungsmöglichkeiten zur Verfügung zu stellen. In Skandinavien sind derartige GAA-Pools schon weitgehend realisiert.

Um die Sicherheitsanforderungen an ein Geldausgabesystem genauer zu spezifizieren, müssen wir den GAA als Terminalsystem betrachten. Der Nixdorf-Geldausgabe-Automat (Selbstbedienungszentrum) ist ein spezieller Arbeitsplatz, der in zwei Einsatzarten (siehe Abbildung 1) zu betreiben ist:

- als Remote-System mit Anschluß an eine Nixdorf-Terminal-Zentraleinheit (TZE),

- als Stand-alone-System mit integrierter TZE.

Möglichkeiten des Mißbrauchs

Für den GAA als Terminalsystem gelten zunächst allgemeine Sicherheitsbetrachtungen, wie sie etwa in [L 1] für Terminalsysteme durchgeführt wurden. Im Rahmen einer umfassenden Risikoanalyse wurden dabei die folgenden Möglichkeiten des Mißbrauchs solcher Systeme festgestellt:

Passive Infiltration

a) Elektromagnetische Aufzeichnung (aus CPU oder Peripherie)

b) Anzapfen von Leitungen (Terminals <--> Zentraleinheit <--> Host)

c) Einsatz von Wanzen (CPU, Peripheriegeräte, Bus)

Aktive Infiltration

d) Beschaffung unberechtigter Information durch berechtigten Systemzugriff (browsing)

e) Simulation eines berechtigten Systemzugriffs durch illegale Beschaffung der benötigten Identifikationsdaten (masquerading)

f) Ausnutzen von Hardware- oder Software-Schwachstellen (trap doors) über in die Leitung geschaltete Terminals bei intaktivem Benutzerterminal (between-lines entry)

g) Aufzeichnung des Benutzerdialogs mit CPU und Einschleusen falscher Rückantworten an Benutzer (piggy back)

h) Illegaler Zugriff (jeder Art) durch Betriebspersonal

i) Speicherabzug (core dump)

j) Diebstahl von Datenträgern

Darüber hinaus ist ein Geldausgabeautomat per definitionem besonders durch die Möglichkeit der anonymen Entnahme auch größerer Geldbeträge gefährdet: Der Geldinhalt eines solchen Geräts liegt - orientiert am Tagesbedarf - zwischen 150 000 und 300 000 Mark, wobei durch Verfügungslimits und Online-Verbuchung von Auszahlungen bestimmte Manipulationen bereits ausgeschaltet werden können.

Effektives Sicherheitskonzept

Ein Sicherheitskonzept für Geldausgabe-Automaten muß nach den Grundsätzen der Effektivität, Zuverlässigkeit, Einfachheit und Transparenz (Überprüfbarkeit) entwickelt werden. Dabei müssen die vom Hersteller des Systems geleisteten Sicherheitsvorkehrungen Bestandteil eines Gesamtsicherheitssystems sein, zu dem die Geldinstitute durch organisatorische, personelle und bautechnische Maßnahmen ebenso beitragen müssen, wie der Kunde durch Geheimhaltung seiner persönlichen Identifizierungsdaten.

Wir können folgende Anforderungen für ein Sicherheitssystem zusammenstellen:

- ein Sicherheitssystem muß zu bereits existierenden Sicherheitssystemen kompatibel, wenn möglich standardisiert sein;

- der Sicherungsaufwand muß in einem wirtschaftlich vertretbaren Verhältnis zum möglichen Schaden (= Nutzwert für den Mißbraucher) stehen;

- der Sicherungsaufwand muß aber auch so umfangreich sein, daß der Kosten- und Zeitaufwand (Arbeitsfaktor) für den Mißbraucher größer als der zu erwartende Nutzen ist;

- das Sicherheitssystem muß nicht nur im Normalbetrieb, sondern vor allem auch im Fehlerfall (undefinierter Systemzustand) oder Testbetrieb wirksam sein;

- das Sicherheitssystem muß eine hohe Aufklärungsrate (Identifizierung) bei Mißbrauch besitzen.

Gegenüber den Risiken durch aktive Infiltration bestehen im wesentlichen vier Schutzmaßnahmen:

- Zugriffskontrolle zu System, Programmen und Daten

- Leitungsverschlüsselung

- Protokollierung von Systemzugriffen

- Personalmanagement

Wir wollen uns bei der Anwendung von Verschlüsselungsverfahren auf die Realisierung der beiden erstgenannten Schutzmaßnahmen beschränken. Die beiden übrigen Verfahren bestehen üblicherweise darin, versuchte oder erfolgreiche (= zulässige) Zugriffe zu einem System und seinen Funktionen zu protokollieren (ex post facto-Schutz) oder eine Sicherheitsüberprüfung für das Betriebspersonal durchzuführen.

Schlüssel durch Vertauschen

Zum Zweck der Verschlüsselung von Daten für die beiden genannten Einsatzgebiete besitzen der Nixdorf-Geldausgabe-Automat und der zugehörige Terminalcontroller 8864 einen Verschlüsselungsmodul VEM. Dieses Gerät ist eine Hardware-Implementation des "Data Encryption Standard" (DES). Es besitzt die vom National Bureau of Standards vergebene Prüflizenz über eine funktionstreue Nachbildung dieses in den USA genormten Verschlüsselungsverfahrens [L 3]. Zusätzlich zur Realisierung des Verschlüsselungsalgorithmus selbst besitzt das Gerät auch einen nichtauslesbaren, nichtflüchtigen CMOS-Speicher zur Aufnahme der erforderlichen Schlüsselparameter. Die Verschlüsselungsgeschwindigkeit des Gerätes für einen 64-Bit-Datenblock liegt bei rund vier bis fünf Mikrosekunden.

Das Prinzip des DES besteht darin, mittels einer Kombination von Permutationen (Vertauschungen) und nichtlinearen Substitutionen (Ersetzungen) Datenblöcke iterativ zu verschlüsseln [L 3, L 4]. Das Verfahren benötigt einen 8-Byte-langen Schlüsselparameter und operiert auf 8-Byte-langen Datenblöcken.

Die Sicherheit eines solchen Verschlüsselungsverfahrens hängt im wesentlichen von zwei Faktoren ab: Größe des Schlüsselraums (= Anzahl verschiedener möglicher Schlüssel) und Sicherheit gegen "Kurzschluß" des Verschlüsselungsalgorithmus durch statistische oder mathematische Tests.

Der in den genannten Systemen eingesetzte Verschlüsselungsmodul VEM steht über eine Software-Schnittstelle dem System und auch dem Anwender zur Verfügung. System und Anwender können mit Hilfe eines Dienstprogramms folgende Funktionen durchführen:

- Verschlüsselung von Datenblöcken nach verschiedenen DES-Modi (ECB, CBC, CFB)

- Erzeugen und Laden von DES-Schlüsseln

- Bilden einer Prüfsumme über Programme und Bibliotheken.

Zugriffskontrolle fürs BS

Eine Risikoanalyse des Einsatzes von Geldausgabe-Automaten ergab im Rahmen der Zugriffskontrolle folgende Sicherheitsanforderungen: Schutz von Betriebssystemen und Anwenderprogrammen vor mißbräuchlicher Veränderung, Löschen oder Einfügen von Daten und Programmen und Schutz vor unberechtigten Benutzern (Kunden).

Diese Sicherheitsanforderungen können durch folgende systemtechnische Maßnahmen erfüllt werden: Prüfalgorithmus zur Identifikation von Betriebssystem und Anwenderprogrammen sowie Berechtigungsprüfung für Benutzer.

Da beim Betrieb von Geldausgabe Automaten die Möglichkeit des Ladens gefälschter System- und Anwenderprogramme ein kritischer Sicherheitsfaktor ist, müssen geladene Programme eindeutig identifiziert werden können. Die Identifikation von Betriebssystemen und Anwenderprogrammen erfolgt im Nixdorf-Geldausgabeautomaten durch Berechnung eines eindeutigen Binärwertes (Prüfsumme) für Programmbibliotheken und/oder einzelne Programmsegmente auf Direktzugriffsspeicher. Diese Prüfsumme wird über "jungfräuliche" Software gebildet und vom Anwender als Referenzwert (vertraulich) verwaltet.

Der in Abbildung 2 gezeigte Prüfalgorithmus verschlüsselt (nach DES) in rekursiver Form ausgewählte Bibliotheken, Programme oder Programmsegmente. Er kann durch den Benutzer aufgerufen und parametrisiert werden.

Eine der wichtigsten Voraussetzungen für die Automatisierung des Kassen- und Schaltergeschäfts ist die eindeutige Identifizierung des Kunden. Ein automatisches Geldausgabesystem, in dem jede persönliche Kontrolle durch den Kassierer oder Berater ausgeschaltet ist, kann nur funktionieren, wenn der illegale Benutzerzugriff weitgehend verhindert wird. Das zur Zeit am weitesten verbreitete Verfahren zur Benutzeridentifikation ist die Kundenidentifikation durch Automatenkarte (ID-Karte) und persönliche Geheimzahl (PIN). Hierbei werden die Prinzipien "was eine Person hat" und "was eine Person weiß" miteinander verknüpft.

Andere Verfahren zur Identifizierung wie die Überprüfung physiologischer Merkmale eines Kunden (Fingerabdruck, Handschrift) oder "Handshaking" als vom Benutzer selbst programmierter Zugriffsdialog bieten durch ihr personenspezifisches Prinzip zwar eine hohe Sicherheitsgarantie, kollidieren aber mit der Forderung nach einer möglichst einfachen, natürlichen und zumutbaren Benutzerschnittstelle.

Die übliche Realisierung der Benutzeridentifikation (Abbildung 3) kann man in drei Schritten beschreiben:

Vergabe einer ID-Karte und einer persönlichen Geheimzahl an den Kunden eines Geldinstituts;

Erzeugung und Speicherung eines Referenzwertes (Funktion von ID-Karteninformation und Geheimzahl) in einer Kundendatei des Hostrechners (online) oder auf der ID-Karte selbst (offline);

Prüfung des Referenzwertes je Kundentransaktion durch Berechnung und Vergleich mit den vom Kunden eingegebenen Daten.

Referenzwert als Funktion

Das Prinzip der Benutzeridentifikation besteht also darin, einen eindeutigen Referenzwert für jeden Kunden zu erzeugen und zu speichern. Hierbei muß sichergestellt sein, daß der Referenzwert aus keiner Kombination von Informationen (außer ID-Karte und PIN) ermittelbar ist, also selbst die Kenntnis oder der Besitz von Referenzwert + PIN oder Referenzwert + ID-Karte darf nicht zur Ermittlung des jeweils fehlenden Merkmals (ID-Karte beziehungsweise PIN) führen. Um dies zu gewährleisten, wird im Nixdorf-GAA ein Verschlüsselungsmodus eingesetzt, der den Referenzwert als Funktion von ID-Karteninformationen und PIN ermittelt.

Das Fälschen oder Nachmachen von ID-Karten kann durch derartige Schutzmaßnahmen allerdings nicht verhindert werden. Hier ist die Ausrüstung von ID-Karten mit zusätzlichen magnetisch, optisch oder chemisch lesbaren Identifikationsmerkmalen erforderlich [L 2]. Der Zentrale Kreditausschuß (ZKA) der deutschen Banken hat für seinen Verantwortungsbereich bereits Richtlinien für derartige ID-Kartenmerkmale erlassen.

Während die bisher genannten Sicherheitsmaßnahmen dem Zugriffsschutz zum System und zu Programmen dienen, soll im folgenden der Zugriffsschutz zu Übertragungsdaten im Rahmen einer Geldausgabe-Transaktion diskutiert werden. Ein traditionelles Mittel zur Sicherung von Übertragungsdaten ist die "Datenverschlüsselung" [L 4]. Im Rahmen des Einsatzes von Geldausgabe-Automaten treten die in Abbildung 4 veranschaulichten - durch Verschlüsselung schützenden - Übertragungswege auf. Hierbei ist eine End-to-End-Verschlüsselung möglich, bei der eine Nachricht von Start (GAA) bis Ziel (HOST-Datei) verschlüsselt durch sämtliche Netzknoten transportiert wird. Dabei dürfen allerdings nur die Nutzdaten verschlüsselt werden. Der Adreßteil der Nachrichtenblöcke muß für die Netzknoten "lesbar" bleiben.

Wir können im Rahmen dieses Überblicks nur kurz auf die Verwaltung, das heißt Erzeugung, Verteilung und Speicherung von kryptographischen Schlüsseln eingehen (genaueres siehe [L 4, L 5]). Es ist im wesentlichen zu beachten, daß Schlüssel "zufällig" ausgewählt, "sicher" verteilt und "nichtauslesbar" gespeichert werden. Der Lebenszyklus von Schlüsseln hängt dabei vom Sicherheitsbedarf und organisatorischen Änderungsaufwand ab. Um den Aufwand für Generierung und Verwaltung gering zu halten, sollte die Zahl der vom System und Anwender verwendeten Schlüsselparameter klein sein. Es genügt in der Regel neben einem statischen (Master-)Schlüssel je Geschäftsvorfall (Transaktion) einen dynamischen Schlüssel zu erzeugen. Diese Doppelverschlüsselung garantiert für den hier beschriebenen Anwendungsfall ein hohes Maß an Sicherheit.

Literatur

[L 1] Petersen H. E., Turn R.: System Implications of Information Privacy. Proc. of the AFIPS SJCC, Vol. 30 (1967)

[L 2] Security Aspects of Electronic Bank Card Systems. Mitre Technical Report MTR-2971, Vo. I, II (1975)

[L 3] Data Encryption Standard. U. S. Department of Commerce/National Bureau of Standards, FIPS PUB 46 (1977)

[L 4] Ryska N., Herda S.: Kryptographische Verfahren in der Datenverarbeitung. Informatik Fachberichte Bd. 24, Spriger Verlag, Berlin-Heidelberg-New York (1980)

[L 5] Meyer C. H., Matyas S. M.: Generation, Distribution And Installation Of Cryptographic Keys. IBM Systems Journal, Vol. 17, Nr. 2 (1978)

Norbert Ryska ist Mitarbeiter der Entwicklung der Nixdorf Computer AG, Paderborn.