Koinzidenzindex

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

Den Koinzidenzindex (engl: Index of coincidence, Abkürzung: IC) erhält man durch statistische Auswertung der Einzelzeichen (also meist der einzelnen Buchstaben) eines oder auch zweier Texte. Mit seiner Hilfe können verschlüsselte oder unverständliche Texte auf sprachliche Eigenschaften untersucht werden. Er wird speziell bei der Entzifferung historischer Schriftdokumente und allgemein in der Kryptanalyse benutzt. Die Methode wurde vom amerikanischen Kryptoanalytiker William F. Friedman für kryptologische Zwecke entwickelt und im Jahr 1922 in seiner bahnbrechenden Arbeit „The index of coincidence and its applications in cryptography“ (deutsch: „Der Koinzidenzindex und seine Anwendungen in der Kryptographie“) publiziert.

\mathbf{IC} = \frac{\sum_{i=A}^{Z}n_i(n_i -1)}{N(N-1)}

In seiner grundlegenden Form wird der Koinzidenzindex ermittelt, indem man die Einzelanzahlen n_i der unterschiedlichen Einzelzeichen eines Geheimtextes zählt, also beispielsweise wie oft der Buchstabe A auftritt, wie oft B, und so weiter. Diese werden nach oben angegebener Formel mit den um 1 verminderten Einzelanzahlen multipliziert und für alle Buchstaben (beispielsweise von A bis Z) aufsummiert. Die Summe wird schließlich dividiert durch die Gesamtanzahl N der Buchstaben des Textes (also der Textlänge) sowie die um 1 verminderte Textlänge. Das Ergebnis ist der Friedmansche Koinzidenzindex IC.

Definitionen[Bearbeiten]

In allgemeiner Form sind unter dem Begriff Koinzidenzindex vier Funktionen zusammengefasst, die meist mit den griechischen Buchstaben \kappa, \chi, \psi\ und \phi\ (Kappa, Chi, Psi und Phi) bezeichnet werden. Oft wird \phi\ als der Koinzidenzindex bezeichnet, wobei vom historischen Standpunkt wohl eher \kappa\, das Anrecht auf diesen Namen hat.

Gegeben seien zwei gleich lange Texte T= x_1x_2\ldots x_k, T'=x'_1x'_2\ldots x'_k über demselben Alphabet. Dann ist das \kappa\, der beiden Texte

\kappa (T,T') = \sum_{i=1}^k \frac{\delta (x_i,x'_i)}{k},

