A Classical Introduction to Cryptography
Application for Communication Security
S. Vaudenay
T. Baignéras, P. Junod, Y. Li, J. Monnerat
A Classical Introduction to Cryptography – Exercise Book
Springer Verlag, Berlin, Heidelberg, New York, 2005, 53,45 €
ISBN: 0-387-25464-1
Es besteht wohl kaum Zweifel an der Notwendigkeit von sicherem Datenaustausch im täglichen Leben. Beispiele wie Kreditkarten, kabelloses Telefonieren, ECommerce, Kfz-Sicherungssysteme u. v. m. belegen dies nachdrücklich. Vorlesungen zur Datensicherheit und Kryptographie sind mittlerweile gesicherter Gegenstand der Ausbildung in der Informatik und Mathematik, auch für die Bachelor- und Masterstudiengänge. Hierzu existieren eine Reihe von Lehrbüchern und Nachschlagewerken. Das vorliegende Lehrbuch von S. Vaudenay entstand auf Basis von Kursen, die der Autor am ”Communication System Devision“ der Ecole Polytechnique Federal de Lausanne gehalten hat. Der Autor führt verschiedene, berechtigte Gründe für die Notwendigkeit eines weiteren Lehrbuches an. Er nennt u. A. die Lücke zwischen ”state of the art research“ und lehrbuchmäßigen Darstellungen von Verfahren. Bei der Kürze der Verfallsdaten in der Informatik ein ernst zu nehmendes Argument. Er hebt ferner die Rolle der Kryptanalysis hervor und bietet einen ausführlicheren, lehrbuchmäßigen Zugang im Buch. Schließlich verweist er noch auf die wachsende Rolle der Kryptographie in der ”communication security“.
In dem Lehrbuch stellt der Autor Kryptographie in einer klassischen Variante vor, was seiner Meinung nach einer chronologischen Reihenfolge der Verfahren entspricht. Das erste Kapitel hat klassische kryptographische Verfahren (Vernam-Chiffrierung, perfekte Sicherheit) zum Inhalt. Im zweiten Kapitel schließen sich Ausführungen zu konventioneller Kryptographie (DES, AES, Block-Codes, Feistel-Chiffren, Brute Force Attacks) an, die Vertraulichkeit auf Basis symmetrischer Verfahren bietet. Das dritte Kapitel bietet ausgewählte konventionelle Kryptographie zur ”integrity, authentification, and randomness“. Hierzu zählt der Autor Hashing, das Geburtstagsparadoxon, ”Message Authentication Codes“ und Pseudozufallsgeneratoren. Im Kapitel 4 werden konventionelle Attacken (”differential and linear cryptanalysis“) behandelt. Im anschließenden Kapitel 5 geht es um Sicherheitsprotokolle auf der Basis konventioneller Kryptographie, d. h. Passwortzugriff, ”Challenge and Response“, Einmal-Passworte, Schlüsselverwaltung, Authentifizierungsketten bis hin zur Sicherheitsinfrastruktur bei Bluetooth. Die Kapitel 6 und 7 behandeln unter den Überschriften algorithmische Algebra und algorithmische Zahlentheorie die mathematischen Voraussetzungen für asymmetrische Chiffriersysteme. Dazu zählen modulare Algebra (erweiterter Euklidischer Algorithmus, Chinesischer Restsatz), endliche Körper, quadratische Reste und elliptische Kurven in Kapitel 6 und die klassischen Primzahltests (Miller-Rabin-Test, Solovay-Strassen-Test), klassische Faktorisierungsverfahren (Pollards -Verfahren, p−1-Verfahren, elliptische Kurven), sowie diskrete Logarithmen in Kapitel 7. Es ist bemerkenswert, wie der Autor bei aller Kürze die wesentlichen Dinge zusammenträgt und dabei gleichzeitig die erforderlichen Algorithmen entwirft.
Im Kapitel 8 werden Elemente der Komplexitätstheorie (Turing-Maschinen, Berechen- und Entscheidbarkeit, NP-Vollständigkeit) beschrieben, die als Mittel dienen, um die theoretischen Grenzen der Kryptographie auszuloten. Dem chronologischen Anspruch des Buches folgend dienen die vorangehenden drei Kapitel der Behandlung der asymmetrischen Kryptographie im Kapitel 9. Es werden die frühen Grundlagen der asymmetrischen Verfahren (Diffie-Hellman, Knapsack-Probleme, RSA, ElGamal-Chiffrierung) und moderne Anwendungen und Attacken besprochen. Kapitel 10 widmet sich der digitalen Signatur und Kapitel 11 allgemeiner kryptographischer Protokolle (”Zero-Knowledge, Secret sharing“ etc.). Im abschließenden Kapitel 12 werden kryptographische Infrastrukturen wie SSH, SSL und PGP besprochen, wie sie im Umgang mit Netzwerken zur Garantie der Sicherheit der Kommunikation erforderlich sind. Jedem Kapitel sind einige wenige Übungen beigefügt, die in dem separaten ”Exercise Book“ des Autors mit T. Baigneres, P. Junod sowie J. Monnerat vervollständigt werden.
Bei einem Umfang des Lehrbuches von 330 Seiten geht der Autor präzise und schnörkellos zur Sache. Der Text benutzt Hinweise und Zusammenfassungen für mathematische Hilfsmittel. Insgesamt folgt der Autor einem (seinen Worten nach) ”Bourbaki-artigen“ Stil. Im Klappentext wendet sich der Autor an ”undergraduate and graduate level students“ in Informatik sowie Wissenschaftler und Praktiker, die über Grundwissen in Algebra, diskreter Mathematik und elementarer Wahrscheinlichkeitsrechnung verfügen. Mir scheint das Buch in jedem Fall als Basis für Vorlesungen und Übungen sowie Seminare geeignet, wozu man gegebenenfalls den ergänzenden Hinweisen des Autors zu jedem Kapitel folgen könnte. Aus meiner Sicht wird das Buch dem Anspruch gerecht, Anschluss an moderne Sicherheitsinfrastrukturen der Telekommunikation und von Netzwerktechnologien anzuknüpfen und diese zum Bestandteil der Ausbildung zu machen. Die 185 Literaturverweise neuer und neuester Literatur weisen den interessierten Leser auf weitere gegenwärtige Entwicklungen hin. Wertvoll erscheint, dass der Autor schwer zu findende Standards (wie u. A. SSH2 oder Sicherheit bei Bluetooth) in die Darstellung integriert. Das Buch teilt sich in grundlegende und mit einem Stern gekennzeichnete fortgeschrittene Abschnitte, die u. U. bei einem ersten Durchgang vernachlässigbar sind, was für Studenten einen guten Hinweis zur Gliederung des Selbststudiums bietet.
Das Übungsbuch ”A classical Introduction to Cryptography – Exercise Book“ der Autoren T. Baignéras, P. Junod, Y. Li, J. Monnerat und S. Vaudenay dient der Vertiefung des Stoffes des ursprünglichen Lehrbuches mit einer Vielzahl von Übungen mit Lösungen. Das Spektrum der Schwierigkeiten reicht von leichten bis zu schwierigeren (mit einem Stern versehenen) Aufgaben. In der Regel handelt es sich um leichte Aufgaben, deren Lösung auch einem Anfänger an Hand der Hinweise gelingen sollte. In der Gliederung folgt das Aufgabenbuch der des Lehrbuches. Bemerkenswert erscheint (wie im Lehrbuch) der unbedingte Anspruch schwer zugängliche, neuere Standards in den Aufgaben zu behandeln. Das Begleitbuch bietet in jedem Fall viele Anregungen (einschließlich von Literaturhinweisen) zur Gestaltung von interessanten Übungen. Studenten sollten die Übungen die Erschließung des Lehrbuchtextes erleichtern. Wie das Lehrbuch basiert das Übungsbuch ebenfalls auf Kursen an der Ecole Polytechnique Federal de Lausanne, was sowohl der Gestaltung als auch der Auswahl der Hinweise dienlich ist.
Die Übungen können durchaus zum Anlass genommen werden, einzelne Algorithmen mit geeigneter Langzahlarithmetik zu implementieren und etwa Wettbewerbe zum Knacken ausgewählter Verfahren auszuprobieren. In künftigen Lehrveranstaltungen werde ich die eine oder andere Anregung ausprobieren.
Rezension: Peter Schenzel (Halle/Saale) aus Computeralgebra-Rundbrief, Nr. 39 - Oktober 2006