Aleatoriedad vs pseudoaleatoridad
Se puede generar números
verdaderamente aleatorios mediante la medición de las fluctuaciones aleatorias
conocidas como “ruido”, cuando medimos este ruido como muestreo, se pueden
obtener números, por ejemplo si se miden la corriente eléctrica de la televisión
estática con el tiempo, se generara una secuencia de números realmente
aleatoria, esta secuencia aleatoria se
puede visualizar si se grafica como un camino, que va desde su número anterior
hacia su siguiente número, en este camino podremos observar que este no tiene
un patrón en específico y la ruta es verdaderamente “aleatoria” (gif de
ejemplo) http://makeagif.com/CHrZ6d
Los procesos
aleatorios como este son No
Deterministas ya que es imposible determinar cuál sería el siguiente número
aleatorio, mientras que una computadora son deterministas, porque su funcionamiento
es predecible y repetitivo.
En 1946 John von
Neumann desarrolló un algoritmo para simular mecánicamente los números
aleatorios, primero se seleccionaba un número realmente aleatorio llamado “semilla”
(seed en inglés) este puede provenir de los ruidos del ambiente, o de la hora
especifica (no es tan importante el cómo se obtenga este número, lo importante
es que sea de una fuente realmente aleatoria), después esta “semilla” se
introduce como entrada a una simple ecuación en donde se multiplicaba por sí
mismo y el resultado era la mitad de este nuevo número (ejemplo 121*121= 14641 à nuevo número= 464), después este nuevo número
se usa como semilla y se repite el proceso tantas veces sea necesario, a este
algoritmo se le conoce como el método de los cuadrados medios y es un algoritmo
de pseudoaleatoriedad ; es uno de muchos métodos de este tipo (en su gran mayoría
se usa una forma similar para generar números aleatorios) .
El problema con este
tipo de algoritmos es que la aleatoriedad de la secuencia depende de la
aleatoriedad de la semilla; es decir misma semilla, misma secuencia.
Las diferencias entre
un generador de números realmente aleatorios (como el ruido) y un generador de
pseudoaleatoriedad, si las dos las representamos gráficamente (como el ejemplo
anterior) al principio parecen similares, pero si seguimos generando números aleatorios
de formar pseudoaleatoria esta eventualmente se va a repetir, esto sucede
porque el algoritmo eventualmente llegara a una semilla que ya había utilizado
anteriormente y el ciclo se repetirá (en el siguiente gif se representa el
camino blanco como una fuente realmente aleatoria y el camino azul por una
fuente pseudoaleatoria) http://makeagif.com/tXv0lU
La longitud antes de
que un algoritmo pseudoaleatorio se repita se llama “periodo”, este se limita
única y exclusivamente por la semilla inicial, por ejemplo si se usa una
semilla de 2 digitos este algoritmo podrá producir máximo 100 números antes de
que se repita esta misma semilla y se repita el ciclo, una semilla de 3 dígitos
puede producir máximo 1000 números antes de generar la misma semilla y repetir
el ciclo.
Así con forme
aumentamos la longitud de la semilla se aumentan la seguridad de que alguien no
pueda adivinar el siguiente número, es claro que con el tiempo sería posible
para una computadora calcular millones de posibilidades para poder dar con esa
semilla, pero entre más grande el numero asumimos que es relativamente seguro
debido a la cantidad de tiempo que tendría que pasar una computadora calculando
con las semillas, un ejemplo para que se entienda mejor, es como si dejamos
nuestra bicicleta con un candado de combinación de 4 dígitos
sabemos que si alguien tiene el suficiente tiempo eventualmente podrá probar
todas las posibles combinaciones de la contraseña hasta que la adivine, pero se
puede asumir que para un lapso de un par de horas esta estará segura, porque no
hay muchas probabilidades que alguien adivine la contraseña en tan corta
cantidad de tiempo, algo similar sucede con los algoritmos pseudoaleatorios
,pero mientras las computadoras sigan siendo cada vez más rápidas es importante
que la cantidad de bits que se dedican a generar las semillas también incrementen.
Bibliografías:
Possible causes of deduction:
ResponderEliminara) -1 discussion of the properties required in crypto poor/absent.
b) -1 discussion of adequate sources of randomness poor/absent.
c) -1 discussion implications in information security poor/absent.
d) -1 poor spelling / grammar.
e) -1 reflection of own judgment poor/absent.
f) -1 missing or poorly formatted bibliography and/or citations within text.
g) -1 unfinished segments present within the entry.
Aspects possibly resulting to bonus:
A) Written in English.
B) Additional posts on topics related to the course.
Maximum points available for the report were seven.
In your case, the following deductions apply: a, d.
Also, the following bonuses apply: None.
The number of points received is thus min{7 - 2 + 0, 7} = 5.
Corrections:
Aprende a puntuar y dividir frases de forma fluida. Presta atención a los espacios blancos alrededor de símbolos de puntuación (que ni falten ni sobren). Presta atención a los acentos.
Hoy es la fecha límite de DH. Si lo subes antes de las tres de la tarde, mándame un correo al Gmail con la URL directa. Si no llega nada, será un NP.
ResponderEliminar