wobei \delta\, das Kronecker-Delta bezeichnet (also \delta (x_i,x'_i) = 1, falls x_i=x'_i und 0 sonst).

Damit ist \kappa\, eine Zahl zwischen 0 und 1, wobei 1 genau dann auftritt, wenn beide Texte gleich sind. Werden die Zeichen zufällig mit gleicher Wahrscheinlichkeit aus einem Alphabet mit n Zeichen gewählt, so ist der Erwartungswert für \kappa\, gleich \tfrac{1}{n}, da jeder Summand mit Wahrscheinlichkeit \tfrac{1}{n} gleich \tfrac{1}{k} ist (und sonst gleich 0).

Da man in der Kryptanalyse oft aus kurzen Texten viel Information herauspressen möchte, ist die Funktion \chi\, , die, wie die folgenden Funktionen, auf Friedmans Mitarbeiter Solomon Kullback (1935) zurückgeht, gelegentlich aussagekräftiger:

\chi(T,T') = \sum_{i=1}^k \sum_{j=1}^k \frac{\delta (x_i,x'_j)}{k^2} = \sum_{\ell=1}^n \frac{m_\ell \cdot m'_\ell}{k^2},

wobei m_\ell, m'_\ell angibt, wie oft das \ell-te Zeichen des Alphabets im Text T bzw. T' auftritt. Die Funktion \chi\, hängt also allein von den Buchstabenhäufigkeiten der beiden Texte ab. Nun ist

\psi(T) = \chi(T,T).\,

Während \chi\, angewandt auf zwei Texte aus zufälligen gleichverteilten Zeichen wie \kappa\, den Erwartungswert \tfrac{1}{n} hat, ist das für \psi\, nicht mehr der Fall, da \delta(x_i,x_i) immer gleich 1 ist. Deshalb schließt man sinnvollerweise bei der Summation die Zeichen an derselben Position aus und definiert

\phi(T) = \sum_{1\le i\neq j\le k} \frac{\delta (x_i,x_j)}{k(k-1)} = \sum_{\ell=1}^n \frac{m_\ell (m_\ell -1)}{k(k-1)}.

Ebenso wie \psi\, kann \phi\ allein aus den Buchstabenhäufigkeiten der beiden Texte berechnet werden, jedoch ist für einen Text aus Zufallszeichen der Erwartungswert für \phi\ gleich \tfrac{1}{n}, während er für \psi\, größer ist (nämlich \tfrac{n+k-1}{nk}). Insbesondere für kurze Texte ist der Unterschied markant.

Bedeutung[Bearbeiten]

Geht man von Texten aus gleichverteilten Zufallszeichen über zu Texten, die in einer bestimmten natürlichen Sprache verfasst sind, so ändert sich der erwartete Wert erheblich. Eine Faustregel besagt, dass er etwa doppelt so groß ist.

Nimmt man beispielsweise die 26 Zeichen unseres gewohnten lateinischen Alphabets (Umlaute werden durch ae, oe, ue ersetzt, ß durch Doppel-s oder sz, Lücken und Satzzeichen werden ignoriert), so liegt der Wert für deutschsprachige Texte \kappa, \chi\, und \phi\, zumeist bei 0,0762 (7,62 %), während für englischsprachige Texte der Erwartungswert bei 6,61 % liegt. Dies ist in beiden Fällen – und übrigens auch für alle anderen Sprachen – deutlich höher als im Fall der Gleichverteilung der Buchstaben. Treten sämtliche Buchstaben des Alphabets gleich häufig auf, wie es für „zufällig“ generierte Buchstabenfolgen („Zufallstexte“) oder für „stark verschlüsselte“ Geheimtexte der Fall ist, dann ist der Erwartungswert 1/26 also etwa 3,85 %. Der wesentlich höhere Wert für die deutsche Sprache gegenüber der englischen Sprache spiegelt vor allem die wesentlich größere Häufigkeit des dominanten Buchstabens E im Deutschen (etwa 17,5 %) gegenüber dem Englischen (etwa 12,7 %) wider. Denn der Erwartungswert E_S für die Sprache S lässt sich aus den Buchstabenhäufigkeiten nach der Formel

E_S = \sum_{i=1}^n p_i^2

berechnen, wobei p_i die Wahrscheinlichkeit des i-ten Zeichens des Alphabets in Texten der entsprechenden Sprache angibt.

In verwandten Sprachen ähneln sich oft die Erwartungswerte E_S, so dass bei unbekannten Texten anhand des Koinzidenzindex Vermutungen auf den zugehörigen Sprachraum angestellt werden können.

Anwendung zur Kryptanalyse[Bearbeiten]

Die wesentliche Eigenschaft ist hier, dass sich bei einer einfachen monoalphabetischen Substitutionsverschlüsselung weder \kappa, \chi, \psi\, noch \phi\, ändern, sofern die beteiligten Texte auf die gleiche Art verschlüsselt sind. Eine sprachliche Zuordnung hinreichend langer Texte wird somit allein auf statistischer Basis möglich.

Bei einer periodischen polyalphabetischen Substitutionsverschlüsselung ist der Koinzidenzindex noch wertvoller, denn die Schlüssellänge der Verschlüsselung kann mit folgender Formel abgeschätzt werden (Friedman-Test). Für die Sprache S lautet die Formel für die Schlüssellänge h

h \approx \frac{(E_S - \frac1n)k}{(k-1)\phi(T) - k\frac1n + E_S}.

Diese Formel lässt sich theoretisch herleiten unter der Annahme, dass alle Schlüsselzeichen verschieden sind. Der Wert ist also vor allem bei mit kurzen Schlüsseln verschlüsselten kurzen Texten aufschlussreich, insbesondere in Kombination mit dem Kasiski-Test. Hat man mit längeren Schlüsselwörtern verschlüsselte längere Texte zur Verfügung, so ist das folgende Vorgehen präziser.

Entfernt man vom Text T einmal die ersten r Zeichen und einmal die letzten r Zeichen, so erhält man zwei Texte, deren \kappa\, bestimmt werden kann. Ist r ein Vielfaches der Schlüssellänge, so sollte \kappa \approx E_S sein, da die verglichenen Einzelzeichen mit demselben Schlüssel verschlüsselt sind. Ist r jedoch kein Vielfaches der Schlüssellänge, so ist mit einem deutlich niedrigeren Wert für \kappa\, zu rechnen, da die verglichenen Zeichen nur selten gleich verschlüsselt sind. Wiederholte Sequenzen im Schlüsselwort, mit denen man den Kasiski-Test und den Friedman-Test überlisten kann, beeinflussen die Ergebnisse hier nur ansatzweise und sollten in der Regel erkannt werden.

Auch bei nicht periodischen polyalphabetischen Verschlüsselungen lassen sich diese Methoden gewinnbringend nutzen. Insbesondere erkennt man bei zwei mit dem gleichen One-Time-Pad verschlüsselten Texten T, T'\, durch Berechnung von \kappa(T,T')\, sofort diese kryptographische Sünde und kann zum Beispiel durch die Methode des wahrscheinlichen Wortes angewandt auf einen der Texte versuchen, Klartextsequenzen im anderen Text zu erzeugen.

Der Koinzidenzindex eignet sich also für sogenannte Ciphertext-only-Angriffe (wo über den Inhalt des verschlüsselten Textes nichts bekannt sein muss) auf Substitutionsverschlüsselungen, wodurch diese Verfahren (natürlich außer einem korrekt angewendeten One-Time Pad) als ausgesprochen unsicher angesehen werden müssen.

Literatur[Bearbeiten]

  • Friedrich L. Bauer: Entzifferte Geheimnisse. Methoden und Maximen der Kryptographie. 3. überarbeitete und erweiterte Auflage. Springer, Berlin u. a. 2000, ISBN 3-540-67931-6.
  • William F. Friedman: The index of coincidence and its applications in cryptology. Riverbank Laboratories – Department of Ciphers, Geneva IL 1922 (Nachdruck: Aegean Park Press, Laguna Hills CA 1987, ISBN 0-89412-137-5 (A Cryptographic Series 49)).

Weblinks[Bearbeiten]

  • WorldCat The index of coincidence and its applications in cryptology (englisch) von William Frederick Friedman