M 2.164 Auswahl eines geeigneten kryptographischen Verfahrens

Verantwortlich für Initiierung: IT-Sicherheitsmanagement

Verantwortlich für Umsetzung: IT-Sicherheitsmanagement

Die Auswahl eines kryptographischen Verfahrens zerfällt in die beiden Teilaufgaben

Bevor der Anwender sich auf bestimmte Verfahren festlegt, sollte er genaue Vorstellungen davon haben, welche Anforderungen er an Vertraulichkeit und Authentizität der bearbeiteten Daten in jedem "Punkt" seines informationsverarbeitenden Systems stellt.

Auswahl von kryptographischen Algorithmen

Bei der Auswahl von kryptographischen Algorithmen ist zunächst zu klären, welche Art kryptographischer Verfahren benötigt werden, also symmetrische, asymmetrische oder hybride Verfahren, und dann sind geeignete Algorithmen, also solche mit entsprechender Mechanismenstärke auszuwählen.

Verschlüsselungsverfahren

Authentisierungsverfahren

Zur Nachrichtenauthentisierung können verschiedene Verfahren eingesetzt werden, etwa ein Message Authentication Code (MAC) oder ein digitales Signaturverfahren. Der Einsatz eines MACs ist von Vorteil, wenn extrem hohe Durchsatzraten gefordert sind (oder nur eine geringe Rechenkapazität zur Verfügung steht) und das Risiko der Schlüsseloffenlegung auf beiden Seiten sehr gering ist. Der Einsatz eines digitalen Signaturverfahrens ist von Vorteil, wenn das Risiko der (Signatur-) Schlüsseloffenlegung auf einer Seite wesentlich höher ist als auf der anderen Seite; und in aller Regel geboten, wenn Verbindlichkeitsdienste verlangt werden. Es sei noch einmal bemerkt, daß für den Dienst Verbindlichkeit eine Infrastruktur vertrauenswürdiger Dritter vorhanden sein muß.

Der bekannteste MAC-Algorithmus ist die Verschlüsselung einer Nachricht mit DES oder einem anderen Block-Chiffrierverfahren im CBC- oder CFB-Mode. Dabei wird als MAC der letzte verschlüsselte Block an die Nachricht angehängt. Solche Varianten sind z. B. in den Normen ANSI X9.9, ANSI X9.19, ISO 8731-1 oder ISO 9797 spezifiziert.

Geeignete Algorithmen für Digitale Signaturen sind z. B. RSA, DSA (Digital Signature Algorithm) oder auf elliptischen Kurven basierende DSA-Varianten, z. B. ISO/IEC 15946-2, IEEE-Standard P1363, Abschnitt 5.3.3 ("Nyberg-Rueppel Version"), IEEE-Standard P1363, Abschnitt 5.3.4 ("DSA Version").

Hashverfahren

Geeignete Algorithmen sind z. B. MD5, SHA-1, RIPEMD-160.

Auswahlkriterien

Ein wesentliches Kriterium für die Auswahl von kryptographischen Verfahren ist ihre Mechanismenstärke. Bei symmetrischen Verfahren sollte insbesondere die Schlüssellänge ausreichend groß sein. Je größer die verwendete Schlüssellänge bei einem kryptographischen Verfahren ist, desto länger dauert es, ihn z. B. durch eine Brute-Force-Attacke zu berechnen. Andererseits werden die Verfahren bei der Verwendung längerer Schlüssel langsamer, so daß immer zu überlegen ist, welche Schlüssellänge unter Nutzen- /Leistungsgesichtspunkten angemessen ist. Als Faustregel für gute Verfahren (Tripel-DES, IDEA, RC5,...) und mittleren Schutzbedarf gilt derzeit, daß die eingesetzten Schlüssel mindestens 80 Bit lang sein sollten. Bei Verwendung von Blockchiffren sollten größere, strukturierte Datenmengen nicht im ECB-Modus verschlüsselt werden. Stattdessen sollten dazu der CBC-Modus oder der CFB-Modus verwendet werden. Mindestens eine dieser Betriebsarten sollte daher implementiert sein.

Bei asymmetrischen Verfahren sollte die Mechanismenstärke so gewählt werden, daß die Lösung der zu Grunde liegenden mathematischen Probleme einen unvertretbar großen bzw. praktisch unmöglichen Rechenaufwand erfordert (die zu wählende Mechanismenstärke hängt daher vom gegenwärtigen Stand der Algorithmik und der Rechentechnik ab). Gegenwärtig kann man davon ausgegehen, daß man mit

