it-swarm.com.de

Ist ein Teil einer verschlüsselten Datei leichter zu knacken?

Ist es nach dem Verschlüsseln einer Datei (GPG mit AES) und dem Aufteilen in Blöcke (Teilen) einfacher, einen der Teile zu knacken als die gesamte Datei? (Vielleicht, weil es einige wichtige Teile verliert.)

11
rugowimola

Nein. Sie müssen immer noch den gleichen Verschlüsselungsschlüssel finden, um die Daten in Klartext zu entschlüsseln. Das Finden des Schlüssels ist der schwierige Teil. Das Entschlüsseln eines ganzen oder teilweisen Bildes ist trivial, sobald Sie den Schlüssel haben.

Wenn Sie ein Verschlüsselungsschema verwenden, bei dem die Datei basierend auf dem Abschnitt, der zuletzt (de/en) entschlüsselt wurde, deterministisch verschlüsselt und entschlüsselt wird, kann es schwieriger sein, zuverlässig denselben Klartext zu erhalten, den Sie erhalten hätten, wenn Sie ihn ausgeführt hätten die gleiche Entschlüsselung für die gesamte Datei, wenn die Datei aufgeteilt ist nach Verschlüsselung. Dies ist für CBC-Verschlüsselungsschemata teilweise relevant. Sie können Klartextblöcke wiederherstellen, wenn Ihr Archiv Dateien in Segmente von zwei oder mehr Chiffretextblöcken oder länger unterteilt. Wenn Sie den gesamten Chiffretext in Segmente von jeweils einem Chiffrierblock aufteilen würden, würden Sie jeden Block, dem beide benachbarten Blöcke fehlen, als nicht entzifferbar machen.

Wenn Sie ein Schema verwenden, das auf jedes kleinere Segment einen anderen Verschlüsselungsschlüssel anwendet, erhöhen Sie die Anzahl der Schlüssel, die zum Entschlüsseln der gesamten Nachricht erforderlich sind. Dies wird jedoch sehr implementierungsspezifisch.

BEARBEITEN:

In Bezug auf "Verlust wichtiger Bits" - Ich gehe davon aus, dass Sie, wenn Sie die verschlüsselte Datei aufteilen und einige der Segmente löschen (oder an anderer Stelle speichern), möglicherweise Teile der Datei löschen, die die Sicherheit der Datei gewährleisten Inhalte wie eine Prüfsumme oder so.

So wie moderne Krypto funktioniert, sind Ihr Endergebnis zwei Daten - Ihr Verschlüsselungsschlüssel und der Chiffretext. Ein guter Krypto-Algorithmus enthält keine eindeutigen "Teile" im Chiffretext. Idealerweise sollte es nicht von weißem Rauschen zu unterscheiden sein. Andernfalls öffnen Sie Ihren Chiffretext sowohl für die Erkennung als auch für das Reverse Engineering. Aus einem Chiffretext sind also keine besonders wichtigen Teile zu verlieren.

Eine gute Möglichkeit, über ein "Macht es das Angreifen einfacher?" - eine Frage ist, sich zu fragen: "Kann der Angreifer es trivial tun?".

Wenn das Aufteilen einer Datei in Blöcke were den Angriff tatsächlich erleichtert, ist dies die Standardprozedur für jeden Angreifer. Dies bringt uns zu einer wichtigen Beobachtung: Verschlüsselungsschemata haben keine feste "Stärke". Sie sind nur so stark wie der derzeit bekannteste Angriff.

Nehmen wir zum Beispiel RSA: RSA beruht auf der Tatsache, dass die Primfaktorisierung schwierig ist. Wenn jemand einen Alogrithmus entwickeln würde, der es doppelt so einfach macht, große Primzahlen zu faktorisieren, würde RSA schwächer werden.

4
MechMK1

Das Aufteilen Ihrer Datei nach der Verschlüsselung erleichtert den Angriff nicht. Wenn Sie einen Algorithmus wie AES verwenden, entspricht die Ausgabe (Ihre verschlüsselte Datei) fast einer Reihe von Zufallsbits für jemanden, der den verwendeten Schlüssel nicht kennt. Das Entfernen eines Teils dieses Sets hilft ihnen also auf keinen Fall.

3
Whysmerhill

Der Vollständigkeit halber möchte ich darauf hinweisen, dass es möglich ist, eine Datei auf gefährliche Weise zu teilen.

