Datenverschlüsselung

Worum es geht:

Dass Daten verschlüsselt werden können, und dass das was Gutes ist, wissen alle. Aber dass es grundsätzlich 2 Arten gibt, nicht
Hier geht es um symmetrische und asymetrische Verschlüsselung und wie man sie anwendet.

Gründe für Datenverschlüsselung

Verschlüsselung von Daten gibt es seit der Antike. Mit einer Verschlüsselung schützt man Informationen, die nicht öffentlich sein sollen. Gründe dafür gibt es viele:

  • Militärische Geheimnisse
  • Alles was mit Geld und Geldtransfers zu tun hat
  • Sehr persönliche Daten (Krankenakten zum Beispiel)
  • Liebesbriefe ...

In der heutigen Internet-Welt sind Verschlüsselungen allgegenwärtig. Meistens merkt man davon nicht einmal etwas. Aber dennoch ist es gut.

Wie man Daten verschlüsselt

Um Daten zu verschlüsseln und sie wieder zu lesen braucht man mindestens

  • ein Verfahren das beschreibt, wie man Dinge ver- und entschlüsselt
  • ein Geheimnis

Im Mittelalter hat man zum Beispiel Geheimtinte verwendet. Man hat den Text mit der Tinte auf ein Papier geschrieben und sie war unsichtbar. Zum Lesen musste man das Papier über eine Kerze erwärmen.

Bei diesem Vorgehen bestand das Geheimnis darin zu wissen, wie das Verfahren funktioniert. Verfahren und Geheimnis waren eine Einheit.

Auf moderne Zeiten wäre das vergleichbar mir dieser Verschiebe-Regel:

Zum Verschlüsseln eines Textes nimm jeweils den nachfolgenden Buchstaben:
Aus A wird B, aus B wird C und so weiter
Aus dem Wort "Geheimnis" wird so "Hfifjnojt"

Der Nachteil dieses Vorgehen: Ist das Geheimnis aufgedeckt, braucht man ein neues Verfahren.

Trennung von Verfahren und Geheimnis: Schlüssel

Besser ist es, wenn man Verfahren und Geheimnis trennt. Hier mal am Beispiel :

  • Das Verfahren ist bekannt, jeder weiß, dass man die Buchstaben um soviel verschieben muss, wie der Schlüssel vorgibt.
  • Der Schlüssel ist ein Buchstabe

Also: Wenn der Schlüssel "B" ist, dann ist das das der 2. Buchstabe im Alphabet, man muss also alle Buchstaben um 2 verschieben: A -> C, B ->D usw.
Aus "Geheimnis" wird dann "Igjgkopku".

Der Vorteil dieser Trennung: Wird der Schlüssel aus irgend einem Grund bekannt, nimmt man beim nächsten Mal einen anderen.

Dieses Beispiel ist natürlich eine ganz einfache Verschlüsselung. Sie ist ganz leicht zu knacken, in dem man alle Buchstaben ausprobiert.

Diese Methode des "Ausprobieren des Schlüssels" wird "Brute-Force-Attac" (Angriff mit roher Gewalt) genannt ist immer noch ein gängiges Verfahren.



Symmetrische Verschlüsselung

Das oben im Beispiel beschriebene Verfahren benutzt zum Verschlüsseln und Entschlüsseln den gleichen Schlüssel. Dieses Verfahren nennt man

Symmetrische Verschlüsselung

Lokale Verschlüsselung

Symmetrische Verschlüsselung eignet sich besonders, wenn man für sich etwas verschlüsseln will.

Es gibt zahlreiche Programme, die man zum symmetrischen Verschlüsseln verwenden kann.
Beispiele:

  • ZIP

Packen und Verschlüsseln

Hier wird ein verschlüsseltes Archiv erstellt. Als nächstes wird ein Passwort erwartet.
Zum Entschlüsseln muss man genau das gleiche Passwort eingeben.
+ GPG

gpg ist ein Kommandozeiletool, das es für alle Syteme gibt.

Hier mal ein Beispiel für eine Ver- und Entschlüsselung. Ich habe es auf einem Linux - System erstellt, in anderen Systeme ist es aber ähnlich.

gpg-demo

Im Einzelnen:

  1. echo "Hallo" > test.txt
    Es wird die Datei test.txt erzeugt
  2. echo "Hallo" > test.txt
    Die Datei test.txt wird ausgegeben. Wie zu erwarten war, ist der Inhalt "Hallo"
  3. gpg --symmetric test.txt
    Die Datei test.txt wird mit einem symmetrischen Verfahren verschlüsselt. Es öffnet sich ein neues Fenster (nicht dargestellt), in dem man das Passwort eingeben muss
  4. ls -l test (bei Windows heißt dieser Befehl dir test) <br) Das Verzeichnis wird ausgelesen. Neben der ursprünglichen Datei gibt es jetzt zusätzlich die Datei test.txt.gpg. Es ist die verschlüsselte Datei. Man sieht, die Datei ist länger (84 Bytes statt 6). In der Datei muss ja auch noch der Schlüssel und Informationen zum Kodierverfahren enthalten sein.
  5. gpg --output test2.txt --decrypt test.txt.gpg
    Die Datei test.txt.pgp wird entschlüsselt, das Ergebnis wird nach test2.txt geschrieben. Hierzu muss das in 3. verwendete Passwort benutzt werden.
  6. ls -l test*
    Die neue Datei test2.txt ist genau so lang wir die ursprüngliche Datei test.txt, was ja auch gewünscht ist.
  7. cat test2.txt
    Die Ausgabe der Datei ergibt "Hallo", also ist die entschlüsselte Datei gleich der ursprünglichen Datei.

