Angriffe auf Kryptosysteme
In der heutigen Zeit werden nicht nur Unternehmen, sondern fast alle Aspekte des menschlichen Lebens von Informationen bestimmt. Daher ist es unerlässlich geworden, nützliche Informationen vor böswilligen Aktivitäten wie Angriffen zu schützen. Betrachten wir die Arten von Angriffen, denen Informationen normalerweise ausgesetzt sind.
Angriffe werden normalerweise anhand der vom Angreifer ausgeführten Aktion kategorisiert. Ein Angriff kann also seinpassive oder active.
Passive Angriffe
Das Hauptziel eines passiven Angriffs ist es, zu erhalten unauthorized access to the information. Beispielsweise können Aktionen wie das Abfangen und Abhören des Kommunikationskanals als passiver Angriff angesehen werden.
Diese Aktionen sind passiver Natur, da sie weder Informationen beeinflussen noch den Kommunikationskanal stören. Ein passiver Angriff wird so oft gesehen stiehlt Informationen. Der einzige Unterschied beim Diebstahl physischer Güter und beim Diebstahl von Informationen besteht darin, dass der Eigentümer durch den Diebstahl von Daten immer noch im Besitz dieser Daten ist. Ein passiver Informationsangriff ist daher gefährlicher als der Diebstahl von Waren, da der Diebstahl von Informationen vom Eigentümer unbemerkt bleiben kann.
Aktive Angriffe
Bei einem aktiven Angriff werden die Informationen auf irgendeine Weise geändert, indem ein Prozess für die Informationen ausgeführt wird. Zum Beispiel,
Ändern Sie die Informationen auf nicht autorisierte Weise.
Initiieren einer unbeabsichtigten oder nicht autorisierten Übertragung von Informationen.
Änderung von Authentifizierungsdaten wie dem Namen des Absenders oder dem mit Informationen verknüpften Zeitstempel
Nicht autorisiertes Löschen von Daten.
Verweigerung des Zugriffs auf Informationen für legitime Benutzer (Denial of Service).
Die Kryptographie bietet viele Werkzeuge und Techniken zur Implementierung von Kryptosystemen, mit denen die meisten der oben beschriebenen Angriffe verhindert werden können.
Annahmen des Angreifers
Lassen Sie uns die vorherrschende Umgebung um Kryptosysteme sehen, gefolgt von den Arten von Angriffen, die eingesetzt werden, um diese Systeme zu zerstören.
Umgebung um Cryptosystem
Bei der Betrachtung möglicher Angriffe auf das Kryptosystem ist es erforderlich, die Umgebung des Kryptosystems zu kennen. Die Annahmen und das Wissen des Angreifers über die Umgebung bestimmen seine Fähigkeiten.
In der Kryptografie werden die folgenden drei Annahmen über die Sicherheitsumgebung und die Fähigkeiten des Angreifers getroffen.
Details des Verschlüsselungsschemas
Der Entwurf eines Kryptosystems basiert auf den folgenden zwei Kryptografiealgorithmen:
Public Algorithms - Mit dieser Option sind alle Details des Algorithmus gemeinfrei und allen bekannt.
Proprietary algorithms - Die Details des Algorithmus sind nur den Systementwicklern und Benutzern bekannt.
Bei proprietären Algorithmen wird die Sicherheit durch Dunkelheit gewährleistet. Private Algorithmen sind möglicherweise nicht die stärksten Algorithmen, da sie intern entwickelt und möglicherweise nicht umfassend auf Schwachstellen untersucht werden.
Zweitens erlauben sie nur die Kommunikation zwischen geschlossenen Gruppen. Daher sind sie nicht für die moderne Kommunikation geeignet, bei der Menschen mit einer großen Anzahl bekannter oder unbekannter Entitäten kommunizieren. Nach Kerckhoffs Prinzip wird der Algorithmus auch bevorzugt öffentlich sein, wobei die Stärke der Verschlüsselung im Schlüssel liegt .
Daher ist die erste Annahme über die Sicherheitsumgebung, dass die encryption algorithm is known to the attacker.
Verfügbarkeit von Chiffretext
Wir wissen, dass der Klartext, sobald er in Chiffretext verschlüsselt ist, zur Übertragung auf einen unsicheren öffentlichen Kanal (z. B. E-Mail) gestellt wird. Somit kann der Angreifer offensichtlich davon ausgehen, dass dies der Fall istaccess to the ciphertext generated by the cryptosystem.
Verfügbarkeit von Klartext und Chiffretext
Diese Annahme ist nicht so offensichtlich wie andere. Es kann jedoch Situationen geben, in denen ein Angreifer auftreten kannaccess to plaintext and corresponding ciphertext. Einige solche möglichen Umstände sind -
Der Angreifer beeinflusst den Absender, Klartext seiner Wahl zu konvertieren, und erhält den Chiffretext.
Der Empfänger kann den Klartext versehentlich an den Angreifer weitergeben. Der Angreifer hat Zugriff auf den entsprechenden Chiffretext aus dem offenen Kanal.
In einem Kryptosystem mit öffentlichem Schlüssel befindet sich der Verschlüsselungsschlüssel in einer offenen Domäne und ist jedem potenziellen Angreifer bekannt. Mit diesem Schlüssel kann er Paare entsprechender Klartexte und Chiffretexte erzeugen.
Kryptografische Angriffe
Die grundlegende Absicht eines Angreifers besteht darin, ein Kryptosystem zu zerstören und den Klartext aus dem Chiffretext zu finden. Um den Klartext zu erhalten, muss der Angreifer nur den geheimen Entschlüsselungsschlüssel herausfinden, da der Algorithmus bereits gemeinfrei ist.
Daher unternimmt er maximale Anstrengungen, um den im Kryptosystem verwendeten geheimen Schlüssel herauszufinden. Sobald der Angreifer den Schlüssel ermitteln kann, gilt das angegriffene System als defekt oder kompromittiert .
Basierend auf der verwendeten Methodik werden Angriffe auf Kryptosysteme wie folgt kategorisiert:
Ciphertext Only Attacks (COA)- Bei dieser Methode hat der Angreifer Zugriff auf eine Reihe von Chiffretexten. Er hat keinen Zugang zu entsprechendem Klartext. COA gilt als erfolgreich, wenn der entsprechende Klartext aus einem gegebenen Satz von Chiffretext bestimmt werden kann. Gelegentlich kann der Verschlüsselungsschlüssel aus diesem Angriff ermittelt werden. Moderne Kryptosysteme sind vor Nur-Chiffretext-Angriffen geschützt.
Known Plaintext Attack (KPA)- Bei dieser Methode kennt der Angreifer den Klartext für einige Teile des Chiffretextes. Die Aufgabe besteht darin, den Rest des Chiffretextes anhand dieser Informationen zu entschlüsseln. Dies kann durch Bestimmen des Schlüssels oder über eine andere Methode erfolgen. Das beste Beispiel für diesen Angriff ist die lineare Kryptoanalyse gegen Blockchiffren.
Chosen Plaintext Attack (CPA)- Bei dieser Methode hat der Angreifer den Text seiner Wahl verschlüsselt. Er hat also das Chiffretext-Klartext-Paar seiner Wahl. Dies vereinfacht seine Aufgabe, den Verschlüsselungsschlüssel zu bestimmen. Ein Beispiel für diesen Angriff ist die differentielle Kryptoanalyse, die sowohl gegen Blockchiffren als auch gegen Hash-Funktionen angewendet wird. RSA ist ein beliebtes Kryptosystem mit öffentlichem Schlüssel und anfällig für ausgewählte Klartextangriffe.
Dictionary Attack- Dieser Angriff hat viele Varianten, die alle das Kompilieren eines 'Wörterbuchs' beinhalten. Bei der einfachsten Methode dieses Angriffs erstellt der Angreifer ein Wörterbuch mit Chiffretexten und entsprechenden Klartexten, die er über einen bestimmten Zeitraum gelernt hat. Wenn ein Angreifer in Zukunft den Chiffretext erhält, verweist er auf das Wörterbuch, um den entsprechenden Klartext zu finden.
Brute Force Attack (BFA)- Bei dieser Methode versucht der Angreifer, den Schlüssel zu ermitteln, indem er alle möglichen Schlüssel versucht. Wenn der Schlüssel 8 Bit lang ist, beträgt die Anzahl der möglichen Schlüssel 2 8 = 256. Der Angreifer kennt den Chiffretext und den Algorithmus und versucht nun, alle 256 Schlüssel nacheinander zu entschlüsseln. Die Zeit, um den Angriff abzuschließen, wäre sehr hoch, wenn der Schlüssel lang ist.
Birthday Attack- Dieser Angriff ist eine Variante der Brute-Force-Technik. Es wird gegen die kryptografische Hash-Funktion verwendet. Wenn Schüler einer Klasse nach ihren Geburtstagen gefragt werden, ist die Antwort eines der möglichen 365 Daten. Nehmen wir an , die ersten Schüler birth 3 rd August dann die nächsten Schüler zu finden , dessen Geburtsdatum 3 rd August, müssen wir 1,25 erkundigen * √365 ≈ 25 Studenten.
Wenn die Hash-Funktion 64-Bit-Hash-Werte erzeugt, sind die möglichen Hash-Werte 1,8 x 10 19 . Durch wiederholtes Auswerten der Funktion für verschiedene Eingänge wird erwartet, dass derselbe Ausgang nach etwa 5,1 × 10 9 zufälligen Eingaben erhalten wird.
Wenn der Angreifer zwei verschiedene Eingaben finden kann, die denselben Hashwert ergeben, ist dies a collision und diese Hash-Funktion soll kaputt sein.
Man in Middle Attack (MIM) - Die Ziele dieses Angriffs sind hauptsächlich Kryptosysteme mit öffentlichen Schlüsseln, bei denen der Schlüsselaustausch erfolgt, bevor die Kommunikation stattfindet.
Host A möchte mit Host B kommunizieren und fordert daher den öffentlichen Schlüssel von B an .
Ein Angreifer fängt diese Anforderung ab und sendet stattdessen seinen öffentlichen Schlüssel.
Unabhängig davon, was Host A an Host B sendet , kann der Angreifer lesen.
Um die Kommunikation zu pflegen, verschlüsselt Wieder der Angreifer die Daten , nachdem er mit seinen öffentlichen Schlüssel zu lesen und sendet an B .
Der Angreifer sendet seinen öffentlichen Schlüssel als öffentlichen Schlüssel von A , sodass B ihn so nimmt, als würde er ihn von A nehmen .
Side Channel Attack (SCA)- Diese Art von Angriff richtet sich nicht gegen eine bestimmte Art von Kryptosystem oder Algorithmus. Stattdessen wird es gestartet, um die Schwachstelle bei der physischen Implementierung des Kryptosystems auszunutzen.
Timing Attacks- Sie nutzen die Tatsache aus, dass unterschiedliche Berechnungen unterschiedliche Zeiten für die Berechnung auf dem Prozessor benötigen. Durch Messen solcher Zeitabläufe ist es möglich, über eine bestimmte Berechnung Bescheid zu wissen, die der Prozessor ausführt. Wenn die Verschlüsselung beispielsweise länger dauert, zeigt dies an, dass der geheime Schlüssel lang ist.
Power Analysis Attacks - Diese Angriffe ähneln Timing-Angriffen, mit der Ausnahme, dass der Stromverbrauch verwendet wird, um Informationen über die Art der zugrunde liegenden Berechnungen zu erhalten.
Fault analysis Attacks - Bei diesen Angriffen werden Fehler im Kryptosystem induziert und der Angreifer untersucht die resultierende Ausgabe auf nützliche Informationen.
Praktikabilität von Angriffen
Die hier beschriebenen Angriffe auf Kryptosysteme sind hoch akademisch, da die meisten von ihnen aus der akademischen Gemeinschaft stammen. Tatsächlich beinhalten viele akademische Angriffe ziemlich unrealistische Annahmen über die Umgebung sowie die Fähigkeiten des Angreifers. Beispielsweise benötigt der Angreifer bei einem Angriff mit ausgewähltem Chiffretext eine unpraktische Anzahl absichtlich ausgewählter Klartext-Chiffretext-Paare. Es kann insgesamt nicht praktisch sein.
Die Tatsache, dass ein Angriff vorliegt, sollte jedoch Anlass zur Sorge geben, insbesondere wenn die Angriffstechnik das Potenzial zur Verbesserung aufweist.