|
|
Verschlüsselung
Verschlüsselung nennt man den
Vorgang, bei dem ein „Klartext“ mit Hilfe eines
Verschlüsselungsverfahrens (Algorithmus) in einen
„Geheimtext“ umgewandelt wird. Als Parameter des
Verschlüsselungsverfahrens werden ein oder mehrere Schlüssel
verwendet. Das Forschungsgebiet, das sich mit der
Verschlüsselung und ihrer Geschichte beschäftigt, wird als
Kryptografie bezeichnet.
Den umgekehrten Vorgang, also die Verwandlung des
Geheimtextes zurück in den Klartext, nennt man
Entschlüsselung. Die Algorithmen zur Ver- bzw.
Entschlüsselung müssen nicht identisch sein. Ebensowenig
müssen identische Schlüssel zum Einsatz kommen. Das
Forschungsgebiet der Entschlüsselung heißt Kryptoanalyse und
ist natürlich eng verwandt mit der Kryptografie.
In der zwischenmenschlichen Kommunikation meint
Verschlüsselung allgemeiner den Ausdruck von Informationen,
die mittels Symbolen an ein Gegenüber übermittelt werden,
von dem entsprechend eine Deutung der Symbole erfolgt. Als
Symbole dienen hierbei z.B. Sprache, Mimik, Gestik,
Lautierungen. Das richtige Verstehen einer Nachricht kann
unter Umständen problematisch sein, weil eine korrekte
Deutung der Symbole im Sinne der Absicht des Senders nicht
immer gelingt (vgl. Vier-Seiten-Modell). |
|
|
Kryptografie und Kryptoanalyse
Als Vertreter historisch gegensätzlicher Interessen stehen
sich Kryptografen und Kryptoanalytiker gegenüber. Die
Entwicklung der Verschlüsselungstechniken erfolgte meist im
Militär. Die eine Seite (Kryptografen) versuchte ihre
Nachrichten zu verschlüsseln - die Gegenseite (Kryptoanalytiker)
versuchte, diese zu entziffern. Heute ist die Forschung auf
dem Gebiet der Verschlüsselung wesentlich breiter. Es gibt
zahlreiche Personen wie auch Institutionen, die sowohl neue
Verschlüsselungstechniken entwickeln als auch gleichzeitig
versuchen, bestehende zu brechen.
In der Hoffnung, einem kryptografischen Verfahren dadurch
zusätzliche Sicherheit zu verleihen, wurden
Verschlüsselungsalgorithmen gerne geheim gehalten, was als
Security by Obscurity bezeichnet wird. Kryptologen
argumentieren, dadurch steige das Risiko heimlicher, aber
routinemäßiger Angriffe auf verschlüsselte Information oder
Transportwege. Daher bemühen sich Wissenschaftler heute, die
Algorithmen von einer breiten Öffentlichkeit analysieren zu
lassen. Denn so lange möglichst viele Fachleute keine
Schwachstelle finden, gilt ein Verfahren noch als sicher.
Die Offenlegung des Verfahrens bildet das Kerckhoffs-Prinzip.
|
|
|
Schlüsselverteilung
Eine grobe Unterscheidung in symmetrische und asymmetrische
Verschlüsselungssysteme ergibt sich aus der Weise, wie
kryptografische Schlüssel an die am Verfahren Beteiligten
vermittelt werden:
Bei symmetrischen Systemen besitzen beide
Kommunikationspartner denselben Schlüssel und müssen diesen
vor Beginn der Kommunikation sicher ausgetauscht haben (z.B.
mittels Diffie-Hellman-Schlüsselaustausch oder der Zusendung
per Post). Bekannte klassische symmetrische Verfahren sind
die Cäsar-Chiffre, der DES (komplexitätstheoretisch sicher)
und das One-Time-Pad (informationstheoretisch sicher). Zu
den modernen und derzeit als sicher angesehenen Verfahren
gehören der Rijndael, Twofish sowie 3DES, wobei dem Rijndael
durch seine Erhebung zum Advanced Encryption Standard und
aufgrund seiner Bevorzugung durch staatliche
US-amerikanische Stellen eine herausragende Rolle zukommt.
Asymmetrische Systeme zeichnen sich dadurch aus, dass für
jeden Teilnehmer ein Schlüsselpaar generiert wird. Ein
Schlüssel jedes Paars wird veröffentlicht, der andere bleibt
geheim. Die Asymmetrie ergibt sich, weil ein Schlüssel eines
Paars immer nur ver- und der andere immer nur entschlüsseln
kann. Das bekannteste dieser Verfahren ist das
RSA-Kryptosystem.
|
|
|
Verschlüsselungsoperationen
Man unterscheidet zwei grundlegende
Verschlüsselungsoperationen, die einzeln oder in Kombination
eingesetzt werden können, um Nachrichten zu verschlüsseln.
* Transposition: Bei einer Transposition werden die Zeichen
untereinander vertauscht. Zum Beispiel wird der Text
rückwärts geschrieben, oder man vertauscht jeden 2. mit
jedem 5. Buchstaben.
* Substitution: Bei der Substitution werden Zeichen durch
andere ersetzt. Zum Beispiel werden alle Buchstaben durch
Zahlen ersetzt.
|
|
|
Verschlüsselungsmodi
Wenn Verschlüsselungen bei derselben Klartext-Eingabe immer
zu denselben Geheimtexten führen, erhöht sich die
Wahrscheinlichkeit, der Verschlüsselung durch analytische
Verfahren auf die Spur kommen zu können. Bei einer
Block-Verschlüsselung werden Zeichen als Block, z.B. jeweils
4 Buchstaben, übersetzt. Eine Strom-Verschlüsselung
überträgt unmittelbar jedes Zeichen oder jedes Bit. Der
verschlüsselte Text oder auch der Klartext kann mit in den
Schlüssel einfließen. Bei Vorgabe eines beliebigen
Startzeichens, des sogenannten Initialisierungsvektors, wird
durch die Rückkopplung bei selbem Schlüssel und selbem
Klartext unterschiedliche Chiffretexte erzeugt. Die Modi
heißen:
* Electronic code book (ECB): Aus einem Klartextblock wird
immer derselbe Geheimtext erzeugt.
* Cipher block chaining (CBC): In die Verschlüsselung fließt
der jeweils vorher verschlüsselte Block ein.
* Cipher Feedback (CFB): Strom-Chiffrierung mit Rückkopplung
des Chiffretextes
* Output Feedback (OFB): Strom-Chiffrierung mit Rückkopplung
des Klartextes
|
|
|
Klartextverarbeitung
Klartexte können bei den meisten Verfahren nicht als Ganzes
verschlüsselt werden, da die verwendeten Algorithmen
bezüglich der Menge der zu verschlüsselnden Daten limitiert
sind. Je nach Art der Klartextverarbeitung unterscheidet man
daher zwei unterschiedliche Verfahren:
* Bei der Blockverschlüsselung wird der Klartext vor der
Verschlüsselung in Blöcke gleicher Größe aufgeteilt. Diese
Blöcke werden dann einzeln verschlüsselt.
* Bei der Stromverschlüsselung wird der Klartext zeichen-
oder bitweise verschlüsselt. Solche Algorithmen bezeichnet
man auch als Online-Algorithmen.
Blockbasierte Verfahren liefern in der Regel bessere
Ergebnisse. Allerdings müssen zu kleine Blöcke dabei durch
bedeutungslose Zeichen aufgefüllt werden, so dass sie eine
höhere Übertragungskapazität in Anspruch nehmen.
|
|
|
Übertragung der Nachricht
Eine verschlüsselte Nachricht muss in der Regel über mehrere
Stationen übertragen werden. Heute handelt es sich dabei
meist um einzelne Computersysteme, d.h. die verschlüsselte
Nachricht wird über ein Computernetzwerk übertragen. Man
unterscheidet dabei zwei grundlegend unterschiedliche
Übertragungsweisen:
* Bei der Leitungsverschlüsselung wird die Nachricht nur
jeweils für den Nachbarcomputer verschlüsselt. Dieser
entschlüsselt die Nachricht, verschlüsselt sie wiederum (mit
einem möglicherweise anderen Verfahren) und schickt sie an
seinen Nachbarn - und so weiter bis zum Zielrechner. Der
Vorteil dieses Verfahrens besteht darin, dass sich jeweils
nur Nachbarrechner auf ein Verschlüsselungsverfahren und
verwendete Schlüssel einigen müssen. Darüber hinaus kann
diese Übertragungsweise auf einer sehr niedrigen
Protokollebene (etwa bereits in der Übertragungshardware)
angesiedelt werden. Der Nachteil besteht darin, dass jeder
einzelne Rechner auf dem Übertragungsweg vertrauenswürdig
und sicher sein muss.
* Bei der Ende-zu-Ende-Verschlüsselung wird die Nachricht
vom Absender verschlüsselt und in dieser Form unverändert
über mehrere Rechner hinweg zum Empfänger übertragen. Hier
hat keiner der übertragenden Rechner Einsicht in den
Klartext der Nachricht. Der Nachteil besteht allerdings
darin, dass sich der Absender mit jedem möglichen Empfänger
auf ein Verschlüsselungsverfahren und zugehörige(n)
Schlüssel einigen muss.
|
|
|
Begriffsdefinition
Kryptographen bemühen sich um eine Abgrenzung von Begriffen,
die umgangssprachlich synonym benutzt werden. Beispiele:
Chiffrierung: Bei der Chiffrierung werden alle Zeichen
einzeln anhand eines Verschlüsselungsverfahrens
verschlüsselt. Beispiel hierfür ist die Cäsar-Chiffre, bei
welcher ein Zeichen aus dem Alphabet als Schlüssel verwendet
wird und anhand der Position des Buchstabens im Alphabet die
Buchstaben des Klartextes zyklisch verschoben werden.
Codierung: Beim Codieren werden alle Zeichen eines
Zeichenvorrats einem anderen Zeichenvorrat zugeordnet. Ein
Beispiel hierfür ist die Codierung aller alphabetischen
Zeichen in den ASCII-Code.
Verschlüsselung/Entschlüsselung: Übertragen des Klartextes
in den Chiffretext (Geheimtext) bzw. die Rückübertragung.
Entziffern: Übertragen eines Chiffretextes in einen Klartext
ohne bekannten Schlüssel. |
|
|
Verschlüsselungsbeispiel
Kurze Mitteilungen und
orthographische Fehler erschweren Entzifferungen, die sich
auf statistische Analysen stützen.
Als Beispiel dient eine
Mitteilung von Kapitänleutnant Hartwig Looks des U-Boots
U264, die er am 19. November 1942 mit einer
4-Walzen-Enigma chiffrierte.
Vor der Verschlüsselung
übertrug der Funker den Text in eine Kurzfassung, die er
dann Buchstabe für Buchstabe als Chiffretext sendete. Dabei
schrieb er auch Zahlen, Leerzeichen und Sonderzeichen um, da
die Enigma nur Großbuchstaben von A bis Z verschlüsseln
konnte.
Klartext
- Von Hartwig Looks:
- Funktelegramm 1132/19,
Inhalt:
- Bei einem Angriff
durch Wasserbomben wurden wir unter Wasser gedrückt. Der
letzte von uns erfasste Standort des Gegners lag um
08:30 Uhr bei Marqu AJ 9863 [= 51'33" N, 41'35" W], Kurs
220 Grad, Geschwindigkeit 8 Seemeilen. Wir stossen nach.
Wetterdaten: Luftdruck um 14 Millibar fallend. Wind aus
NNO Stärke 4, Sichtweite 10 nautische Seemeilen.
Kurztext
- Von Looks:
- FT 1132/19 Inhalt:
- Bei Angriff unter
Wasser gedrückt, Wabos. Letzter Gegnerstand 0830 Uhr
- AJ 9863, 220 Grad, 8
sm. Stosse nach. 14 mb. fällt, NNO 4, Sicht 10.
Klartext vor der
Übertragung
VON L OOKS F T 1 1 3 2 1 9 INHA LT BEI ANGRIFF UNTER ...
vonv onjl ooks jhff ttte inse insd reiz woyy qnns neun inha ltxx beia ngri ffun terw asse
rged ruec ktyw abos xlet zter gegn erst andn ulac htdr einu luhr marq uant onjo tane unac
htse yhsd reiy zwoz wonu lgra dyac htsm ysto ssen achx ekns vier mbfa ellt ynnn nnno oovi
erys icht eins null
Chiffretext
nczw vusx pnym inhz xmqx sfwx wlkj ahsh nmco ccak uqpm kcsm hkse inju sblk iosx ckub hmll
xcsj usrr dvko hulx wccb gvli yxeo ahxr hkkf vdre wezl xoba fgyu jquk grtv ukam eurb veks
uhhv oyha bcjw makl fklm yfvn rizr vvrt kofd anjm olbg ffle oprg tflv rhow opbe kvwm uqfm
pwpa rmfh agkx iibg
Der Chiffretext wurde am 2.
Februar 2006 mit folgenden Parametern entschlüsselt:
- Score: 6259047
- UKW: B
- W/0: B241
- Stecker:
ATBLDFGJHMNWOPQYRZVX
- Rings: AAAV
- Message key: VJNA
|
|
|
Asymmetrisches Kryptosystem
Ein asymmetrisches Kryptosystem ist ein Kryptosystem, das im
Gegensatz zu einem symmetrischen Kryptosystem verschiedene
Schlüssel zur Ver- und Entschlüsselung verwendet.
Prinzip
Das asymmetrische Verfahren wird auch als
Public-Key-Verfahren bezeichnet. Bei diesem Verfahren
besitzt der Anwender zwei Schlüssel, einen öffentlichen und
einen geheimen Schlüssel. Beide Schlüssel erfüllen bestimmte
Aufgaben.
Der öffentliche Schlüssel wird, wie der Name sagt,
öffentlich gemacht. Jeder andere Anwender kann diesen
Schlüssel benutzen, um an den Eigentümer eine verschlüsselte
Nachricht zu senden.
Der geheime Schlüssel wird vom Besitzer geheim gehalten. Er
dient dazu, an ihn gesendete, verschlüsselte Nachrichten zu
entschlüsseln.
Je nach verwendetem Schlüssel entstehen bei der
Verschlüsselung derselben Daten unterschiedliche
verschlüsselte Daten. Sei zum Beispiel T ein zu
verschlüsselnder Text, Verschlüsselung mittels
* geheimen Schlüssel ergibt verschlüsselten Text VTgeheim
* öffentlichen Schlüssel ergibt VTöffentlich.
VTgeheim ist im Allgemeinen verschieden von VTöffentlich.
Nur bei äußerst schlechter Wahl der Schlüssel können beide
verschlüsselten Texte gleich sein. Die Dechiffrierung kann
jeweils nur mit dem Gegenstück erfolgen. Weder kann VTgeheim
mit dem geheimen Schlüssel dechiffriert werden, noch kann
VTöffentlich mit dem öffentlichen Schlüssel dechiffriert
werden. Diese Tatsache wird bei der elektronischen
Unterschrift genutzt, da nur der Besitzer des geheimen
Schlüssels einen Hash-Wert, der das Dokument identifiziert,
chiffrieren kann. Der Hash-Wert des Dokumentes wird vom
Empfänger der Nachricht errechnet und mit dem chiffrierten
Hash-Wert, der mit dem öffentlichen Schlüssel des Absenders
dechiffriert werden kann, auf Übereinstimmung geprüft. Sind
beide Hash-Werte gleich, ist sichergestellt, dass der
Absender im Besitz des geheimen Schlüssels ist und das
Dokument signiert hat.
Geschichte
Asymmetrische Verfahren sind ein relativ neues Gebiet der
Kryptografie. Eine wichtige Vorarbeit für die asymmetrischen
Verfahren sind die Arbeiten von Whitfield Diffie, Martin
Hellman und Ralph Merkle zum geheimen Schlüsselaustausch
Anfang der 1970er Jahre. Im Sommer 1975 veröffentlichten
Diffie und Hellman eine Idee zur asymmetrischen
Verschlüsselung, ohne jedoch ein genaues Verfahren zu
kennen.
Anfang der 1970er Jahre wurden von Ellis, Cocks und
Williamson ein dem späteren Verfahren von Diffie-Hellman
ähnliches asymmetrisches Verfahren entwickelt, welches aber
in seiner wirtschaftlichen Bedeutung nicht erkannt und aus
Geheimhaltungsgründen nicht (wissenschaftlich) publiziert
und auch nicht zum Patent angemeldet wurde. Alle drei waren
Mitarbeiter des englischen Government Communications
Headquarters.
Der Durchbruch gelang Ronald L. Rivest, Adi Shamir und
Leonard M. Adleman, die 1977 das RSA-Verfahren entwickelten.
Es gilt bis heute als sicheres Verfahren und hat außerdem
den großen Vorteil, in beiden Richtungen eingesetzt werden
zu können.
Anwendung
Asymmetrische Kryptosysteme werden u.a. zur Verschlüsselung,
Authentifizierung und Sicherung der Integrität eingesetzt.
Dies geschieht heutzutage z.B. beim E-Mail-Verkehr (OpenPGP,
S/MIME) ebenso wie in kryptografischen Protokollen wie SSH
oder SSL/TLS. In größerem Umfang eingesetzt wird
beispielsweise das Protokoll https, welches zur sicheren
Kommunikation eines Browsers mit dem Server dient.
Eingebettet in solche Protokolle können asymmetrische
Kryptosysteme ebenfalls zur sicheren Abwicklung von
Geschäften im Internet eingesetzt werden, wo sie die
Identität der Vertragspartner bestätigen, diese
authentifizieren und die Unveränderbarkeit der
ausgetauschten Daten sicherstellen sollen (Elektronische
Signatur). Dazu ist oft eine Public-Key-Infrastruktur
notwendig, die die Gültigkeit der Schlüssel durch
Zertifikate bestätigt. Hierfür ist im Allgemeinen ein
vertrauenswürdiger Dienstanbieter erforderlich, der solche
Zertifikate ausstellt. Dabei werden, je nach Klasse der
Zertifikate, auch persönliche Daten erfasst und amtliche
Identifikationsdokumente geprüft.
[Bearbeiten]
Bewertung
[Bearbeiten]
Vorteile
Asymmetrische Kryptosysteme haben den Vorteil, dass sie das
Geheimnis möglichst klein halten, da jeder Benutzer nur
seinen eigenen privaten Schlüssel geheim halten muss. Im
Gegensatz dazu muss bei einem symmetrischen Kryptosystemen
jeder Benutzer alle Schlüssel geheim halten, was mit einem
steigenden Aufwand geschehen muss, je mehr Teilnehmer daran
beteiligt sind (große Zahl an Schlüsseln).
Als weiterer Punkt vermindert sich das so genannte
Schlüsselverteilungsproblem. Bei einem symmetrischen
Kryptosystem müssen die Schlüssel auf einem sicheren Weg
übermittelt werden. Dies kann sehr aufwändig werden, wenn
die Beteiligten weit auseinander wohnen. Mit dem
öffentlichen Schlüssel kann dieses Problem ohne weiteres
ignoriert werden, da nicht er, sondern der private Schlüssel
das Geheimnis trägt. Voraussetzung dafür ist aber, dass der
öffentliche Schlüssel echt ist und nicht von einem
Mittelsmann vorgetäuscht wird. Dies versucht man entweder
mit dem Einsatz von zentralen Zertifizierungsstellen oder
durch Etablierung eines Web of Trust zu gewährleisten.
[Bearbeiten]
Nachteile
Im Vergleich zu symmetrischen Algorithmen arbeiten die
asymmetrischen Algorithmen extrem langsam. In der Praxis
wird dieses Problem dadurch umgangen, dass hybride Verfahren
eingesetzt werden.
Ein anderes Problem ist, dass die Sicherheit vieler
asymmetrischer Kryptosysteme auf unbewiesenen Annahmen
beruht. Es wird lediglich stark vermutet, dass die den
verschiedenen Verfahren zugrundeliegenden Einwegfunktionen
nur mit enormen Rechenaufwand umkehrbar sind. Es kann also
nicht ausgeschlossen werden, dass noch unbekannte
Algorithmen existieren, die die Umkehrung der
„Einwegfunktion“ mit vertretbarem Aufwand leisten. In den
Artikeln zu den einzelnen Verfahren ist dies für das
jeweilig verwendete mathematische Problem genauer
beschrieben.
Es gibt immer noch das Verteilungsproblem mit dem
sogenannten Mittelsmann- oder Man-In-The-Middle-Angriff.
Dabei entsteht die Frage: Ist der öffentliche Schlüssel
tatsächlich echt? Ein Mittelsmann täuscht den öffentlichen
Schlüssel eines Kommunikationspartners vor, entschlüsselt
die Nachricht mit seinem privaten Schlüssel, verschlüsselt
die Nachricht mit dem eigentlichen öffentlichen Schlüssel
und sendet sie weiter. Dieses Problem wird mit Hilfe von
vertrauenswürdigen Zertifizierungsstellen angegangen.
[Bearbeiten]
Weitere Informationen
Zu den asymmetrischen Verschlüsselungsalgorithmen zählen RSA,
die Rabin- und Elgamal-Kryptosysteme. In den letzten Jahren
wurde die Verschlüsselung mit Elliptischen Kurven immer
populärer, da sie mit wesentlich kleineren Schlüsseln
auskommt.
[B
|
|
|
Symmetrisches Kryptosystem
Ein symmetrisches Kryptosystem ist ein Kryptosystem, welches
im Gegensatz zu einem asymmetrischen Kryptosystem den
gleichen Schlüssel zur Ver- und Entschlüsselung verwendet.
Bei manchen symmetrischen Verfahren (z. B. IDEA) ist es
dafür zunächst notwendig, den Verschlüsselungs-Schlüssel in
einen Entschlüsselungs-Schlüssel zu transformieren.
Man teilt die symmetrischen Verfahren in Blockchiffren und
Stromchiffren auf. Mit Stromchiffren wird der Klartext
Zeichen für Zeichen ver- bzw. entschlüsselt, um den Zieltext
zu erhalten. Ein Blockchiffre arbeitet mit einer festen
Blockgröße und ver- bzw. entschlüsselt mehrere Zeichen in
einem Schritt.
Der große Nachteil symmetrischer Verfahren liegt in der
Nutzung ein und desselben Schlüssels zur Ver- und
Entschlüsselung. Ist der Schlüssel einem Angreifer bekannt,
ist es für ihn ein Leichtes, an Information zu gelangen und
Fehlinformationen durch Veränderung der Originalnachricht zu
verbreiten. Ein weiteres typisches Problem beim Einsatz von
symmetrischen Verfahren ist, wie der Schlüssel erstmals über
unsichere Kanäle übertragen werden kann. Üblicherweise
kommen hierzu dann asymmetrische Kryptosysteme zum Einsatz,
basierend auf dem Diffie-Hellman-Algorithmus, womit einige
Vorteile beider ausgenutzt und einige Nachteile beider
ausgemerzt werden können: wie beispielsweise die Kombination
der schnelleren symmetrischen Verschlüsselung mit dem
Wegfallen des Zugriffs eines Angreifers auf den
ungeschützten Schlüssel durch die asymmetrische
Verschlüsselung über einen unsicheren Kanal.
Die ersten angewandten kryptografischen Algorithmen waren
alle symmetrische Verfahren und finden schon Erwähnung zu
Julius Cäsars Zeiten.
[Bearbeiten]
Verfahren
* AES (Advanced Encryption Standard) oder Rijndael: der
US-amerikanische Verschlüsselungsstandard, Nachfolger des
DES; von Joan Daemen und Vincent Rijmen entwickeltes
Blockverschlüsselungsverfahren
* DES (Data Encryption Standard) oder Lucifer: bis zum
Oktober 2000 der Verschlüsselungsstandard der USA. Lucifer,
das Verfahren, wurde 1974 von IBM entwickelt. Die Version
für Privatanwender heißt Data Encryption Algorithm (DEA).
* Triple-DES: eine Weiterentwicklung des DES-Verfahrens;
dreimal langsamer, aber um Größenordnungen sicherer
* IDEA (International Data Encryption Algorithm): ein 1990
an der ETH Zürich entwickeltes
Blockverschlüsselungsverfahren; Software-patentiertiert von
Ascom Systec; Anwendung in PGP
* Blowfish: 1993 von Bruce Schneier entwickeltes
Blockverschlüsselungsverfahren, unpatentiert
* Twofish : Blockverschlüsselungsverfahren, vom Counterpane
Team; wird u.a. in Microsoft Windows eingesetzt.
* CAST-128, CAST-256: Blockverschlüsselungsverfahren von
Carlisle M. Adams, unpatentiert [1]
* RC2, RC4, RC5, RC6 („Rivest Cipher“): mehrere
Verschlüsselungsverfahren von Ronald L. Rivest
|
|
|
|