Das Prinzip
Symmetrische Krypto-Verfahren sind Verfahren, die zum Ver- und Entschlüsseln
denselben Schlüssel benutzen. Sie werden auch als Secret-Key-Verfahren
bezeichnet. Das Gegenteil sind die asymmetrischen Verfahren, auf die
im nächsten Kapitel
eingegangen wird. Der CAESAR-Chiffre aus dem vorherigen Kapitel war
also ein symmetrisches Krypto-Verfahren, da der Schlüssel k
sowohl für das Ver- als auch für das Entschlüsseln benutzt
werden kann. Anders könnte man auch die symmetrischen Verfahren
dadurch beschreiben, daß sich die Entschlüsselungsfunktion
f* aus f berechnen läßt, indem die Umkehrfunktion f-1
von f bestimmt wird, also f* = f-1.
Die Funktion f ist also bijektiv.
Vor- und Nachteile
Der Vorteil von symmetrischen Verfahren ist, daß es eine Reihe
von sicheren Verfahren gibt, die aber auch so einfach sind, daß
sich c = f(k, m) und m = f-1(k,
c) schnell berechnen lassen. Auch die Implementierung von Hardwarebausteinen
für diese Chiffren ist schon erfolgt, so daß sehr günstig
schnelle Bauteile zur Verfügung stehen.
Einer der größten Nachteile ist, daß der Schlüssel
geheim ausgetauscht werden muß. Das heißt, daß zwei
Personen, die verschlüsselt kommunizieren wollen, erst einen Schlüssel
über einen sicheren Kanal austauschen müssen. Ob der Schlüsseltausch
über das Telefon oder Fax als sicher zu betrachten ist, liegt sicherlich
an vielen äußeren Umständen. Ein Austausch per Mail
kann aber nicht als sicher bezeichnet werden. Ein Austausch in einem
Brief hat den Nachteil, daß die Zustellung im Vergleich relativ
viel Zeit benötigt.
Block- und Strom-Chiffre
Die symmetrischen Krypto-Verfahren werden grob in Block- und Strom-Chiffren
eingeteilt. Bei den Block-Chiffren wird auf einen Block, einem Teilstück
gleicher Länge des Klartextes, immer wieder der gleiche Schlüssel
angewandt. Beim CAESAR-Chiffre ist der Block z.B. ein Zeichen lang.
Andere Verfahren dieser Art sind DES und IDEA, auf die später noch
eingegangen wird.
 |
Abb.3.2.1: Blockchiffre |
Strom-Chiffre verwenden für jedes Zeichen einen neuen Schlüssel.
Es es entsteht eine Folge von Schlüssel, diese wird Schlüsselstrom
genannt.
 |
Abb.3.2.2: Stromchiffre |
Eines dieser Verfahren ist der 'One-time-pad'-Stromchiffre.
Bei diesem Verfahren werden einfach Bit für Bit ein XOR
von Schlüsselstrom und Klartext gebildet. Ist jeder Schlüssel
aus diesem Schlüsselstrom wirklich zufällig gewählt,
ist dies bewiesenermaßen eine unknackbare Verschlüsselung.
Nur wenn der Schlüsselstrom komplett bekannt ist, kann auch die
Nachricht komplett entschlüsselt werden. Ein Brute-Force-Angiff
ist hier nicht möglich. Der große Nachteil daran ist nur,
daß ein Schlüsselstrom nur einmal verwendet werden darf und
dieser genauso lang sein muß wie der Klartext ist.
Beispiel 'One-time-pad' oder wie man ein 'X' für ein 'U' vormacht
Angenommen die Bitfolge m = '01010101' (ASCII für
den Buchstaben 'U') ist mit dem Schlüssel k = '10111110'
mit dem 'One-time-pad'-Stromchiffre verschlüsselt (Abb.3.2.3)
und jemand, sein Name sei Mallory, lauscht der Übertragung des
Kryptogramms c. Mallory könnte nun versuchen einen
Schlüssel zu finden, um die Nachricht zu entschlüsseln.
Er könnte zum Beispiel den Schlüssel kf
= '10110010' versuchen und er würde eine genau so sinnvolle Nachricht
, wie den Originaltext erhalten c, nämlich '01011001',
also den Buchstaben 'X'. Mit anderen Schlüsseln könnte Mallory
jeden anderen Buchstaben als Klartext entschlüsseln.
m = 'U' = |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
k = |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
mÅk =
c = |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
kf = |
1 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
cÅkf
= mf
= |
0 |
1 |
0 |
1 |
1 |
0 |
0 |
1 |
Abb.3.2.3: One-time-pad |
Das symmetrische Verfahren
DES, Data Encryption Standard, ist wohl das am weitesten verbreitete
Krypto-Verfahren. Zum Beispiel wird es in jedem EC-Geldautomaten benutzt
und das sind allein in Deutschland schon eine beachtliche Zahl, aber
auch viele verschlüsselte Übertragungen über das Internet
benutzen dieses Verfahren. DES ist ein von der IBM und dem NSA (National
Security Agency) in den 70er Jahren(Anmerkung: Unterschiedliche
Quellen sagen 1970, 1975 oder 1977) entwickeltes Verfahren zur
symmetrischen Verschlüsselung. Es gehört zu den monoalphabetischen
Verfahren, denn es bildet ein Zeichen genau auf ein anderes Zeichen
des benutzten Alphabets ab. Allerdings ist es in diesem Fall kein Alphabet
einer natürlichen Sprache, sondern jedes Zeichen ist eine Bitfolge
von 64 Stellen. Es handelt sich beim DES also um ein Blockchiffre, mit
einer Blocklänge von 64 Bit. Die benutzten Schlüssel sind
56 Bit lang, und das ist wohl die größte Schwäche des
seit 20 Jahren benutzten Verfahrens. Es wird gesagt, daß der NSA
die IBM dazu überredet hat, die Schlüssellänge
von 128 Bit auf 56 Bit zu reduzieren. Die Schlüssellänge ist
aber das einzige Manko, denn bis heute ist es keinem Kryptoanalytiker
gelungen, ein effektives Verfahren zum Knacken einer DES-Verschlüsselung
zu finden. Da die Rechenleistung der Computer in den letzten zwei Jahrzehnten
drastisch gestiegen ist, reichen die 256 »
7,2 * 1016 möglichen Schlüssel nicht mehr aus um
einem Brute-Force-Angriff
stand zu halten. So ist es im Januar 1999 gelungen, eine DES-Verschlüsselung
in weniger als 24 Stunden zu brechen. Zur weiteren Information darüber
seinen folgende Webseiten empfohlen:
Wegen dieser Unsicherheit wäre es gut, wenn DES auch längere
Schlüssel zulassen würde, aber dies ist systembedingt nicht
möglich. Allerdings setzt sich mehr und mehr der sogenannte TripelDES
oder auch DES3 durch. Hierbei wird ein Block hintereinander mit bis
zu drei unterschiedlichen Schlüsseln mit dem DES-Verfahren verschlüsselt.
Beim DES-Verfahren erhöht dies die Sicherheit der Verschlüsselung,
beim CEASAR-Chiffre z.B. wäre dies nicht von Nutzen, denn erst
eine Verschlüsselung mit k = 3 und dann eine mit k
= 4 hätte das gleiche Ergebnis, wie eine einmalige Verschlüsselung
mit k = 7.
Allerdings ist schon interessant, daß ein Verfahren wie der DES
über 20 Jahre bestand hatte, obwohl sich die Computertechnologie
in dieser Zeit mit hinsicht auf Geschwindigkeit und Leistung stark entwickelt
hat.
Die genaue Funktionsweise des DES und TripleDES ist an vielen Stellen
schon ausführlich beschreiben worden z.B. in [SME98] ,
daher soll obige Beschreibung genügen.
Weitere häufig benutzte Verfahren
IDEA (International Data Encryption Algorithm) ist ein weiterer Blockchiffre,
der wohl besonders durch die Benutzung in dem Kryptoprogramm PGP
seine Verbreitung gefunden hat. Dieses Verfahren wurde von Xuejia Lai
und James Massey in Zürich entwickelt. Im Gegensatz zu DES bietet
dieses Verfahren von vorne herein eine Schlüssellänge von
128 Bit und gilt damit aus heutiger Sicht für die nächsten
Jahre als gesichert gegen Brute-Force-Angriffe.
RC4, für Rivest Cipher No. 4, nach seinem Entwickler Ron Rivest,
ist der dritte im Bunde. Dieses Verfahren ist kein Block-, sondern ein
Strom-Chiffre. Er arbeitet wie der One-time-pad-Chiffre ,
nur daß er Schlüsselstrom in Länge des Klartextes nicht
wirklich zufällig gewählt worden ist, sondern durch einen
Pseudo-Zufallszahlen-Generator erzeugt wird. Dieser Pseudo-Zufallszahlen-Generator
kann beim RC4 mit einer Bitfolge initialisiert werden, um unterschiedliche
Schlüsselströme zu erzeugen. Diese Bitfolge dient als eigentlicher
Schlüssel dieses Verfahrens. Für diegleiche Bitfolge wird
auch immer der gleiche Schlüsselstrom erzeugt. Interessanterweise
ist RC4 nicht auf eine spezielle Schlüssellänge angewiesen,
sondern kann mit beliebigen Schlüssellängen arbeiten. Ein
weiterer Vorteil ist, daß die Verschlüsselungsgeschwindigkeit
10 mal schneller ist als die des DES.
Es gibt natürlich noch weitere Verfahren, aber von diesen hat bisher
keines eine derartige Verbreitung gefunden wie die beschriebenen drei.
|