"auf der sicheren Seite" ist.

Es sollten keine "unbekannten" Algorithmen verwendet werden, d. h. es sollten Algorithmen eingesetzt werden, die veröffentlicht sind, die von einem breiten Fachpublikum intensiv untersucht worden sind und von denen keine Sicherheitslücken bekannt sind. Häufig bieten Hersteller Sicherheitsprodukte an mit neuen Algorithmen, die "noch viel sicherer und noch viel schneller" sein sollen als andere Algorithmen. Aber vor der Verwendung von unbekannten Algorithmen aus Quellen, deren kryptographische Kompetenz nicht ausreichend nachgewiesen ist, kann nur gewarnt werden.

Aus Performancegründen werden für Verschlüsselungszwecke keine reinen Public-Key- Implementierungen eingesetzt. Alle gängigen Implementierungen von Public-Key-Kryptographie nutzen hybride Verfahren (siehe M 3.23 ).

In Anwendungen mit großen oder offenen Nutzergruppen empfiehlt sich meist die Verwendung eines hybriden Verfahrens (wegen der Vorzüge für das Schlüsselmanagement). Bei kleinen, geschlossenen Nutzergruppen (insbesondere natürlich bei einem einzelnen Benutzer) kann man sich auf symmetrische Verfahren beschränken. Bei Einsatz hybrider Verfahren ist es sinnvoll, die Stärken des symmetrischen und des asymmetrischen Anteils aufeinander abzustimmen. Da mit dem asymmetrischen Verfahren vor einem Schlüsselwechsel in der Regel viele Schlüssel für das symmetrische Verfahren überschlüsselt werden, sollte der asymmetrische Algorithmus eher etwas stärker ausgelegt werden.

Die Chiffrieralgorithmen müssen so beschaffen sein, daß die technischen Anforderungen, insbesondere die geforderte Performance, durch eine geeignete Implementation erfüllt werden können. Hierunter fallen Anforderungen an die Fehlerfortpflanzung (z. B. falls über stark rauschende Kanäle gesendet wird), aber auch Anforderungen an Synchronisationsoverhead und Zeitverzögerung (z. B. falls "Echtzeit"-Verschlüsselung von großen Datenmengen erfordert wird).

Beispiel: Sprachverschlüsselung bei ISDN

Für die Planung eines Kommunikationsnetzes sind eine Reihe von Parametern zu berücksichtigen, die einen Einfluß auf die zu erwartende Sprachqualität haben und sich in Form von Rauschen, Knacken, Nebensprechen oder Pfeifen bemerkbar machen. Zu solchen Einflußfaktoren zählen beispielsweise die eingesetzten Verschlüsselungsverfahren. Um eine zufriedenstellende Sprachqualität erzielen zu können, müssen alle Einrichtungen längs eines Übertragungsweges betrachtet und bewertet werden. Eine isolierte Betrachtungsweise einer Einzelkomponente ist zwar aufgrund der Verkopplung aller relevanten Einzeleffekte als nicht gerechtfertigt anzusehen, dennoch ist die Kenntnis der Einflußfaktoren jeder Einzelkomponente (z. B. der Kryptokomponente) wichtig. Hieraus können sowohl die Rahmenbedingungen für die Realisierung als auch für die Auswahl abgeleitet werden. Das Verhalten einer Verschlüsselungskomponente wird dabei hauptsächlich durch folgende Faktoren charakterisiert:

Gerade bei einer Sprachverschlüsselung (Echtzeitdienst) machen sich die vorgenannten Einflußfaktoren in einer Erhöhung der Ende-zu-Ende-Laufzeit, in Laufzeitschwankungen sowie in einer höheren Fehlerrate negativ bemerkbar, d. h. in einer Qualitätsminderung, die meßtechnisch ermittelt und der Kryptokomponente zugeordnet werden kann.

Manche kryptographische Algorithmen (z. B. IDEA) sind patentiert, für ihren Einsatz in kommerziellen Anwendungen (wozu auch der behördliche Bereich zählt) sind evtl. Lizenzgebühren zu entrichten. Dies ist insbesondere beim Einsatz von Verfahren wie PGP zu beachten, von denen es auch Implementationen gibt, die ansonsten als Public-Domain-Software eingesetzt werden können.


© Copyright by Bundesamt für Sicherheit in der Informationstechnik 2000.