En mis horas de desvelo he programado este script que ayuda a ver que tan frecuente es una determinada letra en un texto cifrado. Por ejemplo, en el idioma Ingles la letra "e" es la mas frecuente. Imaginemos que existe un texto cifrado que diga : wghw wg hjuw" Como se habrán dado cuenta la letra "w" se repite 4 veces por lo que ES PROBABLE que sea la letra "e". Con esto podríamos determinar el algoritmo ocupado para el cifrado.
Insisto que este mecanismo se basa en la estadística de los datos, en este caso el abecedario.
No mas rodeos y les dejo el script. Es libre por si alguien se le ocurre mejorarlo. Por ejemplo alguien que quiera un recorte de resultados podría mostrar sólo las letras que conforman la frase y su respectiva frecuencia o también podría incluir un mecanismo que analizara números en caso de que se presenten en algún texto cifrado.
Código:
<HTML>
<SCRIPT LANGUAGE="javascript">
// Analizador de frecuencia alfabética
// By 19.5
// 26 de Octubre del 2007
var x = new Array("a","b","c","d","e","f","g","h","i","j","k","l","m","n","ñ","o","p","q","r","s","t","u","v","w","x","y","z");
var n = x.length;
var ch1 = "";
var ch2 = "";
var z = "";
var texto = prompt("Escribe la palabra a analizar","");
var cant = texto.length;
document.write("<h1>La frase a analizar es: " + texto + "</h1>");
for (i=0;i<n;i++)
{
ch1 = x[i];
for (h=0;h<cant;h++)
{
ch2 = texto.substr(h,1);
if (ch1 == ch2)
z++;
}
document.write("<br>La frecuencia de " + ch1 + " es: " + z);
z = 0;
}
</SCRIPT>
</HTML>
<SCRIPT LANGUAGE="javascript">
// Analizador de frecuencia alfabética
// By 19.5
// 26 de Octubre del 2007
var x = new Array("a","b","c","d","e","f","g","h","i","j","k","l","m","n","ñ","o","p","q","r","s","t","u","v","w","x","y","z");
var n = x.length;
var ch1 = "";
var ch2 = "";
var z = "";
var texto = prompt("Escribe la palabra a analizar","");
var cant = texto.length;
document.write("<h1>La frase a analizar es: " + texto + "</h1>");
for (i=0;i<n;i++)
{
ch1 = x[i];
for (h=0;h<cant;h++)
{
ch2 = texto.substr(h,1);
if (ch1 == ch2)
z++;
}
document.write("<br>La frecuencia de " + ch1 + " es: " + z);
z = 0;
}
</SCRIPT>
</HTML>
Para probarlo basta con pegarlo en el bloc de notas, guardarlo con extensión htm o html y abrirlo con el explorador de su gusto. Claro que hay que tener javascript habilitado.
Referencia: http://es.wikipedia.org/wiki/An%C3%A1lisis_de_frecuencias










Autor


En línea



