Algorithmen

Kryptographische Algorithmen werden zum Verschlüsseln und Entschlüsseln von Nachrichten verwendet. Dies ermöglicht es das zwei Parteien miteinander kommunizieren können, ohne abgehört zu werden.

Algorithmus

Im Wesentlichen besteht ein Algorithmus aus Anweisungen zur Ausführung einer Berechnung. Eine Eingabe, auf die der Algorithmus verwendet wurde, führt zu einer bestimmten Ausgabe. Eine häufig verwendete Metapher ist die eines Rezepts, wo verschiedene Zutaten verwendet werden, um ein Gericht zu schaffen. Die Vorbereitungshinweise des Rezepts sind wie der Algorithmus in dieser Metapher. Algorithmen werden meist verwendet, um mathematische Probleme zu lösen. Es gibt eine Vielzahl unterschiedlicher Verschlüsselungsmethoden und innerhalb jeder Methode unterschiedliche Verschlüsselungsalgorithmen. Dieser Artikel enthält eine kurze Beschreibung der Algorithmen, die für PKI am relevantesten sind.

Symmetrische Verschlüsselung

Die symmetrische Verschlüsselung verwendet denselben kryptographischen Schlüssel zum Verschlüsseln und Entschlüsseln von Informationen.

3DES

3DES wurde 1998 als eine komplexere Version der Data Encryption Standard Methode (DES) entwickelt, die damals als hackbar angesehen wurde. DES war bis dahin ein oft genutzter Algorithmus. Die Verwendung einer begrenzten Schlüssellänge und damit einer begrenzten Anzahl von Kombinationen, macht den Algorithmus für Brute-Force-Angriffe anfällig. Um die Anzahl der Kombinationen zu erweitern, verwendet 3DES 3 separate DES-Berechnungen nacheinander auf die Dateneingabe für die Verschlüsselung. Diese Berechnungen können entweder mit zwei 56-Bit Schlüssel ausgeführt werden, wobei die erste und dritte Berechnung mit demselben Schlüssel ausgeführt wird oder indem drei unabhängige 56-Bit Schlüssel verwendet werden. Die Gesamtschlüssellänge dieser beiden verschiedenen Berechnungen sind 112 Bits und 168 Bits, wobei letzteres natürlich die sicherste Methode ist.

AES

Advanced Encryption Standard (AES) wurde in den späten 90er Jahren als Alternative zu DES entwickelt. Dieser Algorithmus, der einen 128-Bit-Schlüssel verwendet, wurde aus dem Rijndael-Algorithmus erstellt, der von zwei flämischen Forschern entwickelt wurde. Programme wie WinRAR, WinZip und PowerArchiver bieten AES als Verschlüsselungsmethode an.

Asymmetrische Verschlüsselung

Die asymmetrische Verschlüsselung verwendet zwei getrennte Schlüssel; Einen zu, verschlüsseln oder signieren, und einen anderen zur Entschlüsselung oder Überprüfung der Identität des Absenders.

RSA

Ein Jahr nach der Erfindung der asymmetrischen Kryptographie von Whitfeld Diffie und Martin Hellman wurde es erstmals 1977 in Form des RSA-Algorithmus umgesetzt. RSA wurde von Ron Rivest, Adi Shamir en Len Adleman erstellt. RSA-Verschlüsselung basiert auf der Vorstellung, dass bei der Multiplikation sehr großer Primzahlen die Rückverfolgung der ursprünglichen Primzahlen praktisch unmöglich ist. Die Komplexität bei der Rückverfolgung nimmt zu, wenn die Zahl zunimmt. Die meisten SSL-Zertifikate nutzen RSA.

Browser-Hersteller und Zertifizierungsstellen haben sich darauf geeinigt, RSA-Schlüssel mit einer Länge von 1024 Bits ab 2014 nicht mehr zu vertrauen. Ab dem 1. Januar 2014 ist die Minimumslänge für RSA-Schlüssel 2048 Bit. Diese Entscheidung wurde getroffen, um mit immer leistungsfähigeren kryptographischen Angriffen Schritt zu halten.

DSA

Digital Signature Algorithm (DSA) wurde von der NSA (National Security Agency) als Alternative für die aktuelle Standard-RSA-Verschlüsselungsmethode entwickelt. Diese Methode verwendet einen anderen Algorithmus für die Verschlüsselung und Signierung, ist aber vergleichbar mit RSA in Bezug auf Geschwindigkeit und Sicherheit. DSA wird am meisten in der US-Regierung eingesetzt. Bei der Einhaltung von Regierungsnormen kann es daher sinnvoll sein, in ein Zertifikat mit RSA und DSA zu investieren.

ECC

Der Elliptische Kurven-Kryptographie (ECC) Algorithmus wurde 1985 von (unter anderen) IBM als Alternative zu RSA entwickelt. ECC verwendet elliptische Kurven, um Schlüssel für die Verschlüsselung von Daten zu erstellen, was zu kryptographisch starken Schlüsseln führt, die relativ kurz sind. ECC ist schneller und effizienter als z.B. RSA. Vor allem wegen der Probleme in Bezug auf Patentw ist ECC nicht weit verbreitet. Kurze Schlüssel werden immer wichtiger wegen einer verstärkten Nutzung von SSL (z. B. mobilen Geräten), weshalb es ein erneutes Interesse an ECC gibt. Trotzdem ist aus zwei Gründen ein Wechsel zur exklusiven Verwendung von ECC derzeit nicht möglich. Erstens unterstützen ältere Browser die Technik nicht, und zweitens werden ECC-Stammzertifikate noch nicht von allen Browsern vertraut.

