Ankündigung

Einklappen
Keine Ankündigung bisher.

Blockchiffre Operationsmodi

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Blockchiffre Operationsmodi

    Hi!
    Das hier veröffentlichte "Blockchiffre Operationsmodi" Tutorial ist wirklich gelungen und
    hat mir weitergeholfen. Nichts desto trotz hab ich an die Kryptologen unter euch noch einige Zusatzfragen,
    da mir noch nicht alles klar geworden ist. Ich muss zusätzlich anmerken, dass ich mich seit nun 3 Monaten selbst mit dem Thema beschäftige und den ein oder anderen Algorithmus implementiert habe.

    Und zwar:

    1.Was ist mit dem "Counter (CTR)" modi. Welche Vor und Nachteile hat dieser?
    - Wie er funktioniert wieß ich .

    2.Sei enc eine Blockchiffre mit dazugehöriger Entschlüsselungsfunktion dec, die eine
    Schlüssellänge von n Bit besitzt. Angenommen wir verwenden eine Doppel-
    Verschlüsselung:
    c = enc(k2, enc(k1,m))
    Wieviel Bit an Sicherheit besitzt diese Doppelverschlüsselung mit dem 2n-Bit-Schlüssel
    (k1, k2)?

    Greetings Chris

  • #2
    Zitat von justenjoymusic Beitrag anzeigen
    Hi!
    Das hier veröffentlichte "Blockchiffre Operationsmodi" Tutorial ist wirklich gelungen und
    hat mir weitergeholfen. Nichts desto trotz hab ich an die Kryptologen unter euch noch einige Zusatzfragen,
    da mir noch nicht alles klar geworden ist. Ich muss zusätzlich anmerken, dass ich mich seit nun 3 Monaten selbst mit dem Thema beschäftige und den ein oder anderen Algorithmus implementiert habe.
    Hallo.

    Zitat von justenjoymusic Beitrag anzeigen
    Und zwar:

    1.Was ist mit dem "Counter (CTR)" modi. Welche Vor und Nachteile hat dieser?
    - Wie er funktioniert wieß ich .
    Der Counter (CTR) ist im Wesentlichen ein Abwandlung des OFB und deshalb im Tutorial nicht explitzit erwähnt. Es ist ebenfalls ein Stromchiffre (Stream Chipher), d.h. sie benutzen eine blockbasierte Verschlüsselung als Primitiv für eine Pseudo-Zufallsdatenfolge bzw. Nonce/IV, den sogenannten Geheimtextblock bzw. Schlüsselstrom (Keystream), der dann mit dem Klartext einzeln XOR-verknüpft wird. Der Schlüsselstrom ist eine pseudozufällige Zeichenfolge.





    Was die Vor- und Nachteile anbelangt.

    Vorteile:

    Vorteil des CTR ist das der Keystream { Nonce, Zähler } vorberechnet werden kann, in der Regel sogar parallel. Im Gegensatz zum OFB können die Blöcke dann parallel auf einem Mehrkernprozessor abgearbeitet und da der Schlüssel für einen Block auch nicht vom Schlüssel für den vorherigen Block abhängt, hat man hier wahlfreien Zugriff auf jeden verschlüsselten Block. Ich kann auch auf den gesamten Keystream wahllos zugreifen. Bitfehler bei der Übertragung ergeben Fehler bei nur den entsprechenden Bits des Klartextes anstatt einen ganzen Block bzw. eventuell sogar einen weiteren Block unbrauchbar zu machen. Bei Kryptosystemen mit variierender Ver- und Entschlüsselung, wie beim AES, muss nur ein Algorithmus verwendet werden, in der Regel der Schnellere. Die Inversion muss dann aber auch mit dem entsprechenden Algorithmus ablaufen. Desweiteren gibt der CTR nur sehr wenig Informationen über den Schlüssel preis. Und natürlich ist der CTR mittlerweile sehr erprobt und auch genau analysiert worden, so dass er sehr gut zum 128-Bit großen symmetrischen Kryptosystem AES passt.

    Nachteile:

    Paare von { Schlüssel, Zähler } wiederzuverwenden führt zu massiven Einbußen bei der Sicherheit. Der Zähler muss also kontinuierlich mit jedem weiterem Block hochgezählt werden. Der CTR Modus ist bei 64-Bit Blöcken relativ unsicher und muss durch große Nonces und kleine Zähler kompensiert werden. Weiterhin ist es sehr leicht möglich Bits im Klartext zu invertieren, da eine Invertierung im Geheimtext unmittelbar Einfluß auf den korrespondierenden Klartext hat. Deshalb sind Integritätsüberprüfungen oft erforderlich.

    Zitat von justenjoymusic Beitrag anzeigen
    2.Sei enc eine Blockchiffre mit dazugehöriger Entschlüsselungsfunktion dec, die eine
    Schlüssellänge von n Bit besitzt. Angenommen wir verwenden eine Doppel-
    Verschlüsselung:
    c = enc(k2, enc(k1,m))
    Wieviel Bit an Sicherheit besitzt diese Doppelverschlüsselung mit dem 2n-Bit-Schlüssel
    (k1, k2)?
    Theoretisch sind es 2^2n, da die Schlüsselgröße verdoppelt wird. Das ist aber nur trivial betrachtet und geht nicht auf die Eigenheiten des symmetrischen Ciphers und auf den von Merkle und Hellman entdeckten "Meet in the middle attack" ein. Die Frage die sich stellt ist nämlich unter anderem, ob beide Schlüssel tatsächlich verschieden sind. Desweiteren muss klar sein, ob das Kryptosystem eine mathematische Gruppe bildet. Eine Kaskadenverschlüsselung erhöht nur dann die Sicherheit, wenn diese Bedingung erfüllt ist.

    Der DES bildet z.B. eine mathematische Gruppe. Dennoch führt eine Doppelverschlüsselung nicht zu einer Verdopplung der effektiven Schlüssellänge. Das liegt wie bereits erwähnt an dem "Meet in the middle attack". Dazu die Definition:

    Meet in the middle attack

    Die meet-in-the-middle-attack lässt sich bei jedem Secret-Key - Verfahren anwenden, bei denen mehrfach verschlüsselt wurde. Das Prinzip ist denkbar einfach. zunächst wird der Klartext mit allen Schlüssel verschlüsselt und die Ergebnisse mit dem zugehörigen Schlüssel in eine Datenbank abgelegt. Dann wird der Chiffretext mit allen möglichen Schlüsseln entschlüsselt. Beim Abgleichen der Ergebnisse aus der Ver- und der Entschlüsselung wird man feststellen, dass es genau einen einfach verschlüsselten Chiffretext gibt, der sowohl als Ergebniss der Ver- als auch der Entschlüsselung auftaucht. Die beiden zugehörigen Schlüssel sind die richtigen Schlüssel. Der Zeitaufwand ist gegenüber der vollständigen Schlüsselsuche einer einfachen Verschlüsselung etwa doppelt so hoch, aber der Speicherbedarf ist gigantisch.

    Im Falle des DES hiesse das, dass der Chiffretext mit allen 2^56 Schlüsseln entschlüsselt und der Klartext mit allen 2^56 Schlüsseln verschlüsselt wird. eine vollstaendige schlüsselsuche beim doppelt DES verschlüsselten Chiffretext würde 2^56 mal (ca. 7,21 * 10^16) so lange dauern wie bei einfacher Verschlüsselung.
    Aus diesem Grunde ist beim DES der TripleDES eingeführt worden.

    Der AES bildet ebenfalls eine Gruppe. Eine Doppelverschlüsselung erhöht aber die effektive Schlüssellänge nur auf 2 * 2^n. Aber selbst das ist nicht garantiert, weil ein Kryptosystem in der Regel an der Implementierung scheitert, nicht am Kryptosystem selbst. Kurzum, eine Kaskadenverschlüsselung wird die Sicherheit erhöhen, aber den effektiven Sicherheitsgewinn genau zu beziffern ist deutlich schwieriger. Nur eines ist mathematisch sicher. Eine weitere Kaskade reduziert die effektive Schlüssellänge im Gesamtsystem nicht.
    Code:
     __    __   ______   ______   ______   __  __   __   __ ______   ______   
    /\ "-./  \ /\  __ \ /\  ___\ /\  ___\ /\ \_\ \ /\ \ / //\  ___\ /\  == \  
    \ \ \-./\ \\ \  __ \\ \ \____\ \ \__ \\ \____ \\ \ \'/ \ \  __\ \ \  __<  
     \ \_\ \ \_\\ \_\ \_\\ \_____\\ \_____\\/\_____\\ \__|  \ \_____\\ \_\ \_\
      \/_/  \/_/ \/_/\/_/ \/_____/ \/_____/ \/_____/ \/_/    \/_____/ \/_/ /_/

    Kommentar

    Lädt...
    X