Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: Spider-Net en 11 Octubre 2008, 15:46 pm



Título: [Source] The Golden Bug (Análisis de Frecuencia)
Publicado por: Spider-Net en 11 Octubre 2008, 15:46 pm
Hola a todos. Estos días he estado desarrollando una aplicación de análisis de frecuencia. Me interesó tras estudiar un poco este tipo de análisis para descifrar algoritmos simples de sustitución de caracteres como por ejemplo la cifrado César. Para el que no lo sepa...

En el criptoanálisis, el análisis de frecuencias es el estudio de la frecuencias de las letras o grupos de letras en un texto cifrado. Es un método de apoyo para la ruptura de cifrados clásicos.

Citar
El análisis de frecuencias está basado en el hecho de que, dado un texto, ciertas letras o combinaciones de letras aparecen más a menudo que otras, existiendo distintas frecuencias para ellas. Es más, existe una distribución característica de las letras que es prácticamente la misma para la mayoría de ejemplos de ese lenguaje. Por ejemplo, en inglés la letra E es muy común, mientras que la X es muy rara. Igualmente, las combinaciones ST, NG, TH y QU son pares de letras comunes, mientras que NZ y QJ son raros. La frase mnemotécnica "ETAOIN SHRDLU" agrupa las doce letras más frecuentes en los textos ingleses. En español, las vocales son muy frecuentes, ocupando alrededor del 45% del texto, siendo la E y la A las que aparecen en más ocasiones, mientras que la frecuencia sumada de F, Z, J, X, W y K no alcanza el 2%.

En algunos cifradores, las propiedades naturales del texto plano se preservan en el texto cifrado. Dichos esquemas pueden ser potencialmente objeto de ataques de sólo texto cifrado.

El caso es que estudié un poco todo esto y busqué alguna aplicación que me permitiese hacer este tipo de análisis pero no encontré ninguna, encontré una en inglés que me aconsejaron en el foro de criptografía, pero sólo funcionaba con sustitución de letras, y yo, basándome en el libro de "El Escarabajo de Oro" de Edgar Allan Poe quería hacer un análisis de frecuencia del mensaje cifrado del libro, y ese programa no me servía. Así que como no encontraba nada, ni en inglés ni en Español, me he dedicado a hacer yo uno mismo. Es muy sencillo, simplemente escribes un texto o bien lo importas desde un txt y el programa realiza un análisis de la frecuencia con la que aparecen los caracteres en el texto y muestra una gráfica con el resultado. Luego permite abrir unas gráficas con las letras más frecuentes en el inglés y en el español y con comparativas se puede deducir el significado de estos textos. Para quien no lo entienda muy bien, tiene un ejemplo que explicaron hace un tiempo en este mismo foro:
http://foro.elhacker.net/criptografia/criptografia_el_escarabajo_de_oro_uso_de_analisis_de_frecuencia-t212428.0.html

Esta aplicación nos ayudaría a hallar la tabla de caracteres que obtiene el autor de dicho relato por lógica.

Bueno, siento haberme extendido tanto, pero quería explicar bien qué hace esta herramienta, y aquí la comparto con vosotros. Se aceptan críticas, sugerencias y modificaciones del código.

(http://img55.imageshack.us/img55/9527/goldenbug1uo5.th.jpg) (http://img55.imageshack.us/my.php?image=goldenbug1uo5.jpg)(http://img55.imageshack.us/images/thpix.gif) (http://g.imageshack.us/thpix.php) (http://img291.imageshack.us/img291/3016/goldenbug2zy5.th.jpg) (http://img291.imageshack.us/my.php?image=goldenbug2zy5.jpg) (http://img291.imageshack.us/images/thpix.gif) (http://g.imageshack.us/thpix.php)(http://img145.imageshack.us/img145/4017/goldenbug3bq0.th.jpg) (http://img145.imageshack.us/my.php?image=goldenbug3bq0.jpg)(http://img145.imageshack.us/images/thpix.gif) (http://g.imageshack.us/thpix.php)

The Golden Bug Source.zip (http://www.uploadsourcecode.com.ar/d/F7aQQPu6zFfY0KmIWQFS2U9etWDB8CvI)
Con el Source adjunto el libro de "El Escarabajo de Oro" en pdf para quien quiera leerlo, es un relato muy cortito. También lo pueden encontrar en wikisource ya que es de libre distribución.

PD: Para todo aquel que crea que este tipo de cifrado está obsoleta que investigue como funciona la cifrado WEP (para redes wifi) y que investigue qué método usa aircrack para crackear las contraseñas :)

Saludos!


Título: Re: [Source] The Golden Bug (Análisis de Frecuencia)
Publicado por: ssccaann43 © en 11 Octubre 2008, 17:23 pm
Spider esta muy bueno el ejemplo... Excelente...


Título: Re: [Source] The Golden Bug (Análisis de Frecuencia)
Publicado por: APOKLIPTICO en 11 Octubre 2008, 22:52 pm
Todavia no tengo instalado el VB6, pero parece prometedor, como hiciste para graficarlos???


Título: Re: [Source] The Golden Bug (Análisis de Frecuencia)
Publicado por: Spider-Net en 11 Octubre 2008, 23:06 pm
Usé el control MSCHART.

Si quieres probarlo aunque sin código fuente, puedes probarlo desde este enlace:

http://auronweb.es/news/file.php?file=The_Golden_Bug.zip

NOTA: Ahora estoy intentando implementarle una función para descifrar el código, es decir que con los resultados obtenidos de frecuencia de caracteres, haga una sustitución por la frecuencia de las letras más usadas en inglés o español. Con un poco de suerte puede salir un texto más o menos legible. :)