Alle CSP's liefern Zertifikate mit RSA als Standard. In letzter Zeit liefert Symantec, zusätzlich zum RSA-Zertifikat, kostenlos ein DSA-Zertifikat, und bei 'Premium' Zertifikaten werden auch kostenlos ein ECC-Zertifikat geliefert. Die folgenden Symantec-Zertifikate gelten als Premium:

  • Secure Site Pro
  • Secure Site Pro EV

Comodo bietet auch ECC-Zertifikate. Sie können ein ECC-Zertifikat von Comodo erhalten i dem Sie beim Antrag ein ECC CSR verwenden.

Es wird erwartet, dass auch andere CSPs mit der Lieferung von ECC-Zertifikaten beginnen.

ECDSA

Der Elliptische Kurven Digitalsignaturalgorithmus (ECDSA) ist eine andere Version der oben erwähnten Elliptischen Kurven-Kryptographie, teilt aber die vorteilhafte Eigenschaft der Kurzschlüssel mit ihr. Der Algorithmus wird von z.B. Sony auf ihrer Playstation 3 und der virtuellen Währung Bitcoin verwendet.

Hash Algorithmen

Das Hashing ähnelt der Verschlüsselung durch eine kryptographische Funktion, aber im Gegensatz zur Verschlüsselung erfolgt das Hashing nicht in einer Zwei- sondern einer Einwegrichtung. Eine Hash-Funktion verwendet einen Hash-Code, der nicht zu seinem Ursprung zurück berechnet werden kann. Kennzeichnend für eine gute Hash Funktion ist eine geringe Risiko von Kollisionen. Ein kleines Risiko von Kollisionen bedeutet, dass die Möglichkeit sehr klein ist, dass zwei verschiedene Dateneingaben denselben Hash-Code erzeugen. Hashing wird zum Beispiel bei der sicheren Speicherung (Hash) von Passwörtern und beim digitalen Signieren von Dokumenten verwendet.

MD5

MD5 (Message Digest Algorithm 5) ist eine häufig verwendete kryptographische Hashfunktion. MD5 wird als Internetstandard in vielen Sicherheitsanwendungen und als Mittel zur Überprüfung der Integrität von Dateien verwendet. MD5 wurde 1991 von Ronald Rivest entworfen, um die bisher verwendete Hashfunktion MD4 zu ersetzen. 1996 wurde in MD5 ein Designfehler entdeckt. Während der Fehler nicht ernst war, wurde von nun an empfohlen, andere Algorithmen wie SHA-1 zu verwenden.

SHA-1

SHA-1 ist eine kryptographische Hash-Funktion, die von der National Security Agency (NSA) entworfen und 1995 vom National Institute of Standards and Technology (NIST) als Standard für die Verarbeitung von Bundesinformationen veröffentlicht wurde. SHA ist kurz für Secure Hash Algorithmus. Es existieren insgesamt vier verschiedene SHA-Algorithmen, jeweils mit einer anderen Struktur. Die vier verschiedenen SHA-Algorithmen sind bekannt als: SHA-0, SHA-1, SHA-2 und SHA-3. Der ursprüngliche SHA-0-Algorithmus ist sehr anfällig, was im SHA-1-Algorithmus behoben wurde. SHA-1 ist der am häufigsten genutzte der vier verschiedenen SHA-Algorithmen. In der Theorie ist es möglich, SHA-1 mit genügend Rechenleistung zu hacken. Wegen der wachsenden Rechenleistungen wird geschätzt, dass SHA-1 in absehbarer Zeit nicht ausreichend sicher sein wird.

SHA-2

Im Jahr 2005 wurden mehrere Sicherheitsfehler in SHA-1 entdeckt, die einen Bedarf für eine stärkere Hash-Funktion schufen. SHA-2 enthält eine wesentliche Reihe von Verbesserungen gegenüber seinen Vorgänger. SHA-2 ist in mancher Hinsicht ähnlich wie SHA-1, aber bisher wurden keine ähnlichen Schwachstellen festgestellt. SHA-2 wird bis Ende 2014 SHA-1 ersetzen.

SHA-3

Ursprünglich als Keccak bekannt, wurde SHA-3 im Oktober 2012 von Guido Bertoni, Joan Daemen, Michaël Peeters und Gilles Van Assche gegründet. Keccak wurde zum Sieger des NIST-Hash-Funktionswettbewerbs ernannt. SHA-3 ist nicht dazu bestimmt, SHA-2 zu ersetzen, da die Hashfunktion bisher nicht erfolgreich angegriffen wurde. NIST spürte die Notwendigkeit einer alternativen Hash-Funktion, weil es erfolgreiche Angriffe auf MD5 und SHA-0 gegeben hat und weil theoretische Angriffe auf SHA-1 durchgeführt wurden. Diese alternative Hashfunktion wurde SHA-3 (Keccak).

SSLCheck

SSLCheck überprüft, ob Ihr Zertifikat ordnungsgemäß auf Ihrem Server installiert ist und ob es potenzielle Probleme gibt.

point up