Monday, July 1, 2013

Prueba estadística

Introducción

La prueba estadística, en este caso sirve  para comprobar que tan aleatorio es un número también de esta forma podremos confirmar que nuestras llaves son seguras o no.


Prueba Monobit

Para la realización de esta prueba decidí usar la prueba Monobit ya que ademas de ser simple es cumple bastante el objetivo de la prueba.

La prueba Monobit trata de dar una secuencia de números 0 y 1. El propósito de esto  es determinar si el número de 1 y 0 en una secuencia son aproximadamente la misma que sería de esperar para una secuencia verdaderamente aleatoria. La prueba evalúa la cercanía de la fracción de los que ½, es decir, el número de 1 y 0 en una secuencia debe ser aproximadamente la misma.

Formula: 

Como mi primera tarea tomaba ascii para generar las llaves especificando la cantidad del mensaje para esta prueba fue lo mismo. Preguntar n para determinar el tamaño y posteriormente convertirlo en bits para realizar la prueba Monobit.

Luego para calcular Sn es  la conversión a 1, Los ceros y unos de la secuencia de entrada (ε) se convierten en valores de -1 y 1 y se suman para producirlo 

Por ejemplo, si ε = 1011010101, entonces n = 10 y S n = 1 + (-1) + 1 + 1 + (-1) + 1 + (-1) + 1 + (-1) + 1 = 2
 

Luego calcular el valor de P usando la formula de :

donde Sobs viene siendo el resultado de la primera formula y eso se divide entre la raíz cuadrada de 2. El valor obtenido se compara con 0.01 donde si es 0.01 mayor al resultado la prueba es exitosa de lo contrario no es exitosa.


Código



 


Finalmente

Se dice que cosas realmente aleatorias no se pueden comprimir en conclusión  entre mas aleatorio menos compresion. Asi que comprimi las llaves que se generan para esta prueba se generaron 50,000 claves


y el peso de el archivo difieren aproximadamente en un 16%

En conclusión mis llaves no son del todo aleatorias y mis llaves tampoco son del todo seguras.

Puntos por terminar

  • Realizar un ataque a mi propio mensaje encriptado
  • Realizar una gráfica con los valores obtenidos usando Gnuplot

Referencias


1 comment:

  1. http://dilbert.com/strips/comic/2001-10-25/

    Ojo con la ortografía.

    Para ecuaciones matemáticas, sería mejor incrustar LaTeX o MathML o algo así.

    En lo de compresión es difícil sacar conclusiones si no realizas una comparación entre dos o más generadores y el qué tanto se comprimen los resultados.

    Van 5 pts.

    ReplyDelete