Geheime Botschaften mit offenen Quellen

 

Empfindliche Daten zu verschlüsseln, ist der beste Schutz gegen Hacker und Spione. Seit Sicherheit all überall ein großes Thema geworden ist, bieten viele Software-Hersteller entsprechende Produkte an. Ob ein Verschlüsselungsprogramm den Daten Schutz bietet, ist für den Laien, der kein Mathematiker oder Informatiker ist, schwer zu erkennen. Denn viele Fehler und Sicherheitslücken können sich einschleichen.

Besser beurteilen kann das ein Kryptologe, denn das ist sein Beruf. Wenn viele Kryptologen weltweit ein Programm oder einen Verschlüsselungs-Algorithmus untersuchen und ständig überwachen, so ist das ein erstes wichtiges Kriterium für deren Qualität: Der Bekanntheitsgrad eines Programmes. Ein Fehler oder Loch ist schneller gefunden, als bei einem Programm, um das sich niemand kümmert.

"Eine offene Diskussion ist ganz wichtig. Das hat die Auswahl von AES gezeigt. Alle durften mal versuchen, ihn zu knacken", bestätigt der Kryptologe Johannes Buchmann. Der Professor für Informatik und Mathematik an der TU Darmstadt verweist auf das Verfahren, in dem das National Institute of Standards and Technologie (NIST) in den USA den Nachfolger des veralteten Data Encryption Standard (DES) bestimmte. In einer über drei Jahre weltweit geführten Diskussion bewerteten Wissenschaftler erst fünfzehn und dann fünf Algorithmen. Nach einigen internationalen Konferenzen hieß der Sieger im Oktober 2000 schließlich Rijndael (sprich etwa wie Rheintal), kommt aus Belgien und ist als Advanced Encryption Standard (AES) Nachfolger von DES.

 

Algorithmus und Länge

Damit sind wir bereits mitten in der Diskussion des nächsten Kriteriums: Der richtige Algorithmus. DES hatte den Anforderungen der amerikanischen Verwaltung nicht mehr genügt, nachdem einige Angriffe in sehr kurzer Zeit gelungen waren. "DES ist zwar nicht wirklich sicher, aber für den normalen Heimanwender völlig ausreichend." bewertet ihn Buchmann. "Anwender wollen jedes noch so kleine Risiko ausschließen. Das ist wie Reihenhaus mit Stahltüren und Bolzen absichern."

Wer als Privatmann also ein DES-Verschlüsselungsprogramm besitzt, kann es auch getrost weiter verwenden, da sein Nachbar keine zwanzig Rechner zusammen schließen wird, um eine Nachricht zu knacken. Moderne Programme verwenden DES im allgemeinen nicht mehr.

Als sicher gelten die symmetrischen Algorithmen 3DES (DES nur mit zwei Schlüsseln), IDEA, und die fünf AES-Kandidaten der zweiten Runde: Mars, Twofisch, Serpent, RC6 und Rijndael. Bei den asymmetrischen sind es RSA, El-Gamal, DSS/DSA, Diffie/Hellman sowie elliptische Verfahren und bei Hash-Summen MD5 sowie bevorzugt SHA-1.

Bei den meisten Programmen zur Datenverschlüsselung kommt AES mit 128 oder sogar 256 Bit Länge zum Einsatz. Die Länge des Schlüssel ist das dritte wichtige Qualitätsmerkmal. Denn ein Angreifer kann versuchen alle möglichen Schlüssel durchzuprobieren. Je länger ein Schlüssel ist, desto länger braucht der Angreifer. Bei DES mit 56 Bit Länge ist ein solcher Angriff in einem Rechenzentrum einer großen Behörde, Firma oder Universität in einigen Stunden erfolgreich. Ganz schlecht sind veraltete Programm, die unter die bis 1999 geltenden Exportbestimmungen der USA fielen. Sie erlaubten nur vierzig Bit. Die schafft auch Ihr Nachbar. Darunter fallen auch alte PGP- und Browser-Versionen (SSL).

Das Bundesamt für Sicherheit in der Informationstechnik empfiehlt Schlüssellängen von mindestens achtzig Bit bei symmetrischen Schlüsseln. 3DES besitzt 112 Bit und IDEA genau 128 Bit und die AES-Kandidaten 128 Bit oder ein Vielfaches davon.

Ein Angriff erfolgt bei asymmetrischen Verfahren nicht in Form von Durchprobieren der Schlüssel selbst, sondern bestimmter mathematischer Komponenten. Die Schlüssellänge ist daher größer und variiert je nach mathematischem Konzept . Das Bundesamt für Sicherheit in der Informationstechnik (BSI) empfiehlt 1024 Bit, die bei elliptischen Verfahren 160 Bit entsprechen.

Auch bei der SSL-Verschlüsselung im Web-Browser sollten Sie diese Mindestlängen vorgeben. Wer verschlüsselte Daten archivieren will, sollte die Schlüsselstärke erhöhen, da die Rechner in zehn Jahren schneller sind als jetzt.

 

Implementierung

Ein gutes Verschlüsselungsprogramm verwendet also sichere Algorithmen mit Schlüssel in akzeptabler Länge. Doch das reicht noch lange nicht: Der Algorithmus muss auch sicher implementiert sein. Hierbei ergeben sich die meisten Schwachstellen eines Programms. Das aber kann wieder nur ein Kryptologe prüfen und auch nur dann, wenn er die Quellen des Programms begutachtet. Hat er keinen Quellen, muss er sich darauf verlassen, dass der Hersteller keinen Unfug treibt und strenge Qualitätssicherung betreibt. Das ist bei den bekannten Sicherheitsanbietern auch der Fall, bei kleinen Software-Buden eher fragwürdig.

"Um derartige Gefahren zu minimieren, halte ich es für unabdingbar, dass der Quellcode von Verschlüsselungssoftware offengelegt oder zumindest von Kryptographie-Experten eingehend geprüft wird." Norbert Göb, Mathematiker am Fraunhofer Institut für Techno- und Wirtschaftsmathematik in Kaiserslautern hat Erfahrung damit: Das Institut hat ein Programm begutachtet, das von verschiedenen Web-Seiten als sicher bewertet wurde, die keinen Zugang zum Quellcode besaßen. "Unsere Prüfung des Quellcodes und Algorithmus brachte dramatische Sicherheitslücken zum Vorschein".

Auch Kryptograph Buchmann befürwortet offene Quellen: "Ganz allgemein besteht ein Risiko, dass ein Programm nicht das macht, was es soll. Da ist Open Source eine gute Möglichkeit dagegen. Ich halte das für eine gute Sache, auch gegen nicht beabsichtigte Fehlfunktionen."

Offene Quellen sind aber auch kein Garant für Fehlerfreiheit. Aber sie erleichtern es der Kryptographiegemeinde das Programm auf Bits und Bytes zu prüfen. Ein Open-Source-Programm, das sich kein Experte angeschaut hat, ist genauso riskant, wie ein kommerzielles, das Algorithmus und Verfahren nicht radikal offenlegt.

Wir sind zurückgekehrt zum Ausgangspunkt: Programme sind sicher, solange sie sich in der kryptologischen Diskussion befinden. Diese müssen Sie als Anwender zumindest am Rande mitverfolgen. Das heißt, haben Sie sich für ein Programm entschieden, so sollten Sie regelmäßig auf der Webseite des Herstellers vorbeischauen und nach Sicherheits-Updates sehen. Die PC-Zeitschriften, deren Newsletter und Nachrichtenseiten berichten über geknackte Algorithmen oder dicke Sicherheitslöcher. Dann gibt es spezielle Sicherheitsseiten und Newsgroups, die die Experten-Diskussion unmittelbar wiedergeben, z.B. Sicherheit in der Internet, CERT, Counterpane (Cryptogram) oder Securityfocus (Bugtraq).

 

Anhang 1: Verschlüsselungssoftware im Einzelnen

Wir wollen nun eine Reihe von Programmen vorstellen und dabei die im Artikel aufgestellten Kriterien berücksichtigen.

 

  • Flexi Provider: Wer seine Verschlüsselung lieber gleich selbst verfasst, findet im Flexi Provider sichere Algorithmen für die Java Cryptography Architecture: von DES bis AES, von Diffie/Hellman bis zu elliptischen Kurven. Das Team des Kryptologen Professor Buchmann von der TU Darmstadt bietet diese Java-Implementierungen kostenlos und mit offenen Quellen unter GPL.
  • GnuPG: Das kostenlose Open-Source-Programm erfüllt alle von uns aufgestellten Bedingungen. Es verwendet sichere Algorithmen (standardmäßig: DSA/El Gamal) in vernünftiger Länge (ab 1024). Es ist in internationaler Diskussion und wegen der offenen Quallen leicht zu prüfen. Das Bundeswirtschaftsministerium empfiehlt es offiziell und verschenkt es über die Homepage oder auf CD. Als asymmetrisches Programm eignet es sich auch für E-Mail. Zur reinen Dateiverschlüsselung chiffriert der Anwender die Daten mit seinem eigenen öffentlichen Schlüssel. GnuPG ist im Kern ein DOS-Programm (bzw. für die Linux-Konsole), jedoch gibt es eine Reihe von Oberflächen: GnuPA ist ein PGP-ähnliches Fenster und WinPT liegt als Symbol in der Taskleitse. Beide steuern GnuPG komfortabel. Für Outlook gibt ebenfalls ein Plugin.
  • PGP: Das bekannt Standard-Verschlüsselungsprogramm Pretty Good Privacy (PGP) ist das am besten überwachte und gepflegte. Das asymmetrische Programm verwendet nur hochwertige Algorithmen wie Diffie-Hellman/DSS, RSA, AES und Twofish in akzeptablen Längen. Die Implementierung ist offen gelegt. Es ist sehr benutzerfreundlich, die Funktionen zum Ver- und Entschlüsseln finden sich im Windows-Kontextmenü. Die neueste Version 8 gibt es noch als Freeware, jedoch enthält diese die Outlook-Plugins nicht mehr. Die Vollversion kostet 39 Dollar.
  • SafeGuard Private Crypto: Die Kryptologen der belgischen Universität Leuven selbst, die Entwickler von Rijendal also, haben den Algorithmus in das Programm Save Guard implementiert. Es verschlüsselt symmetrisch mit AES. Außer Verschlüsseln kann es nichts, das aber ist sehr einfach und komfortabel zu bedienen. Für Privatanwender ist es außerdem kostenlos. Die wichtigen Funktionen finden sich im Desktop-Kontextmenü. Offene Quellen gibt es nicht.
  • Steganos Security Suite: Das bekannte Programm Steganos beinhaltet neben Verschlüsselung auch die Möglichkeit Daten in anderen Dateien zu verstecken. Hinzu kommen weitere Funktionen wie Passwort-Manager und Internet Spurenvernichter. Zu Verschlüsselung verwendet es AES mit mindestens 128 Bit. Die Implementierung wurde nach Aussagen der Firma von Kryptologen geprüft. Offene Quellen gibt es nicht. Es kostet 49,95 Euro

 

Anhang 2: Schwachstelle Passwort

Ein großes Sicherheitsrisiko besitzen alle Programme: Das Passwort. Bei symmetrischen Programmen gibt der Anwender ein Passwort ein, mit dem er verschlüsselt. Die Programme bilden aus dem Passwort mit einem Hash-Algorithmus eine Bit-Sequenz und aus dieser den symmetrischen Schlüssel. Zum Entschlüsseln gibt der Anwender erneut das Passwort ein. Bei gleichen Passwort ist auch die Hash-Summe gleich und die Botschaft lässt sich decodieren. Umgekehrt funktioniert das nicht: Aus der Hash-Summe lässt sich das Passwort nicht ableiten.

Bei asymmetrischen Verfahren schützt der Anwender seinen privaten Schlüssel mit einem Passwort. Das heißt: Der private Schlüssel wird ebenfalls über eine Hash-Summe mit dem Passwort verschlüsselt.

Die ganzen Verfahren sind also nur so sicher wie die Passwörter des Anwenders. Es ist meist die schwächste Stelle und es sollte den achtzig Bit der symmetrischen Verschlüsselung entsprechen. Ein Passwort wie Julia1 entspricht 36 Bit. Eine Schlaftablette für ein Passwortknackprogramm.

Es gibt 26 Buchstaben im deutschen Alphabet plus die drei Umlaute in Groß- und Kleinschreibung, macht 58 Buchstaben plus ß und Ziffern, macht 69 Zeichen. Hinzu kommen circa zwanzig gängige Satz- und Sonderzeichen. Nicht mehr als neunzig Zeichen also. Um eine Sicherheit von achtzig Bit zu erreichen müssen Sie dreizehn Zeichen völlig willkürlich verwenden. Ihr Passwort lautet etwa: wh#%TZU(/89h: Das können Sie sich nie merken und notieren es wahrscheinlich auf einem Zettel. Dann haben Sie sicherheitstechnisch einen großen Fehler gemacht.

Wie sieht es aus mit Sätzen? Die deutsche Sprache umfasst 250.000 Wörter. Davon verwendet der gebildete Mensch 800 bis 900. Hinzu kommen Fachbegriffe, aber der Wortschatz übersteigt 2000 nicht. Ein sicherer Satz müsste also aus acht Wörtern bestehen. Das ist schon eher zu machen. Noch sicherer wird es, wenn Sie einige Fehler und störenden Sonderzeichen einfügen: Wählen Sie einen Satz von zwölf Wörtern, liegen Sie bei über 131 Bit. Zwei kleine Fehlern drin und die Sache ist rund: "Im Nebl knackt es. Ich $chaue runter, sehe einen Tep-pich von Eis." Der Satz ist der zweite Absatz eines Buchs, das nicht in elektronischer Form vorliegt. Die drei Fehler lassen sich leicht merken.

Ebenso sicher ist eine Kombination beider Verfahren: Wählen Sie die Anfangsbuchstaben des Satzes und mischen Sie Sonderzeichen und Ziffern ein: INke.#I$r,seTvE. Sie müssen sich nur merken, welche Sonderzeichen Sie eingesetzt haben. Mit diesem sehr willkürlichen Sechzehnzeichengemisch liegen Sie bei 103 Bit.

Sicherheit bietet auch die Biometrie: Der Anwender gibt kein Passwort ein, sondern z.B. seinen eindeutigen Fingerabdruck. Dafür benötigt er einen spezielles Lesegerät.

 

Artikel aus Heft 6/2002 des PC-Magazins. Die Anhänge lagen im Artikel als Kästen vor.

 

 

Letzte Änderung: 1. Februar 2006
chef@gruetzekueche.de