/* Funktionen zur kryptanalytischen Auswertung. */

 function evaluate(Text) {
    /* Auswertung des gegebenen Textes mit dem Kasiski-Friedman-Test. */
    var Zeichen = new Array(256);
    var Chiffre = unescape(Text);
    var G=0, IC=0, i;

    for (i=0; i<256; i++) Zeichen[i] = 0;

    if (Chiffre != "") {
       i = 0;
       while (i < Chiffre.length) {
          Zeichen[Chiffre.charCodeAt(i)] = Zeichen[Chiffre.charCodeAt(i)] + 1;
          i++;
       }
       for (i=0; i<256; i++)
           G = G + ((Zeichen[i]/2)*(Zeichen[i]-1));
       IC = Math.round((2*G / (Chiffre.length*(Chiffre.length-1)))*10000) / 10000;
       L  = (0.0377*Chiffre.length) / (((Chiffre.length-1)*IC) - (0.0385*Chiffre.length) + 0,0762);
       L  = Math.round(L*10000) / 10000;
    }
    return IC;
 }/* evalaluate */


 function evalChiffre(Text) {
    if (Text != "") 
       alert("Friedman Koinzidenzindex:   \n\n  IC = "+evaluate(Text));
 }/* evalChiffre */
