Es una tecnica que consta de datos de
entrada,una función hash y una salida
Caracteristicas HASH
Rápida de Calcular
Es posible que se necesite
calcular muchas en poco
tiempo.
Distribuir los elementos
de manera uniforme en
todo el rango de la salida
Para evitar los algoritmos que
degradan el rendimiento
Provocar pocas
colisiones
Cuando una función HASH no
tiene colisiones se dice que es
perfecta
Siempre disolver el mismo
código HASH para una
misma entrada
Tener cuidado de usar valores
aleatorios calculados dentro de la
funcion
Tablas HASH
HASHING abierto
Consiste en asignar una lista de
modo que al tener varios datos con
el mismo código HASH, se la debe
recorrer elemento por elemento
hasta encontrar el desado
Aplicaciónes
Arboles
Nuevas
tablas
HASH
HASHING Cerrado
Al ver una colisión se busca una
nueva posición en la tabla.La
selección se puede hacer con una
nueva función HASH, eligiendo la
próxima ubicación vácia de la
tabla
Usos del HASHING
Tablas HASHING
Es una opción ideal para implementar DB.
Su uso es la simplicidad y los resultados
que logra
Definición
Es un arreglo o vector en el que se
almacenan datos según la posición
indicada en su valor HASH
Ventaja
Permite accesos muy
rápidos a los datos
Desventaja
Desperdicia mucha memoria, por que los datos no
están ordenados y esta no puede crecer al ser
estatica
HASH dinamico
Surgío para solucionar los problemas
del crecimiento de las tablas estaticas
Criptografia
Se utiliza para firmar los mensajes y
archivos.La firma no coincide con los valores
esto sera tomado como falso, y si se altera
el mensaje el receptor lo sabra
Varificacion de
integridad de datos
Un archivo puede mantener un valor
HASH que es computado cuando se
crea, si por error el hardware o
software se modifica nos daremos
cuenta por el HASH que no coincidira