Hashing

Páginas: 9 (2162 palabras) Publicado: 21 de noviembre de 2012
METODO DE BUSQUEDA HASHING
Hash: se refiere a una función o método para generar claves o llaves que representen de
manera casi unívoca a un documento, registro, archivo, etc., resumir o identificar un dato a
través de la probabilidad, utilizando una función hash o algoritmo hash. Un hash es el
resultado de dicha función o algoritmo.

FUNCION HASH
Es una función para resumir oidentificar probabilísticamente un gran conjunto de
información, dando como resultado un conjunto imagen finito generalmente menor. Varían en
los conjuntos de partida y de llegada y en cómo afectan a la salida similitudes o patrones de
la entrada

VENTAJAS:
Se pueden usar los valores naturales de la llave, puesto que se traducen internamente a
direcciones fáciles de localizar
Se lograindependencia lógica y física, debido a que los valores de las llaves son
independientes del espacio de direcciones
No se requiere almacenamiento adicional para los índices.

DESVENTAJAS:
El archivo no esta clasificado
No permite llaves repetidas
Solo permite acceso por una sola llave
Costos
Tiempo de procesamiento requerido para la aplicación de la función hash

ALGORITMO HASHINGAlgoritmo que se utiliza para generar un valor de hash para algún dato, como por ejemplo
claves. Un algoritmo de hash hace que los cambios que se produzcan en los datos de entrada
provoquen cambios en los bits del hash. Gracias a esto, los hash permiten detectar si un dato
ha sido modificado.

ALGORITMOS DE HASH MAS COMUNES
SHA-1: algoritmo de hash seguro_Algoritmo de síntesis que genera unhash de 160 bits. Se
utiliza, por ejemplo, como algoritmo para la firma digital.

MD2 y MD4_Algoritmos de hash que generan un valor de 128 bits.

MD5_Esquema de hash de hash de 128 bits muy utilizado para autenticación cifrada. Gracias
al MD5 se consigue, por ejemplo, que un usuario demuestre que conoce una contraseña sin
necesidad de enviar la contraseña a través de la red.
FUNCIONESDE HASH
Residuo de la división
Medio del cuadrado
Pliegue

RESIDUO DE LA DIVISIÓN
La idea de este método es la de dividir el valor de la llave entre un numero apropiado, y
después utilizar el residuo de la división como dirección relativa para el registro (dirección =
llave módulo divisor). Mientras que el valor calculado real de una dirección relativa,
dados tanto un valor de llavecomo el divisor, es directo; la elección del divisor apropiado
puede no ser tan simple. Existen varios factores que deben considerarse para seleccionar el
divisor:

RESIDUO DE LA DIVISIÓN
El rango de valores que resultan de la operación "llave % divisor", va desde cero hasta el
divisor 1. Luego, el divisor determina el tamaño del espacio de direcciones relativas. Si se
sabe que elarchivo va a contener por lo menos n registros, entonces tendremos que hacer
que divisor > n, suponiendo que solamente un registro puede ser almacenado en una
dirección relativa dada.
El divisor deberá seleccionarse de tal forma que la probabilidad de colisión sea minimizada.
¿Como escoger este numero? Mediante investigaciones se ha demostrado que los divisores
que son números parestienden a comportase pobremente, especialmente con los conjuntos
de valores de llave que son predominantemente impares. Algunas investigaciones sugieren
que el divisor deberá ser un numero primo. Sin embargo, otras sugieren que los divisores no
primos trabajan también como los divisores primos, siempre y cuando los divisores no primos
no contengan ningún factor primo menor de 20. Lo mas comúnes elegir el número primo
mas próximo al total de direcciones.

RESIDUO DE LA DIVISIÓN
Ejemplo:
Numero de direcciones 996. La eleccion de m sera 997, que es el primo mas cercano. Se
aplica esta función hash cuyo número es:
245643
h(245643) = 245643 mod 997 = 381

MEDIO DEL CUADRADO
En esta técnica, la llave es elevada al cuadrado, después algunos dígitos específicos se...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Metodo Hashing
  • indexacion hashing
  • Hashing
  • Hashing
  • hashing
  • Metodo De Dispersion Hashing En C
  • Teorico Hashing
  • Double Hashing

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS