Sicherheit allgemein

Der uneingeschränkte Zugang zu öffentlichen Netzen (z.B. Internet, öffentliche WLANs) bedeutet gleichzeitig eine Gefährdung der unverschlüsselt übertragenen Daten (der stattfindenden Kommunikation).

Schon zu Zeiten Cäsars wurden übersandte Informationen verschlüsselt:

Beispiel: ROT-13 (Rotation um 13 Zeichen, also um die Hälfte des Alphabets (26 Buchstaben))

mögliche Ausgangstabelle:

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26

A (1) wird zu N (1+13=14),
B (2) wird zu O (2+13=15) etc.,
Z (26) wird zu M (0+13 = 13)

"Zuse" wird zu "Mhfr" -> 'Mhfr" wird wieder zu "Zuse"

ROT-1: HAL wird zu H + 1 = I, A + 1 = B, L + 1 = M also IBM (HAL-Rechner aus Stanley Kubrick: 2001. Odyssee im Weltraum)

Mit diesem Verfahren wird also Zeichen für Zeichen kodiert. Das ROT-System ist im Übrigen natürlich nicht sicher und leicht wieder zu entschlüsseln.

Ein Verfahren, das nun nicht Zeichen für Zeichen, sondern gleich Zeichenblöcke kodiert, ist das DES Verfahren (Data Encryption Standard von IBM). Heutzutage (2004) - mit der Verfügbarkeit von schnellen Rechnern - gilt es als zu unsicher (innerhalb von Stunden/Tagen entschlüsselbar) - und wird durch triple-DES (dreimalige Anwendung des Verfahrens hintereinander) bzw. AES (Advanced Encryption Standard, Rijndael-Algorithmus) abgelöst.

AES basiert auf dem Umstand, das große natürliche Zahlen (ca. mit 220 Stellen) sehr aufwändig in ihre Primfaktoren zu zerlegen sind (Beispiel: Primfaktorenzerlegung von 123456789 = 3 * 3 * 3607 * 3803).

AES / DES / Triple-DES

Was wird wie verschlüsselt?

Durch unverschlüsselte (ungesicherte) Datenübertragung, Attacken aus dem Internet, Angriffe durch Viren und Würmer, Ausnutzung von Sicherheitslücken, etc.) ergeben sich Zustände, die für eine vertrauenswürdige Kommunikation nicht haltbar sind. Kryptografie bezweckt über die reine Geheimhaltung hinaus auch die Integrität der Daten und die eindeutige Authentifizierung der Herkunft (Bereich e-Commerce).

Allgemein wird zwischen Dateiverschlüsselung (z.B. e-Mail mit PGP verschlüsseln, Datei mit WinZip verschlüsseln) und Übertragungsverschlüsselung (Echtzeitverschlüsselung aller zu sendenden Daten "während" des Transfers durch einen sicheren, verschlüsselten Transportmechanismus) unterschieden.

Verschlüsselungssysteme werden in symmetrische und asymmetrische eingeteilt. Bei symmetrischen Verfahren wird der gleiche Schlüssel zur Ver- und Entschlüsselung eingesetzt.

Gängige symmetrische Verfahren: DES (56Bit Schlüssel), 3-DES (112Bit), IDEA (128 Bit, International Data Encryption Alogorithm), RC2 und RC4 (bis 2048 Bit).

Bei asymmetrischen Verfahren wird je ein eigener Schlüssel zur Ver- und Entschlüsselung eingesetzt (z.B. PGP mit public key und private key). Die Schlüssel lassen sich nicht voneinander ableiten (somit kann auch bei PGP der public-key hergeben werden, da von ihm nicht auf den private-key geschlossen werden kann).

Ein solches Schlüsselpaar wird wiederum mit dem RSA-Algorithmus (Rivest, Shamir, Adleman) erstellt.

Die Länge eines Schlüssels (in Bit angegeben) hängt von Faktoren wie:

- Wichtigkeit der Daten
- wie lange sollten die Daten nicht entschlüsselbar sein (Abschätzung der Rechenleistung)

Allgemeine FAQ vom RSA-Lab

In der Praxis werden oft hybride Verfahren angewandt: z.B. der Sender schickt einen generierten symmetrischen Schlüssel an den Empfänger mittels dessen public-key, damit die weitere Kommunikation bis zum Kommunikationsende mit dem schnelleren symmetrischen Verfahren durchgeführt werden kann.

Digitale Signaturen stehen für

  • Authentizität des Absenders
  • sicheren Datenaustausch (nur Empfänger hat Einsicht in die Daten)
  • Integrität des Dokuments
  • verbindliche, rechtssichere Transaktionen
  • als Art Siegel für jegliche digitale Daten
  • Vergabe durch authorisierte Institutionen (Certificate Authorities CA, Trust Centers)

Sie lassen sich z.B. auf EC-Karten (in Österreich voraussichtlich bis ca. Ende 2004), Chipcards, SmartCards, etc. abfragen.

Keys lassen sich auch von Zertifizierungsinstanzen zertifizieren. Sie stellen somit ein digitales Zertifikat z.B. für eine Person und dessen Public-Key zur Verfügung. Je nach Zertifizierungsstufe kann es sein, dass dazu ein persönliches Erscheinen mit amtlichem Lichtbildausweis nötig ist. Die Zertifizierungsdienste benutzen ebenfalls einen Private- u. Public-Key. Sie signieren das erstellte Zertifikat mit ihrem Private-Key, die Zertifikatsempfänger können die Echtheit des erhaltenen Zertifikats dann wiederum mit dem Public-Key des Zertifizierungsdienstes überprüfen.

Im Gegensatz zu symmetrischen Verschlüsselungsverfahren, hat das Private-/Public-Key Verfahren den Vorteil, dass der Privatekey völlig geheim gehalten werden kann - manche legen ihn auch auf einer Diskette ins Bankschließfach.

Kombination von Signierung und Verschlüsselung: z.B. der Sender verschlüsselt die eigene Nachricht mit seinem privaten Schlüssel (=Signierung) und danach erst mit dem öffentlichen Schlüssel des Empfängers (=Verschlüsselung).

Erweiterung von Protokollen

S/MIME (für Emails, mit Verschlüsselung und Signierung)

SSLv3 (Secure Socket Layer, sichere Transportverbindung mit Verschlüsselung und Signierung, z.B. für

  • https (WWW),
  • ssmtp (E-Mail Versandt),
  • spop3 (E-Mailabruf)

Ergänzende und vertiefende Module