Saludos!


Título: Re: [Source] The Golden Bug (Análisis de Frecuencia)
Publicado por: cobein en 12 Octubre 2008, 13:14 pm
Lindo ejemplo, la verdad hay muy poco de esto en la red, vi un ejemplo en PSC pero nada mas que eso.
Aunque esta un poco crudo (falta funcionalidad) es un buen comienzo, la verdad es muy interesante, epero que continues agregandole cosas =).


Título: Re: [Source] The Golden Bug (Análisis de Frecuencia)
Publicado por: Spider-Net en 12 Octubre 2008, 13:22 pm
Lindo ejemplo, la verdad hay muy poco de esto en la red, vi un ejemplo en PSC pero nada mas que eso.
Aunque esta un poco crudo (falta funcionalidad) es un buen comienzo, la verdad es muy interesante, epero que continues agregandole cosas =).


Claro que sí. Ahora mismo sé que es muy simple, sólo haya la frecuencia. Ahora estoy intentando implementar un algoritmo que use esa tabla de frecuencias obtenida para intentar descifrar el algoritmo, haciendo comparaciones con las tablas relativas de frecuencia del español o inglés, dependiendo del texto que señales. Intentaré hacer un algoritmo que consiga descifrar aunque sea algo el texto, a ver si consigo que pueda sacar algo legible. Espero que sí.

Saludos!


Título: Re: [Source] The Golden Bug (Análisis de Frecuencia)
Publicado por: ✖ JuЯy ✖ en 13 Octubre 2008, 22:32 pm
pz a mi me a interesado mucho este tema Análisis de Frecuencia ..
voy a ponerme buscar mas,

sta muy buene la explicacion, Spideя-Net


Título: Re: [Source] The Golden Bug (Análisis de Frecuencia)
Publicado por: ✖ JuЯy ✖ en 13 Octubre 2008, 22:50 pm
el    Proyecto1.vbp     del    --->  The Golden Bug Source

esta super,  lo estuv checando y cosas que no habia visto por montones..  :o
esta full bueno, lo que me gustomas  fue la graficadora..  :)

Salu D.O.S.    ;D


Título: Re: [Source] The Golden Bug (Análisis de Frecuencia)
Publicado por: Spider-Net en 13 Octubre 2008, 23:12 pm
JuRy-BøY , me alegra que te gustase y que te interese el tema. En estos momentos ya tengo ideas que estoy desarrollando para potenciar la utilidad de este programa. En este momento el programita es un ejemplo simplemente de análisis de frecuencia, pero ahora estoy trabajando en un algoritmo que de alguna forma descifre el mensaje.

Para hacer esto estoy estudiando bien el análisis de frecuencia y hay que estudiar los pares y trios de letras más frecuentes en inglés y en español e intentaré hacer un algoritmo que llegue a conclusiones coherentes. Además le he implementado un diccionario que haciendo una especie de "grep" (como en linux) listará las posibles palabras descifradas.
Todo esto aún lo tengo como idea, y bueno, estoy empezando a desarrollarlo, cuando tenga algo que sea medio-sólido lo publicaré por aquí por si os puede ser de ayuda o interés.

Saludos!


Título: Re: [Source] The Golden Bug (Análisis de Frecuencia)
Publicado por: chance_gardiner en 22 Febrero 2012, 06:38 am
Saludos spider, excelente tu investigación, felicitaciones, me preguntaba porque no has subido el ejecutable de tu aplicación..Por favor de poder subirla te lo agradeceriamos.


Título: Re: [Source] The Golden Bug (Análisis de Frecuencia)
Publicado por: skapunky en 22 Febrero 2012, 13:17 pm
Yo te quiero dar un consejo:

Ahora que te toca añadir los cambios según los signos que mas aparecen, te recomiendo independientemente que estos cambios sean automáticos, que también se puedan realizar de forma manual ya que puede dar la casualidad que la letra "e" por ejemplo aparezca menos de lo esperado. (si mal no recuerdo la "e" es de las que más aparecían).

Además se deben ir realizando estadísticas y probando letras durante varios intentos, si lo haces automatizado no está mal pero limitas a que se produzca una casualidad desafortunada y las letras que mas deberían aparecer no aparezcan, más si los textos son cortos.


PD: No me he percatado de la fecha, bloqueo el post. Si el creador del programa quiere aportar algo o decir algo que me envie PM y lo desbloqueo si quiere contestar.


Título: Re: [Source] The Golden Bug (Análisis de Frecuencia)
Publicado por: 79137913 en 22 Febrero 2012, 14:34 pm
HOLA!!!

@chance_gardiner:
Yo creo que habria que analizar mas de cerca LA FECHA DE LA ULTIMA RESPUESTA DEL POST (13 Octubre 2008, 18:12, Publicado por: Spider-Net).

No revivas temas, para algo estan los MP's

GRACIAS POR LEER!!!