Die ersten Verfahren der Kryptografie sind militärischen und politischen Ursprungs, und sie spielten sich zwischen Staaten ab. Heute ist Verschlüsselung aus unserem Alltag kaum wegzudenken und ermöglicht uns, die Vertraulichkeit von Kommunikation zu schützen.
Das primäre Ziel der Kryptografie ist, die Kommunikation zwischen zwei oder mehreren Personen vor anderen Personen zu schützen. Hierfür stellt sie Mittel bereit, um die Geheimhaltung der Kommunikation auf die Geheimhaltung weniger Daten, auch Schlüssel genannt, zu reduzieren. Viele frühe Verfahren sind im militärischen und politischen Bereich angesiedelt und spielten sich zwischen Staaten ab. In der Geschichte gab es aber auch immer wieder Versuche, sich mithilfe von Verschlüsselung vor dem staatlichen Zugriff selbst zu schützen. Die heutige Kryptografie bietet dazu ideale Möglichkeiten. Daher ist es nicht verwunderlich, dass bei vielen Kämpfen von Minderheiten um ihre Rechte anonymisierte und verschlüsselte Kommunikation – etwa im Darknet – ein wichtiges Instrument ist. Genauso klar ist, dass unter dem Schutz des Darknets auch Geschäfte getätigt oder angebahnt werden, die das Licht der Öffentlichkeit scheuen.
Grundlegende Erfindung: Der Schlüssel
Die Erfindung des variablen Schlüssels markiert die Geburtsstunde der Kryptografie. Seit dieser Zeit unterscheiden wir zwischen "Algorithmus" und "Schlüssel". Damit wird zum ersten Mal auch die Rolle des Angreifers klar. Am einfachsten lässt sich dies an der sogenannten Cäsar-Scheibe verdeutlichen. Der ihr zugrundeliegende Mechanismus geht auf Gaius Julius Cäsar zurück und wurde im 15. Jahrhundert vom Mathematiker Leon Battista Alberti weiterentwickelt. Seit Erfindung der Scheibe ist sie aus kryptografischen Algorithmen nicht mehr wegzudenken.
Die Cäsar-Scheibe besteht aus einer kleinen und einer großen Kreisscheibe, die an ihren Mittelpunkten drehbar verbunden sind. Auf jeder Scheibe steht das Alphabet in zyklischer Anordnung. Das Alphabet auf der äußeren Scheibe nennt man das Klartextalphabet, das auf der inneren Scheibe wird Geheimtextalphabet genannt. Nun legen Sender und Empfänger zunächst eine bestimmte Einstellung ihrer Scheiben fest. Diese kann zum Beispiel dadurch bestimmt werden, indem man den Buchstaben auf der inneren Scheibe angibt, der bei dem Klartextbuchstaben A steht. Wenn sie sich zum Beispiel auf den Buchstaben R einigen, sind die Scheiben so gedreht, dass dort, wo außen A steht, innen R steht. Wir sprechen kurz von der "Einstellung R". Die Verschlüsselung erfolgt nun so, dass ein Klartextbuchstabe durch den Geheimtextbuchstaben ersetzt wird, der an ihn auf der inneren Scheibe direkt anschließt. Beim Verschlüsseln liest man also von außen nach innen; entsprechend erfolgt das Entschlüsseln durch Lesen von innen nach außen.
Grundsätzlich können wir zwei Dinge unterscheiden: erstens die Maschine, also das generelle Verschlüsselungsverfahren, das auch Verschlüsselungsalgorithmus genannt wird; zweitens der Schüssel, in unserem Fall also die spezielle Einstellung der Scheiben. Damit kann verschlüsselt, also Klartext in Geheimtext überführt werden.
Der originale Cäsar-Code ist viel spezieller. Cäsar ersetzte nämlich jeden Klartextbuchstaben durch den Buchstaben, der im Alphabet drei Stellen danach kommt. So wird etwa A zu D, B zu E und C zu F. Aus CAESAR wird folglich FDHVDU. Offensichtlich bietet dieses Verfahren praktisch keine Sicherheit.
Das gilt ebenso für alle Verfahren, die mit Geheimzeichen arbeiten. Sehr bekannt ist der sogenannte Freimaurercode: Bei diesem wird jeder Buchstabe durch die Linien ersetzt, die ihn umgeben (Abbildung 1). Zum Beispiel wird statt E ein Quadrat gemalt, statt J ein V-ähnliches Zeichen und statt P ein L-förmiges Zeichen mit einem Punkt.
Geheimzeichen bieten, nüchtern betrachtet, keinerlei Sicherheit, sie sind aber sehr populär – vielleicht weil man glaubt, dass echte Geheimzeichen "sich selbst schützen". Die Sicherheit all dieser Verfahren kann jederzeit zusammenfallen wie ein Kartenhaus. Wenn ein Unbefugter Kenntnis von dem Zuordnungsschema bekommt, dann hat das System auf einen Schlag all seine Sicherheit verloren.
Im Laufe der Geschichte hat sich gezeigt, dass es fast unmöglich ist, Algorithmen, also die prinzipiellen Verfahren, geheim zu halten. Immer wieder wurden Grundprinzipien der Verfahren veröffentlicht oder verraten, Verschlüsselungsmaschinen wurden gestohlen oder konnten legal gekauft werden. Die Befürchtung der Erfinder und Entwickler war lange Zeit, dass dadurch auch das Verfahren selbst unsicher war. Die Sorge war die folgende: Wer das Verfahren kennt, insbesondere wer es erfunden hat, der kann es auch brechen. Dass dies nicht sein darf, war intuitiv vielen bewusst, aber erst 1833 wurde es vom Kryptologen Auguste Kerckhoffs formuliert: Ein Bekanntwerden des Verfahrens darf die Sicherheit nicht gefährden. Die Sicherheit beruht allerdings entscheidend darauf, dass der Schüssel geheim gehalten wird.
Der Schlüssel ist das exklusive Geheimnis von Sender und Empfänger. Damit schützen sie sich gegen den Rest der Welt. Man kann auch sagen, der Schlüssel ist der strategische Vorteil, den der Empfänger gegenüber einem Angreifer hat. Der Angreifer besitzt eventuell große Mengen Geheimtext, er kennt das Verfahren, und er möchte den Klartext erhalten. Die Frage ist, ob ihm das ohne Kenntnis des Schlüssels gelingt. Man kann den Spieß auch umdrehen und die Sicherheit eines Verfahrens nach den Erfolgsaussichten eines Angreifers bemessen. Wenn es leicht ist, ohne Schlüssel den Klartext zu erhalten, dann ist das Verfahren unsicher. Es ist sicher, wenn sich ein Angreifer vor ein, für ihn, unlösbares Problem gestellt sieht.
Die oberste Anforderung an die Sicherheit eines Verschlüsselungsverfahrens ist, dass ein Angreifer keine Chance hat, alle Schlüssel durchzuprobieren. Bei der Cäsar-Scheibe mit ihren 26 möglichen Einstellungen ist das nicht gewährleistet. Bei heutigen Verfahren sollte der Schlüsselraum über mindestens 2128, besser noch 2256 Elemente verfügen. Letztere Zahl ist größer als die Anzahl der Atome im Universum. Insofern ist klar, dass niemand, auch nicht alle Rechner des Internets, jemals so viele Ver- oder Entschlüsselungen umsetzen kann.
Ein weiterer Aspekt ist dabei von Bedeutung: Mit einem gemeinsamen Schlüssel kann man nicht nur für zwei, sondern für beliebig viele Personen Raum für geheime Kommunikation schaffen. Wenn alle Personen einer Gruppe den gleichen Schlüssel besitzen und die Verschlüsselung nicht gebrochen werden kann, dann wirkt dieser Schlüssel wie eine Mauer, die diese Gruppe vor der restlichen Welt schützt.
Erste sichere Codes: Polyalphabetische Codes
Etwa um 1500 war klar, dass monoalphabetische Codes – wie die Cäsar-Verschlüsselung – keine wirkliche Sicherheit bieten. Interessanterweise hatten mehrere Gelehrte im 16. Jahrhundert eine ähnliche Idee für eine neue Dimension von Sicherheit. Sie bestand darin, monoalphabetische Chiffrierungen, ja sogar die Cäsar-Scheibe, zu nutzen, allerdings diese in einer komplexen Weise einzusetzen. Das Ziel musste sein, nicht für alle Buchstaben das gleiche Geheimtextalphabet zu verwenden, sondern eine ganze Reihe, und zwar in einer bestimmten Reihenfolge.
Ein Beispiel: Der Schlüssel ist ein Wort. Sender und Empfänger einigen sich auf das Wort "Rot". Der Sender nimmt seine Cäsar-Scheibe und stellt sie so ein, dass das Klartext-A genau bei dem Geheimtext-R, dem ersten Buchstaben des Schlüsselworts, steht. Mit dieser Einstellung R wird der erste Buchstabe des Klartexts verschlüsselt. Um den zweiten Buchstaben zu verschlüsseln, benutzt er die Einstellung, bei der das Klartext-A beim Geheimtext-O steht, und für den dritten Buchstaben verwendet er die Einstellung T. Wenn die Buchstaben des Schlüsselworts aufgebraucht sind, fängt er wieder von vorne an. Das heißt, für den vierten Buchstaben nutzt er wieder die Einstellung R.
Die Entschlüsselung ist entsprechend einfach: Der Empfänger muss die Einstellungen der Scheibe in gleicher Reihenfolge anwenden wie der Sender und jeweils den entsprechenden Buchstaben entschlüsseln. Man spricht von einem polyalphabetischen Verfahren, weil viele Alphabete zum Einsatz kommen. Diese polyalphabetischen Codes waren die erste große Herausforderung für Kryptoanalytiker. Einige Jahrhunderte lang boten sie echte Sicherheit. Es dauerte ziemlich lange, bis man im 19. Jahrhundert eine Möglichkeit, den sogenannten Kasiski-Test, entdeckte, die Länge des Schlüsselworts zu bestimmen und dann mithilfe einer Häufigkeitsanalyse die einzelnen Buchstaben des Schlüsselworts herauszufinden.
Polyalphabetische Verfahren waren stark, und sie hatten ein Potenzial, das in ihrer Gänze erst 1916 durch den Ingenieur Gilbert Vernam ausgeschöpft wurde. Er erfand einen unknackbaren binären Code, der auf den Zeichen 0 und 1 aufbaute. Tatsächlich kann man aber jedes polyalphabetische Verschlüsselungsverfahren zu einem Verfahren mit perfekter Sicherheit, also einem unknackbaren Verfahren, weiterentwickeln. Die Idee dazu ist recht simpel: Anstelle eines Schlüsselworts der zum Beispiel deutschen Sprache wählt man eine zufällige Folge von Buchstaben. Wenn diese mindestens so lang ist wie der Klartext, dann ist die Verschlüsselung unknackbar. Dies bewies 1949 der Mathematiker Claude Shannon. Der Nachteil, dass man solche perfekten Chiffrierungen nur dann erhält, wenn die zufällige Schlüsselfolge mindestens so lang ist wie der Klartext, macht das Verfahren für die meisten praktischen Anwendungen unbrauchbar. Man bezeichnet das Verschlüsselungsverfahren auch als one-time-pad, weil man die Folge nur einmal verwendet.
Maschinen mit beschränkten Fähigkeiten
Um vernünftig verschlüsseln und entschlüsseln zu können, braucht man technische Unterstützung. Wir sind gerade noch in der Lage, einfache Geheimsprachen zu lernen. Schon bei der Ausführung des Cäsar-Codes haben wir enorme Schwierigkeiten – etwa die Kombination MTARVQ zu entschlüsseln, wenn man weiß, dass die Verschlüsselung darin besteht, jeden Buchstaben durch den übernächsten zu ersetzen. Daher lag die Suche nach mechanischen Hilfsmitteln zur Verschlüsselung nahe. Im Grunde kann man zwar schon die antike Skytale als erste Verschlüsselungsmaschine bezeichnen, üblicherweise wird aber die Cäsar-Scheibe als Beginn der mechanischen Kryptografie angesehen.
Die Blütezeit der kryptografischen Maschinen war in der ersten Hälfte des 20. Jahrhunderts. Bei fast jedem mechanischen Schlüsselgerät fallen die Rotoren und Walzen auf, die in mehr oder weniger komplexer Weise zusammenspielen. Neben dem Vorbild der Cäsar-Scheibe standen hierfür auch die mechanischen Rechenmaschinen Pate, die seit der zweiten Hälfte des 19. Jahrhunderts weitverbreitet waren.
Die berühmteste Chiffriermaschine der Welt ist die Enigma, die 1918 vom Erfinder Arthur Scherbius zum Patent angemeldet wurde. Sie machte das Verschlüsseln kinderleicht. Auf den ersten Blick ähnelt sie einer Schreibmaschine. Drückt man auf eine Taste, erleuchtet ein anderer Buchstabe auf dem darüber liegenden Lampenfeld. Dies ist der zugehörige Geheimtextbuchstabe. Verschlüsseln mit der Enigma ist folglich nicht schwieriger als das Tippen auf einer Schreibmaschine.
Innerlich ist die Enigma allerdings sehr komplex. Das Herz des Kyptogeräts besteht aus drei Walzen und einer Umkehrwalze (Abbildung 2). Sie alle liegen nebeneinander: rechts die erste Walze, links davon die zweite, dann die dritte und schließlich ganz links die Umkehrwalze. Die Walzen und die Umkehrwalze sind jeweils in 26 Sektoren eingeteilt, die man mit den 26 Buchstaben des Alphabets identifizieren kann. Jede Walze hat in jedem Sektor eine Kontaktstelle, und zwar auf beiden Seiten. Auch die Umkehrwalze ist verdrahtet. Nach jedem Tastendruck dreht sich die erste Walze um eine Stelle weiter. Nach 26 Buchstaben nimmt sie die zweite Walze um eine Stelle mit. Nach 26 Mal 26 Tastendrücken wird auch die dritte Walze um eine Stelle weitergedreht, dies wird durch die Umkehrwalze ermöglicht. Das bedeutet, dass jeder Buchtstabe anders verschlüsselt wird, und die Anfangseinstellung der Walzen ist der Schlüssel des Verfahrens. In der militärischen Praxis mussten deshalb die Walzen jeden Tag neu eingestellt werden. Das Entschlüsseln erfolgt bei der Enigma fast genau so leicht wie das Verschlüsseln: Wenn man mit der gleichen Walzeneinstellung beginnt, muss man lediglich den Geheimtext abtippen, um den Klartext auf dem Lampenfeld zu lesen.
Die Enigma wurde im Zweiten Weltkrieg von der Wehrmacht flächendeckend eingesetzt. Es wurden sicher Zehntausende dieser Maschinen hegestellt. Allerdings konnten die Briten schon zu Beginn des Zweiten Weltkriegs die Enigma entschlüsseln. Dabei bauten sie auf entscheidende Vorarbeiten polnischer Mathematiker auf. Die Möglichkeit, die Enigma zu knacken, wurde erleichtert durch Bedienungsfehler. Zum Beispiel wurden als Schlüssel für die Einstellung der Walzen häufig nicht zufällige Kombinationen aus drei Buchstaben gewählt, sondern einfach zu merkende Kombinationen wie AAA, ABC oder XYZ. Die entscheidende, konstruktionsbedingte Schwäche der Enigma liegt aber vielmehr darin, dass nie ein Buchstabe zu sich selbst verschlüsselt wird. Was sich im ersten Moment positiv anhört, ist in Wirklichkeit die Achillesferse des Systems. Angenommen ein Angreifer ist im Besitz einer größeren Menge Geheimtext und einem kleineren Teil Klartext. Dann kann er leicht feststellen, von welchem Teil des Geheimtexts der Klartext nicht stammt: Wenn beim Übereinanderlegen auch nur ein Buchstabe übereinstimmt, dann stammt der Klartext nicht von dieser Stelle. Da man so sehr viele Möglichkeiten ausschließen kann, bleiben nur wenige übrig, mit denen man dann weiterarbeiten kann.
Sicherlich gab es Kryptogeräte neben der Enigma, die noch komplexer waren und eine höhere Sicherheit boten. Doch spätestens das Aufkommen des Computers in der zweiten Hälfte des 20. Jahrhunderts markierte den Niedergang aller mechanischen Verschlüsselung.
DES-Algorithmus und Public-Key-Kryptografie
In der zweiten Hälfte der 1970er Jahre geschahen zwei Dinge, die die Kryptografie revolutionierten: erstens die Publikation des DES-Algorithmus (Data Encryption Standard) und zweitens die Erfindung der Public-Key-Kryptografie. Der DES-Algorithmus war der erste standardisierte Algorithmus. Mit ihm hatte jeder Anwender sichere Verschlüsselungsverfahren zur Hand, derer man sich einfach bedienen konnte. Das Hauptproblem der Kryptografie blieb aber bestehen: das Schlüsselverteilungsproblem.
Da sowohl Sender als auch Empfänger zur Kommunikation den gleichen geheimen Schüssel brauchen, muss dieser mindestens einmal übertragen werden – von Sender zum Empfänger beziehungsweise umgekehrt oder auch von einer Schlüsselverteilzentrale an Sender und Empfänger. Will ich zum Beispiel mit 100 Menschen per E-Mail kommunizieren, brauche ich 100 Schlüssel, die ich mit meinen Kommunikationspartnern teilen muss. Wenn in einem Netz von 1.000 Personen jeder mit jedem geheim kommunizieren möchte, sind eine halbe Million Schlüssel erforderlich. Die Schlüssel müssen erzeugt, geheim gehalten und in regelmäßigen Abständen neu verteilt werden. Daher wurden in den 1960er und 1970er Jahren zahlreiche Schlüsselaustauschprotokolle entwickelt, die das Ziel hatten, die Anzahl der händisch zu verteilenden Schlüssel zu minimieren. Damit konnten sie das Problem zwar verkleinern, aber nicht lösen.
1976 hatten zwei junge amerikanische Wissenschaftler, Whitfield Diffie und Martin Hellman, schließlich einen kühnen Traum: Verschlüsselte Kommunikation sollte so einfach sein wie Telefonieren. Hat man den Namen der Person, die man anrufen möchte, muss man im Telefonbuch nur nach ihrer Nummer nachschlagen. Genau so müsste auch geheime Kommunikation funktionieren. Übertragen auf die geheime Kommunikation ist die Telefonnummer der öffentliche Schlüssel. Dieser wird verwendet, um die Nachricht zu verschlüsseln und abzuschicken. Der Empfänger kann sie entschlüsseln, indem er seinen eigenen geheimen Schlüssel verwendet. Entscheidend dafür ist, dass man aus dem öffentlichen Schlüssel nicht auf den geheimen schließen kann und dass die Kommunikationspartner keinen gemeinsamen geheimen Schlüssel benötigen, um geheim zu kommunizieren.
Auch wenn es zu dieser Zeit noch keine sogenannten Public-Key-Verschlüsselungsverfahren gab, das grundsätzliche Prinzip hinter öffentlichen und privaten Schlüsseln war bereits alltäglich – etwa beim Briefkasten an einem Hochhaus: Will zum Beispiel Bob eine geheime Nachricht an Alice schreiben – eine Nachricht, die nur Alice lesen kann –, dann schreibt er die Nachricht auf ein Blatt Papier, steckt es in einen Umschlag, sucht Alice’ Briefkasten auf und wirft den Brief hinein. Der Briefkasten stellt sozusagen den öffentlichen Schlüssel dar. Lediglich Alice kann mit ihrem Briefkastenschlüssel den Briefkasten aufschließen, den Brief herausholen und ihn lesen. Alice’ Briefkastenschlüssel entspricht somit dem geheimen Schlüssel.
Selbst wenn die Wissenschaftler damals das Briefkasten-Beispiel im Sinn gehabt hätten – die technische Möglichkeit zur Umsetzung existierte noch nicht. Zumindest aber arbeiteten Diffie und Hellman die ersten Theorien aus. Zwei Jahre später entwickelten die Wissenschaftler Ron Rivest, Adi Shamir und Len Adleman das erste Public-Key-Kryptosystem: der sogenannte RSA-Algorithmus, der nach ihren Initialen benannt ist. Das Verfahren nutzt klassische Mathematik; genauer gesagt einen wohlbekannten Satz der Zahlentheorie, der auf den Mathematiker Leonhard Euler aus dem 18. Jahrhundert zurückgeht. Dieser Satz sagt ganz grob, dass man im ersten Schritt mit einer beliebigen Zahl m etwas Kompliziertes macht und am Ende wieder die Zahl m herauskommt. Der Grundgedanke des RSA-Verschlüsselungsverfahrens ist, diesen komplizierten Vorgang, der aus Potenzieren und Berechnen von Resten besteht, in zwei Vorgänge aufzuteilen: Der erste ist die Verschlüsselung, der zweite die Entschlüsselung. Damit sollte das Hauptproblem des Schlüsselaustauschs gelöst werden. Zwei oder mehr Personen nutzen für die Kommunikation ein schnelles traditionelles Verschlüsselungsverfahren wie den DES-Algorithmus. Dann kommt die Public-Key-Kryptografie ins Spiel: Alice erzeugt zunächst einen DES-Schlüssel, den sie für die Kommunikation mit Bob verwenden möchte. Dann verschlüsselt sie diesen mithilfe von Bobs öffentlichem RSA-Schlüssel. Bob entschlüsselt nun mit seinem privaten RSA-Schlüssel und erhält damit den eigentlichen DES-Schlüssel für die Kommunikation und kann damit Alices Nachricht entschlüsseln. Dieses Verfahren macht es nicht nur für Großanwender, sondern auch für Privatanwender einfach, Kryptografie einzusetzen. Public-Key-Kryptografie ist heute aus unserem Alltag kaum wegzudenken und ermöglicht uns E-Mail-Verkehr, Surfen im Internet oder Onlinebanking.
Schluss
Die heutige Kryptografie ist wie eine Wundertüte: Sie enthält sinnvolle und wichtige Dinge wie sichere Verschlüsselungsverfahren und verlässliche Anwendungen. Jeder kann sich aus diesem Angebot etwas raussuchen, und einige können mit geringem Aufwand die Verfahren so sicher machen, dass sie von keiner Institution der Welt geknackt werden können. Natürlich enthält eine Wundertüte aber auch Überraschungen: Die Verfahren sind möglicherweise nicht so "unknackbar" wie gedacht, Fehler werden erst spät entdeckt oder Innovationen für kriminelle Machenschaften missbraucht.
Die heutige Kryptografie stellt jedoch erstmal prinzipiell jedem Sicherheit in beliebiger Qualität zur Verfügung. Viele für uns selbstverständliche Anwendungen wie sicheres Internet oder sichere mobile Kommunikation wären ohne moderne Kryptografie nicht möglich. Insbesondere hochwertige komplexe Anwendungen wie elektronisches Bezahlen und elektronisches Wählen basieren entscheidend auf Mechanismen der modernen Kryptografie. Es liegt jedoch ebenso auf der Hand, dass mit Verschlüsselungsverfahren Daten jeglicher Art verschlüsselt werden können. So setzt etwa auch der Tor-Browser, der Zugang zum Darknet ermöglicht, für die Anonymisierung seiner Nutzer unter anderem den RSA-Algorithmus ein. Ob die Verwendung kryptografischer Mechanismen zum Schutz der Privatsphäre, zur Sicherung von Unternehmensdaten oder zur Verschleierung illegaler Machenschaften geschieht, darauf hat die Kryptografie wenig Einfluss.
Ihre Meinung zählt: Wie nutzen und beurteilen Sie die Angebote der bpb? Das Marktforschungsinstitut Info GmbH führt im Auftrag der bpb eine Umfrage zur Qualität unserer Produkte durch – natürlich vollkommen anonym (Befragungsdauer ca. 20-25 Minuten).