Wie? Nun, wenn der Ort der Aufteilung in irgendeiner Weise vom Schlüssel selbst abhängt (z. B. teilen Sie den Schlüssel in 4-Byte-Blöcke auf und teilen die Datei dann an den durch jeden 4-Byte-Wert gegebenen Offsets auf), kann dies offensichtlich auslaufen der Schlüssel.

Wie konnte das bei einem Unfall passieren?

  1. Sie weisen Ihr 12-jähriges Kind an, die Datei auf "unterhaltsame" Weise aufzuteilen, und es entscheidet sich dafür, basierend auf den durch den Schlüssel angegebenen Offsets.

  2. Sie sind nglaublich gelangweilt nd nicht über mögliche Sicherheitsbedenken informiert und versuchen daher, bei der Aufteilung "kreativ" zu sein und daher etwas Ähnliches zu tun.

Realistisch gesehen würde es nicht passieren, wenn Sie darauf achten, was Sie tun.

2
user541686

Beachten Sie zunächst, dass beim Verschlüsseln einer Datei mit GPG mit AES das, was Sie tatsächlich verschlüsseln, bereits in zwei Teile geteilt ist, da Sie sich auf ein sogenanntes " hybrides Verschlüsselungsschema " verlassen:

  1. Sie generieren einen zufälligen AES-Schlüssel, mit dem Sie Ihre Daten verschlüsseln können. Dieser Schlüssel ist der "Data Encryption Key" (DEK), da symmetrische Chiffren wie AES viel schneller sind als Kryptografie mit öffentlichen Schlüsseln wie RSA.
  2. Im nächsten Schritt wird der asymmetrische GPG-Algorithmus (normalerweise RSA) verwendet, um dieses DEK mit dem öffentlichen Schlüssel des Empfängers zu verschlüsseln, der dann als "Schlüsselverschlüsselungsschlüssel" (KEK) bezeichnet werden kann.
  3. Der eigentliche Chiffretext besteht am Ende aus zwei Teilen: dem verschlüsselten DEK und den verschlüsselten Daten.

Jetzt können Sie Ihren Chiffretext offensichtlich in den "RSA" -Teil und den "AES" -Teil aufteilen, ohne es dem Angreifer tatsächlich schwerer zu machen, zu brechen: Sie müsste immer noch entweder den RSA-Teil oder den AES-Teil knacken, aber das könnte Machen Sie es dem Angreifer schwerer, tatsächlich den Teil zu erhalten, den er zu knacken bereit ist (auf operativer Ebene).

In Bezug auf die Daten selbst bedeutet die Verschlüsselung mit AES, dass Sie zusammen mit Ihrer symmetrischen Verschlüsselung ein Betriebsmodus verwenden, da einfaches AES nur 1 Block mit 128 Bit verschlüsseln kann. Aber der OpenPGP-Standard definiert seinen sehr eigene Variante des CFB-Modus, was bedeutet, dass Sie sich bei der Verwendung von GPG mit AES darauf verlassen.

Da die von OpenPGP verwendete CFB-Variante tatsächlich eine "korrekte Schlüsselprüfung" innerhalb ihrer zwei ersten Blöcke verschlüsselter Daten aufweist, ist es ausreichend, die beiden ersten Chiffretextblöcke zu haben, um zu wissen, ob man den richtigen Schlüssel gefunden hat oder nicht, jedoch die Entschlüsselung Der Prozess eines Blocks basiert nur auf dem AES DEK und dem vorherigen Chiffretextblock.

Unter betrieblichen Gesichtspunkten würde eine Aufteilung der Daten in einer Weise, dass keine zwei gleichzeitigen Blöcke zusammen übertragen werden, wahrscheinlich die Komplexität des Angriffs erhöhen , da dem Angreifer die IV fehlen würde, selbst wenn sie den Schlüssel hätte, und sie daher sowohl die IV der Blöcke als auch den Schlüssel brutal erzwingen müsste ... Ausgehend von einer sicherheitstheoretischen Aus Sicht der AES und des CFB-Betriebsmodus durch Aufteilung der Daten in mehrere Blöcke gibt es keine signifikante Erhöhung oder Verringerung der Sicherheit.

Beachten Sie, dass die AES-Verschlüsselung nur dann als sicher gilt, wenn der Schlüssel ein Geheimnis ist. (Und die IV soll kein Geheimnis sein.) Dies ändert sich nicht, wenn Sie eine Operation (die nicht mit dem Schlüssel zusammenhängt) nur für den Chiffretext ausführen, andernfalls könnte ein Angreifer dies einfach selbst tun.

0
Lery