Weitergabe von verschlüsselten Dokumenten

Natürlich kann man die symmetrische Verschlüsselung auch verwenden, wenn man jemand anderem ein Dokument zukommen lassen möchte. Sowohl derjenige, der etwas Verschlüsselt und derjenige, der etwas entschlüsselt, müssen den gleichen Schlüssel kennen.
An den Übertragungskanal sind hierbei keine Anforderungen gestellt. Man kann also ein verschlüsseltes Dokument als Anhang an eine E-Mail hängen. Kein Problem.

Übermittlung von Dokument und Schlüssel

!!! WARNUNG: Eine E-Mail ist eine offene Kommunikation! Wie früher die Postkarte.

Das Problem: Man muss irgendwie den Schlüssel zum Empfänger bekommen. Das muss auf einem getrennten, sicheren Weg erfolgen. Es macht also keinen Sinn, den Schlüssel mit in die Email zu legen ;-). Geeignet sind zum Beispiel verschlüsslte Messenger wie Threema, Signal und Whatsapp. Auch das Telefon ist möglich, aber bei langen Schlüssel langwierig und fehleranfällig.



Asymetrische Verschlüsselung

Die asymmetrische Verschlüsselung bedeutet

Es gibt 2 unterschiedliche Schlüssel, die voneinander abhängen: Einen zum Verschlüsseln, einen zum Entschlüsseln

Es gibt tatsächlich erst seit den 70er Jahren ein mathematisches Verfahren, das eine solche Trennung ermöglicht.
Was auf den ersten Blick umständlich erscheint - man kann sich nicht eifach einen Schlüssel ausdenken, sondern sie müssen in Abhängigkeit generiert werden - erweist sich als genialer Schachzug:

  • Mit dem "Verschlüsselungs-Schlüssel" kann ich wirklich nur verschlüsseln, nicht entschlüsseln. Das heißt, von ihm geht keine Gefahr aus. Ich brauche ihn nicht geheim halten. Im Gegenteil: Ich kann ihn veröffentlichen (auf Server hochladen, an E-Mail anhängen usw.). Er wird daher auch "öffentlicher Schlüssel (public key)" genannt.
  • Den 2. Schlüssel brauche ich zum Entschlüsseln von Informationen, die mit dem öffentlichen Schlüssel verschlüsselt wurden. Im muss ihn unbedingt geheim halten und nicht herausgeben. Das Gute ist: Es besteht überhaupt keine Notwendigkeit, den Schlüssel irgend jemandem mitzuteilen. Er wird "Privater Schlüssel (private key)" genannt.

Eine verschlüsselte Kommunikation zwischen den Teilnehmer A und B sieht dann so aus:

Dokumentenaustausch asymetrisch verschlüsselt

  • Teilnehmer A besorgt sich einen öffentlichen Schlüssel des Teilnehmers B und verschlüsselt das Dokument mit diesem
  • Teilnehmer B entschlüsselt das von A empfangene Dokument mit seinem privaten Schlüssel
  • Der Rückweg funktioniert genau so: Verschlüsselung mit dem öffentlichen Schlüssel von A, entschlüsseln mit dem privaten Schlüsseln

Will man also ein Dokument verschlüsselt übertragen, braucht man den öffentlichen Schlüssel des Empängers.

Auch die Verschlüsselung von E-Mails (machen leider die wenigsten) funktioniert auf diese Weise.

  • Falls man gefragt wird, welches Verschlüsselungsverfahren man verwenden möchte, dann ist man mit AES, RSA, Twofisch oder Triple-DES auf der sicheren Seite.

Das Schlüsselpaar Privat/Öffentlich kann man auch zu anderen Dingen verwenden: "Unterschreiben" von Dokumenten, Zugangskontrolle. Aber dazu mehr in einem der nächsten Posts.



Wer es genauer wissen will

Dir schwirrt der Kopf? Verstehe ich. Aber das hier war nur eine sehr grobe Zusammenfassung. Die meisten IT-Experten sind wahrscheinlich entsetzt, weil es noch so viele Details gibt. Wer mehr wissen will, dem empfehle ich

Verschlüsselung bei Wikipedia Eine Vertiefung von dem , was ich hier erzähle
Verschlüsselungsverfahren Was ich hier erzählt habe, nur technisch detaillierter
Asymmetrische Verschlüsselung (Wikipedia)
Verschlüsseln mit GnuPG Erzeugen und verwenden asymeetrischer Schlüssel

Danksagungen

Vielen Dank an

  • Clker-Free-Vector-Image
  • kreatikar

Für ihre Grafiken be https://pixaby.com