Ist Verschlüsselung eine Erfindung der Neuzeit bzw. des Computerzeitalters?
Nein. Schon seit dem Altertum haben Menschen Nachrichten verschlüsselt, siehe das Beispiel der Cäsar-Chiffre oben. Grob lässt sich die Geschichte der Verschlüsselungstechnik in drei Epochen einteilen. In der ersten Epoche bis etwa um 1900 wurde weitgehend per Hand mit Zettel und Stift oder mit mechanischen Scheiben verschlüsselt. In der zweiten Epoche etwa von 1920 bis 1970 wurden spezielle Maschinen verwendet, und in der dritten seit etwa 1970 übernahm der Computer die Verschlüsselung.
Ein bekanntes Beispiel für eine spezielle Verschlüsselungsmaschine der zweiten Periode ist die ENIGMA-Maschine. Sie wurde von den Nationalsozialisten im Zweiten Weltkrieg für die Verschlüsselung von Funksprüchen genutzt und galt auf deutscher Seite als unbrechbar. Bekanntlich schafften es aber die Briten um den Mathematiker Alan Turing, große Teile der abgefangenen ENIGMA-Funksprüche zu entziffern.
Grundsätzlich erfolgte die Entwicklung der Verschlüsselungstechniken meist im Militär. Die eine Seite, die Kryptografen, versuchte, ihre Nachrichten zu verschlüsseln, - die Gegenseite, die Kryptoanalytiker, versuchte, diese zu entziffern. Heute ist die Forschung auf dem Gebiet der Verschlüsselung wesentlich breiter.
Was sind die wissenschaftlichen Grundlagen der Verschlüsselung?
Die meisten Verschlüsselungsverfahren beruhen auf der Schwierigkeit von Problemen, die in der mathematischen Zahlentheorie untersucht werden. Salopp formuliert basiert Verschlüsselung auf dem Prinzip, dass manche Dinge im Leben einfach auszuführen, aber nur schwer rückgängig zu machen sind. Eine Vase aus zehn Metern Höhe fallen zu lassen bereitet keine große Mühe; aus den Scherben die Vase wieder zusammenzukleben ist jedoch fast unmöglich.
Im Bereich der Zahlen gibt es ähnliche Phänomene: Zahlen miteinander zu multiplizieren - selbst sehr große - ist leicht. Aber ein Produkt in seine unbekannten Faktoren zu zerlegen, also zu "faktorisieren", ist vergleichsweise schwer. Beispielsweise ist es schwierig, die Teiler der Zahl 805963 zu finden. Je größer eine Zahl, umso schwieriger wird die Faktorisierung, was bei genügend großen Zahlen dazu führt, dass die Faktorisierung auch auf einem Supercomputer tausende Jahre dauern würde.
In der Praxis werden daher Zahlen mit mehreren hundert Dezimalstellen verwendet. Mit den ausgefeiltesten Methoden und sehr viel Rechenaufwand ist man heute in der Lage, gerade mal 130-stellige Zahlen zu faktorisieren.
Welche grundlegenden Verschlüsselungsverfahren gibt es?
Grundsätzlich lassen sich symmetrische und asymmetrische Verschlüsselungsverfahren unterscheiden.
Bei symmetrischen Verfahren werden Ver- und Entschlüsselung mit demselben Schlüssel durchgeführt. Dazu müssen Sender und Empfänger vor der Benutzung den geheimen Schlüssel vereinbaren und ihn sicher ausgetauscht haben. Die Cäsar-Verschlüsselung verwendet nur einen Schlüssel und ist deshalb ein symmetrisches Verfahren. Andere symmetrische Verfahren sind AES, One-Time sowie 3DES (siehe unten).
Die asymmetrischen Verschlüsselung verwendet ein Schlüsselpaar für jeden Teilnehmer: einen öffentlichen Schlüssel, den "Public Key" , und einen privaten Schlüssel, den "Private Key". Der Public Key ist für jeden zugänglich ist, der Private Key bleibt privat bzw. geheim.
Der Sender verwendet den öffentlichen Schlüssel des Empfängers zur Verschlüsselung und der Empfänger seinen geheim gehaltenen privaten Schlüssel zur Entschlüsselung. Die Asymmetrie ergibt sich, da Daten, die mit dem öffentlichen Schlüssel des Schlüsselpaares verschlüsselt wurden, nur mit dem geheimen Schlüssel des Schlüsselpaares entschlüsselt werden können.
In der Praxis sieht das dann so aus: Möchte man zum Beispiel eine geheime Nachricht per E-Mail empfangen generiert man ein Schlüsselpaar. Anschließend versendet man den öffentlichen Schlüssel an alle Personen, die einem eine Nachricht schreiben wollen. Für einen Angreifer ist es nahezu unmöglich in einer vertretbaren Zeitspanne aus einem hinreichend langen Schlüssel den korrespondierenden Zweitschlüssel zu generieren. Das bekannteste asymmetrische Verfahren ist RSA (siehe weiter unten).