Wie gängige Kryptographie-Techniken online funktionieren
Ohne moderne Kryptographietechniken würde das Internet, wie wir es kennen, nicht existieren. Sichere Kommunikation ermöglicht praktisch alle Online-Interaktionen. Verschlüsselungsalgorithmen ermöglichen den sicheren Austausch von Daten und die sichere Identitätsüberprüfung. Ohne diese gemeinsamen kryptographischen Werkzeuge könnte unsere moderne vernetzte Gesellschaft nicht so funktionieren wie heute.
Symmetrische Schlüsselverschlüsselungsalgorithmen
Symmetrische Schlüsselverschlüsselungsalgorithmen beruhen auf einem sicheren Kennwort als Schlüssel. Dies ist die älteste Form der Verschlüsselung. Symmetrische Schlüssel bilden die Basis von Kombinationsschlössern bis hin zur modernen Festplattenverschlüsselung. AES, DES und Blowfish sind moderne symmetrische Verschlüsselungsalgorithmen.
Da die symmetrische Verschlüsselung einen gemeinsamen Schlüssel erfordert, muss der Schlüsselaustausch sicher durchgeführt werden. Während moderne Techniken wie der Diffie-Hellmen-Schlüsselaustausch den Austausch eines gemeinsamen Geheimnisses über unsichere Leitungen ermöglichen, erfordert dies einen erheblichen Kommunikationsaufwand und auch ein gemeinsames Vertrauen zwischen den Kommunikationen. Wenn ein gemeinsamer Schlüssel nicht sicher ausgetauscht werden kann, kann keine Kommunikation durchgeführt werden.
Während die symmetrische Schlüsselverschlüsselung in der Online-Kommunikation verwendet wird, wird sie fast immer mit der Verschlüsselung mit öffentlichem Schlüssel gepaart, was eine sichere Kommunikation über offene Kanäle ermöglicht.
Verwandt : PGP-Verschlüsselung: Wie es funktioniert und wie Sie beginnen können
Verschlüsselungsalgorithmen mit asymmetrischen Schlüsseln (öffentlichen Schlüsseln)
Bei der asymmetrischen oder öffentlichen Schlüsselverschlüsselung werden zwei kryptografische Schlüssel verwendet. Diese Schlüssel stehen mathematisch zueinander in Beziehung. Der öffentliche Schlüssel, der weit verbreitet ist, verschlüsselt die Nachricht. Der private Schlüssel entschlüsselt die Nachricht. Daher kann jeder Absender eine Nachricht mit dem öffentlichen Schlüssel eines Empfängers verschlüsseln. Dann können sie sicher sein, dass nur der beabsichtigte Empfänger die Nachricht entschlüsseln kann, weil Parteien kein Geheimnis teilen; Sie brauchen kein Vertrauen.
Als praktisches Beispiel betrachte diese Analogie. Was, wenn Alice sicher mit Bob kommunizieren will, aber sie vertraut ihm nicht?
- Alice erwirbt ein Vorhängeschloss und eine Tastenkombination. Sie entriegelt das Vorhängeschloss mit ihrem Schlüssel und schickt Bob das entsperrte Vorhängeschloss.
- Bob legt seine Nachricht in eine Box und benutzt Alices Vorhängeschloss, um sie zu sperren.
- Bob bringt Alice die verschlossene Schachtel zurück, die mit Alice 'Vorhängeschloss gesichert ist.
- Alice öffnet die Schachtel mit dem Schlüssel des Vorhängeschlosses, den nur sie besitzt.
Um die Kommunikation zu erleichtern, kann Alice das entsperrte Vorhängeschloss duplizieren und weit verbreiten. Jeder mit dem Vorhängeschloss kann ihr eine sichere Kommunikation senden. Bei einer ausreichend komplexen Sperre kann ein Angreifer den Schlüssel nicht allein aus der Sperre ableiten.
Sicherheit in (großen) Zahlen
Um sicher zu bleiben, beruhen diese Algorithmen auf komplexen Vorhängeschloss- / mathematischen Problemen ohne bekannte effiziente Lösung. Diese hartnäckigen Probleme definieren Einwegfunktionen: leicht zu berechnen in einer Richtung, aber extrem schwierig rückwärts zu berechnen. RSA, ein häufig verwendeter Algorithmus mit öffentlichem Schlüssel, beruht auf der Schwierigkeit, Primfaktoren von ganzen Zahlen mit Hunderten von Dezimalziffern zu finden.
Zu Beginn erzeugt ein RSA-Benutzer zwei sehr große Primzahlen. Diese Zahlen werden dann miteinander multipliziert, um das Produkt zu erstellen. Der Benutzer behält die Primfaktoren, aus denen der private Schlüssel besteht, ein Geheimnis. Der Benutzer veröffentlicht einen öffentlichen Schlüssel, der aus dem Produkt des ersten Paars abgeleitet ist. Der öffentliche Schlüssel verschlüsselt Nachrichten; Der private Schlüssel entschlüsselt sie.
Ohne die Primfaktoren zu kennen, würde das Finden der Hauptfaktoren des Produkts eine unmögliche Zeit erfordern. RSA-1024, der Mindeststandard, verwendet 1024-Bit-Binärprodukte, die aus binären 512-Bit-Primzahlen hergestellt werden. Nach der Mathematik würde es 5, 95 × 10 ^ 211 Jahre erfordern, ohne den Schlüssel zu faktorisieren. Für die Perspektive existiert das Universum nur für vergleichsweise kurze 13, 75 x 10 ^ 19 Jahre.
Hash-Funktionen
Eine Hash-Funktion übersetzt eine Nachricht beliebiger Länge in eine Zeichenfolge fester Länge, die als Hash oder Digest bezeichnet wird. Kryptografische Hashes sind deterministisch: Die gleiche Eingabe erzeugt immer die gleiche Ausgabe. Selbst kleine Änderungen an der Nachricht führen zu einem dramatisch anderen Hash. Das Entdecken von zwei eindeutigen Nachrichten, die den gleichen Hash-Wert erzeugen, wird Hash-Kollision genannt und sollte nicht durchführbar sein.
Digitale Signaturen und Passwort-Authentifizierung verwenden beide Hash-Funktionen wie SHA. Anstatt Ihr Klartextpasswort zu authentifizieren, verwenden Login-Server den Hash des Passworts. Der Server vergleicht diesen Hash mit dem gespeicherten Hash des Servers. Derselbe Hash, dasselbe Passwort.
Gesalzene Hashes
Für das Speichern von Kennwörtern fügen Unternehmen in der Regel vor dem Hashing ein "Salt" hinzu. Diese zufällig generierte Zeichenfolge wird vor dem Hashing mit dem Kennworttext verkettet, um sicherzustellen, dass selbst zwei identische Kennwörter eindeutige Hashes erzeugen. Dies schützt auch vor einem Wörterbuchangriff auf eine gestohlene Tabelle von Hash-Passwörtern.
Fazit
Bis in die 1970er Jahre setzte die Verschlüsselung auf symmetrische Schlüssel. Erst nach dem Nachweis der Verschlüsselung mit öffentlichem Schlüssel könnten zwei verschiedene Schlüssel - eine Verschlüsselung, eine Entschlüsselung - für die Kommunikation verwendet werden. Dieser revolutionäre Wandel, der eine Kommunikation ohne Vertrauen ermöglicht, ermöglicht es, dass das Internet in der heutigen Form existiert. Alles, von Banking und Shopping bis zu Messaging und Web-Browsing, hängt davon ab.