1 / 35

Master Oficial en Ciencia y Tecnología Informática.

Examen Final:. Master Oficial en Ciencia y Tecnología Informática. Especialidad: Sistemas Distribuidos, Multimedia y Seguros. ALEATORIEDAD Y PSEUDOALEATORIEDAD. Í ndice. Aleatoriedad y pseudoaleatoriedad Resumen Introducción ¿Dónde encontramos aleatoriedad?

nelia
Download Presentation

Master Oficial en Ciencia y Tecnología Informática.

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Examen Final: Master Oficial en Ciencia y Tecnología Informática. Especialidad: Sistemas Distribuidos, Multimedia y Seguros. Eugenio Soler Galán

  2. ALEATORIEDAD Y PSEUDOALEATORIEDAD Eugenio Soler Galán

  3. Índice Aleatoriedad y pseudoaleatoriedad • Resumen • Introducción • ¿Dónde encontramos aleatoriedad? • Otros conceptos relacionados con la aleatoriedad • Criptografía y números aleatorios • ¿Cómo conseguir números pseudoaleatorios? • Contrastes de aleatoriedad • Análisis de aleatoriedad • El caos • Conclusiones • Agradecimientos • Referencias Eugenio Soler Galán

  4. Resumen Este trabajo de investigación forma parte de la asignatura del Master Oficial en Ciencia y Tecnología Informática denominada Trabajo de Investigación de Sistemas Distribuidos. Multimedia y Seguros I. En él se pretende ver el estado en el que se encuentra hoy en día la aleatoriedad, sobre todo en el campo de la aleatoriedad simulada, ya que la aleatoriedad propiamente dicha es un dilema filosófico, sobre el que muchos han estado discutiendo durante siglos, como podrá comprobarse en el informe, ... Eugenio Soler Galán

  5. Introducción (1/2) • La aleatoriedad no es algo que tan solo tenga una aplicación técnica, desde siempre el hombre se ha preguntado si su destino está no o escrito. • A día de hoytodo está escrito, pero el hombre tiene el poder de cambiarlo, (¿por qué alguien va a ser encarcelado por sus actos, si no puede hacer nada para evitarlo? • algo es aleatorio, cuando no se puede volver a reproducir con los medios actuales, en un tiempo más o menos corto, en exactamente las mismas condiciones que se hizo anteriormente Eugenio Soler Galán

  6. Introducción (2/2) • la pseudoaleatoriedad que no se plantea la existencia o no de la aleatoriedad pero que intenta imitarla. Que dicho sea de paso no existe como tal en el diccionario de la lengua castellana. pseudo aleatorio tiene simplemente el significado de falsa aleatoriedad. • Para la Informática, y en concreto en el campo de la seguridad en redes tiene mucha importancia la aleatoriedad, ya sea en sistemas de cifrados asimétricos como en los simétricos Eugenio Soler Galán

  7. ¿Dónde encontramos aleatoriedad? (1/2) • En la Filosofía. Comentado anteriormente. • En la Física. Con las nuevas teorías científicas sobre sistemas caóticos o turbulentos y con la mecánica cuántica, algunos científicos consideran que no está tan claro que el azar no forme parte del mundo. Según la interpretación estándar (o de Copenhagen) de la mecánica cuántica, en un experimento controlado hasta sus más mínimos detalles siempre hay un grado de aleatoriedad en el resultado. Muchos procesos físicos de carácter cuántico podrían ser irreductiblemente aleatorios. Eugenio Soler Galán

  8. ¿Dónde encontramos aleatoriedad? (2/2) • En la Matemática. Hay que cuestionarse si la Estadística y el cálculo de probabilidades es o no un cálculo meramente determinista. Las teorías del Caos. • En la Informática. El azar interviene fundamentalmente en la seguridad de la información. Las claves son mas largas a medida que va aumentado la potencia de los ordenadores, ya que lo que era seguro hace 10 años puede que hoy no se tarde más de unos minutos o quizás segundos en descifrar (siempre utilizamos esta palabra con un significado relativo, todo depende del tiempo). Además con el paso del tiempo estos algoritmos de código abierto cada vez están más estudiados y se pueden encontrar vulnerabilidades, en definitiva, el tiempo juega en contra en el “azar” en la informática. Eugenio Soler Galán

  9. Otros conceptos relacionados con la aleatoriedad • Número aleatorio. Es un resultado de una variable al azar especificada por una función de distribución. • Número pseudo-aleatorio. Generado en un proceso aparentemente azaroso. Las secuencias de números no muestran ningún patrón, desde un punto de vista estadístico, a pesar de haber sido generadas por un algoritmo determinista. A mismas condiciones iniciales, tenemos siempre el mismo resultado. • Incertidumbre. Falta de certeza respecto a la resolución de un experimento o problema • Impredectibilidad. Imposibilidad de predecir las consecuencias de un experimento. • Caos. Sistemas dinámicos(que evolucionan en el tiempo) Eugenio Soler Galán

  10. Criptografía y nos aleatorios (1/3) Los algoritmos de llave pública, debido a su mayor orden de complejidad, suelen ser empleados en conjunción con algoritmos de llave privada de la siguiente forma: el mensaje primero se codifica empleando un algoritmo simétrico y la llamada clave de sesión, que será diferente cada vez. Es la clave de sesión la que se codifica empleando criptografía asimétrica. La única manera de que estas claves sean seguras es que no exista ningún tipo de dependencia entre una clave y la siguiente, esto es, que sean aleatorias. De aquí surge el interés por los números aleatorios en Criptografía. Eugenio Soler Galán

  11. Criptografía y nos aleatorios (2/3) Secuencias estadísticamente aleatorias: Secuencias que superan los tests estadísticos de aleatoriedad. Un generador congruencial lineal cumple esta propiedad. Secuencias criptográficamente aleatorias: debe ser impredecible (computacionalmente intratable: no se puede averiguar el siguiente número de la secuencia, teniendo total conocimiento acerca de todos los números anteriores y del algoritmo de generación empleado. Sin embargo no es suficiente, debido a que se necesita una semilla para inicializar el generador. Secuencias aleatorias: no puede ser reproducida de manera fiable (impredecibles y no reproducibles) Eugenio Soler Galán

  12. Criptografía y nos aleatorios (3/3) Para poder obtener secuencias a la vez impredecibles y no reproducibles, se usan generadores de secuencias criptográficamente aleatorias, en conjunción con algún mecanismo de recolección de bits aleatorios, que nos va a permitir inicializar la semilla del generador. Un esquema de este tipo será seguro siempre que se salvaguarde adecuadamente la semilla empleada. Eugenio Soler Galán

  13. ¿Cómo conseguir números pseudoaleatorios?(1/5) Se considera aleatoria cualquier sucesión de números que cumpliera las dos condiciones siguientes: • -Cualquier persona que desconozca cómo se ha obtenido la sucesión debe ser incapaz de predecir el siguiente término. • -La sucesión de números debe pasar con nota todos los tests de aleatoriedad a que sea sometida: rachas, gaps, serial, etc. La siguiente secuencia 1001 1010 1001 0100 es más aleatoria que esta otra 0000 0000 0000 0000. Se mide no solo la probabilidad sino tambiçen la entropía Eugenio Soler Galán

  14. ¿Cómo conseguir números pseudoaleatorios?(2/5) Etapa1: generar una semilla(si es através de software se debe usar: el sistema de reloj, el teclado, el ratón, el contenido de buffers de entrada y salida, una combinación de los anteriores...) Etapa2: generar una cadena de números pseudoaleatorios que provienen de una función de un sólo sentido, en la práctica se usan MD5, SHA-1, la función RSA, la función logaritmo en curvas elípticas, etc. Prueba: Para probar que un dispositivo genera números peudoaleatorios, éste debe de pasar una prueba que detecte las propiedades más conocidas de no aleatoriedad, por ejemplo la prueba de Maurer. Eugenio Soler Galán

  15. ¿Cómo conseguir números pseudoaleatorios?(3/5) xn+1= (axn + c) mod m Las constantes X0, a, c, y m, se eligen para que el periodo sea máximo con: i. c y m son primos entre sí ii. a–1 es múltiplo de todos los primos que dividen a m iii. si m es múltiplo de 4, a–1 también lo es El parámetro m determina el número de cifras, se suelen tomar potencias de dos. Cuando c = 0 el generador se denomina multiplicativo. Este tipo de métodos es más rápido y, aunque se reduce un poco la longitud del ciclo, la aparición de estos no es problema si m se elige suficientemente grande. Eugenio Soler Galán

  16. Figura 1. Donde no se cumplen las condiciones y por tanto no hay apariencia de aleatoriedad. Figura 2. Donde sí se cumplen las condiciones y por tanto sí hay apariencia de aleatoriedad. ¿Cómo conseguir números pseudoaleatorios?(4/5) Eugenio Soler Galán

  17. ¿Cómo conseguir números pseudoaleatorios?(5/5) Características de los números obtenidos deben ser: 1 Uniformemente distribuidos. 2. Estadísticamente independientes. 3. Su media debe ser estadísticamente igual a 1/2. 4. Su varianza debe ser estadísticamente igual a 1/4. 5. Su periodo o ciclo de vida debe ser largo. 6. Deben ser generados a través de un método rápido. 7. Generados a través de un método que no requiera mucha capacidad de almacenamiento de la computadora. Ejemplo: Generadores de Fibonacci Ni=(Ni-r Ni-s) mod m Eugenio Soler Galán

  18. Contrastes de aleatoriedad (1/6) La aproximación a los generadores de números aleatorios exige contrastar ciertas propiedades estadísticas de sus salidas. Algunos de los contrastes son genéricos y pueden utilizarse en la evaluación de generadores de variables aleatorias. Muchos de estos contrastes se encuentran implementados en los paquetes estadísticos comerciales más importantes. Además algunos generadores disponen de una teoría analítica que conduce a contrastes teóricos específicos. Para aumentar su potencia, los contrastes siguientes pueden repetirse N veces. Eugenio Soler Galán

  19. 7 3 6 7 11 23 5 23 15 4 31 22 20 3 4 5 6 7 7 11 15 20 22 23 23 31 Contrastes de aleatoriedad (2/6) • Contraste de rachas-1 Eugenio Soler Galán

  20. Contrastes de aleatoriedad (3/6) • Contraste de rachas-2 Si el tamaño de cualquiera de las dos muestras es mayor que 30, y consideramos una muestra de tamaño n que ha sido dividida en dos categorías (+) y (-) con n1 y n2 observaciones cada una. Se denomina racha a una sucesión de valores de la misma categoría la distribución de R se aproxima a una normal de media y varianza las siguientes: Eugenio Soler Galán

  21. Valores muestra 1: Valores ordenados 1 1 2 5 2 6 2 2 3 8 4 5 6 6 8 8 9 Número de racha Valores muestra 2: 1 2 1 8 2 6 2 4 2 2 2 9 3 3 3 4 5 6 6 Contrastes de aleatoriedad (4/6) • Test de Wald-Wolfowitz-1 Eugenio Soler Galán

  22. Contrastes de aleatoriedad (5/6) • Contraste de rachas-2 Cuando ambos tamaños muestrales son superiores a 10 la distribución de R es aproximadamente normal de parámetros: Eugenio Soler Galán

  23. Contrastes de aleatoriedad (6/6) • Pruebas estandar que debe pasar una secuencia de bits para que esta se considere aleatoria: - Contraste de Kolmogorov – Smirnov - Prueba de frecuencia - Prueba de series (prueba de los dos bits) - Prueba de póquer - Prueba de rachas - Prueba de autocorrelación Eugenio Soler Galán

  24. Análisis de aleatoriedad (1/4) Como es sabido, no se dispone de ninguna prueba matemática que asegure de forma categórica la aleatoriedad de una secuencia de bits. No obstante, si las secuencias obtenidas mediante un determinado generador superan todas las pruebas diseñadas para tal fin, entonces es aceptado como generador de secuencias aleatorias. A continuación se presentan las pruebas fundamentales de aleatoriedad para dicho análisis. Eugenio Soler Galán

  25. Análisis de aleatoriedad (2/4) Postulados de Golomb Tienen un importante interés histórico puesto que fueron los primeros definidos y usados para establecer las principales condiciones necesarias para que una secuencia de bits pudiera ser considerada como aleatoria. No obstante, en la actualidad estas condiciones no se consideran suficientes, aunque si necesarias para poder aceptar como aleatoria una secuencia dada. Los postulados de aleatoriedad de Golomb son los siguientes: Eugenio Soler Galán

  26. Análisis de aleatoriedad (3/4)   1.- En la secuencia binaria s de longitud n (sn), el número de unos debe diferir del número de ceros, como máximo, en una unidad. Puede comprobarse que se cumple este postulado mediante el test de frecuencia o monobit. 2.- En la secuencia sn, al menos la mitad de las cadenas de dígitos iguales tiene longitud uno, al menos una cuarta parte de esas cadenas tiene longitud dos, al menos una octava parte tiene longitud tres, etc. Además para cada una de las longitudes se dispone de tantas cadenas de unos como de ceros. Puede comprobarse que se cumple este postulado mediante el test de series( de los dos bits), test de rachas y el test del póquer. Eugenio Soler Galán

  27. Análisis de aleatoriedad (4/4) 3.- La función de correlación C(t) tiene dos valores. Esto es, para algún valor K. Puede comprobarse que se cumple este postulado mediante el test de autocorrelación. Eugenio Soler Galán

  28. El caos • El caos aparece en situaciones muy dispares, en la frecuencia del goteo de un grifo, en el movimiento de los planetas, o inclusive, en el comportamiento de los consumidores. • Un ejemplo clásico es el goteo de un grifo: si el caudal es muy pequeño las gotas caen de forma periódica. La frecuencia a la a que caen las gotas se dobla si abrimos un poco el grifo. Cuando lo abrimos más vuelve a doblarse hasta que llega un momento en el que las gotas caen de modo completamente caótico. Eugenio Soler Galán

  29. Conclusiones (1/3) • Los diferentes tipos de generadores(hardware/software) de secuencias de aleatorias, con mejores o peores propiedades estadística, y más o menos costosos en su implementación, son totalmente predecibles, esto los hace “no muy bondadosos” con propósitos de seguridad, no así para otro tipo de aplicaciones como por ejemplo la simulación. Toda la secuencia depende de un valor inicial. • Que lo que en un momento dado puede ser seguro, poco después puede dejar de serlo, así pasa por ejemplo con la longitud de las llaves que se usan en el sistema RSA, que han ido aumentado paulatinamente. Según va aumentando la velocidad de proceso disminuye el tiempo necesario para probar todas esas llaves Eugenio Soler Galán

  30. Conclusiones (2/3) • El aumento de la velocidad de proceso, unido a técnicas de afinado que no usan todas las llaves, hacen posible que lo que antes era “incalculable”, se obtenga en pocos segundos. A día de hoy podemos poner a trabajar probando claves a miles de ordenadores con una potencia que no parecía imaginable hace 30 años. • Para generar la semilla de un dispositivo pseudoaleatorio basado en software se deben de usar eventos que estén muy alejados de la intervención humana, por ejemplo, el reloj, el teclado, el ratón, el contenido de buffers de entrada y salida, o una combinación de los anteriores. Eugenio Soler Galán

  31. Conclusiones (3/3) • Para generar la cadena pseudoaleatoria se debe de hacer uso de funciones de un solo sentido como las funciones Hash: MD5, SHA-1,..., la función RSA, la función logaritmo en curvas elípticas, etc • Cualquier generador de números aleatorios tendrá que superar los tests estadísticos básicos. Considerando, por tanto, que dicho algoritmo es válido para generar secuencias que se pueden tomar como realmente aleatorias. O al menos que supera un porcentaje fijo de test, aunque haya alguno que no pase. Eugenio Soler Galán

  32. Agradecimientos A Benjamín Ramos Álvarez, que ha sido la persona que ha permitido que este trabajo exista, a Julio Cesar Hernández Castro y a Paloma Díaz Pérez sin cuya colaboración no habría podido llegar a este momento, académicamente hablando. Todos ellos profesores del departamento de Informática de la Universidad Carlos III de Madrid. Eugenio Soler Galán

  33. Referencias(1/2) • [Alcocer et al, 2005] Alcocer Garau, Pedro M., García Carrasco, Jose M., Hernández Encinas, L.: Revista de la asociación de Técnicos de Informática ISSN 0211-2124, nº 174, ejemplar dedicado a: IPv6. Más que un protocolo. Pp. 59-65. • [Alvarez, 2005] Álvarez González, Francisco: Manual electrónico Métodos estadísticos aplicados a las auditorias sociolaborales. En http://www.uca.es/dpto/C146/pag_personal/f_alvarez (2005). Pp. 120-121. • [Ariza et al., 2001 ] Ariza, F.J., Pinilla, C., López, R., Caridad, J.M.: Revista Mapping ISSN 1131-9100, nº 71, 2001. Pp. 54-75. Paper Uso de la Simulación en Cartografía: Conceptos Básicos y aplicaciones. • [Caridad, 1987] Caridad, J.M. Métodos de Estadística no Paramétrica para investigadores. Universidad de Córdoba. • [Ibarra, 2004] Ibarra Onofre, Julian: Ensayos volumen XXIII, núm. 1 -Caos en el Mercado cambiario mexicano. Aplicación de la teoría del caos en los tipos de cambio –pp. 31-60 Eugenio Soler Galán

  34. Referencias (2/2) • [Lucena, 2008] Lucena López, Manuel José: Libro electrónico Criptografía y seguridad en computadores (4ª edición). En Creative Commons (2008). • [Miglietti, 2000] Miglietti, R.: Paper Gambling El azar en la ciencia. Pp. Todas. • [Molina et al., 2007] Molina Vilchis, A., Silva Ortigoza, R., y Vega Alvarado, E..: Tercer congreso Internacional Tendencias Tecnológicas en Computación 2007, jueves-15 de noviembre de 2007 Paper Pruebas de Aleatoriedad para Secuencias Pseudos-Aleatorias. Pp. Todas. • [Peña, 1992] Peña Sánchez de Rivera, Daniel: Estadística Modelos y Métodos –Tomo 1: Fundamentos-. En Alianza Universidad Textos, (1992), pp. 521-522. Tablas test de rachas. Pp. 360-364. Contraste x2 de Pearson. Pp.365-367. Contraste de Kolmogorov-Smirnov. Pp. 392-393. Contraste de rachas. • [Ríos, 1997] Ríos, S.,Simulación, Métodos y aplicaciones. Ed Ra-Ma. Eugenio Soler Galán

  35. Lugares WEB • http://es.wikipedia.org/wiki/Azar • http://www.virtual.unal.edu.co/cursos/sedes/manizales/4060015/Lecciones/Capitulo%20VI/metodos.htm • http://www.lawebdefisica.com/apuntsmat/num_aleatorios/ • http://jungla.dit.upm.es/~trdt/apuntes/t1.html Eugenio Soler Galán

More Related