Hash

Páginas: 7 (1650 palabras) Publicado: 5 de febrero de 2013
Cómo operan las funciones HASH ¿Qué es un Hash?

"En informática, una función hash o algoritmo hash es una función para sumarizar o identificar probabilísticamente un gran conjunto de información, dando como resultado un conjunto imagen finito generalmente menor ..." Una función hash es un algoritmo matemático que nos da un resultado B al aplicarlo a un valor inicial A. Es como cualquierfunción matemática, por ejemplo la función raíz cuadrada nos daría como resultado 2 si se la aplicamos al número 4. E igual que cualquier función matemática tiene que actuar de tal forma y tiene que cumplir con ciertos criterios. No nos puede devolver cualquier cosa, lo que nos devuelva requiere que tenga ciertas propiedades para que podamos usarlo.

¿Qué

propiedades

tienen

que

cumplirlas

funciones

hash?

1- Sea cual sea la longitud del texto base A, la longitud de su hash resultante B siempre va a ser la misma. Por ejemplo, si la longitud de la salida B esta definida en 128 bits, si aplicamos una función hash a un A de 5 bits nos dará un B de 128 bits, y si se la aplicamos a un A de 380 millones de bits, nos dará un B de 128 bits igualmente. 2- Para cada entrada A, lafunción generará una salida B única. O lo que es lo mismo, es imposible que dos textos bases A y A' tengan un mismo hash B. Según estas dos primeras propiedades, nos damos cuenta enseguida de la utilidad de las funciones de hash. La más inmediata es usarla para generar un resumen de algo. De hecho, estas funciones se conocen también como funciones resumen. Un ejemplo real puede ser el del típicorepositorio de documentos. Si alguien quiere almacenar digamos "Las_Aventuras_Del_Ingenioso.doc" cuyo contenido es El Quijote enterito, el sistema lo primero que tiene que hacer es revisar que no está previamente ya almacenado con el mismo o con otro nombre, por ejemplo "ElQuijote.doc". El sistema puede comparar letra a letras el documento de entrada con todos los docs de su BBDD para comprobar queno está, o puede comparar el resumen del documento de entrada con los resúmenes de los documentos de la BBDD, opción mucho más manejable y rápida. Además, como la salida B es única para cada A, se puede usar también para verificar la integridad de A. Podemos ver que muchos programas incluyen su hash junto con su descarga, de esta forma, podemos verificar que el programa no ha sido modificado nile han introducido un virus o ha sido troyanizado. Si a los bytes de una aplicación A les calculo el hash B y lo adjunto, cuando alguien modifique la

aplicación A, al calcular de nuevo su hash su valor habrá cambiado y será distinto de B. Puedes probar a calcular el md5 de un documento, luego modificas una simple coma del documento y calcular de nuevo el MD5. Veras como ha cambiadocompletamente, aunque solo hemos modificado una simple coma. 3- Dado un texto base, es fácil y rápido (para un ordenador) calcular su número resumen. 4- Es imposible reconstruir el texto base a partir del número resumen. Esto es lo que se conoce como One-Way hash functions. A partir del hash es imposible reconstruir el texto base. Atención aquí !!!, no quiero que os lieis. Este es un punto que muchos notienen claro. Solo hay que leer bien, a partir del hash B es imposible sacar el texto A, quiere decir no existe forma o es computacionalmente imposible, que mediante operaciones matemáticas inversas o no a las del algoritmo de hash, se llegue desde B al texto base. Si os dais cuenta, esto es muy distinto que usar fuerza bruta. No tiene nada que ver. Con fuerza bruta le aplicamos la función de hash adiferentes textos hasta que obtenemos un hash similar al hash del texto que buscamos, con lo que por consecuencia tendremos el texto buscado. Nuestra función hash.

Vamos a inventarnos un ejemplo para verlo claramente. Esto no podría tomarse como una función hash fiable porque es demasiado débil a ataques, pero nos vale como ejemplo gráfico por si no ha quedado del todo claro. Esta función hash...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • hashas
  • HASH
  • hash
  • tabla hash
  • funciones hash
  • Busqueda Hash
  • Hash plegamiento
  • Función Hash

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS