Junior — Middle
¿Puedes enumerar las características principales de las funciones hash?
sobes.tech AI
Respuesta de la IA
Características principales de las funciones hash:
- Determinismo: para un mismo valor de entrada, la función hash siempre devuelve el mismo hash.
- Rapidez de cálculo: la función hash debe calcularse rápidamente para cualquier dato de entrada.
- Distribución: los hashes deben distribuirse uniformemente en todo el rango de valores para minimizar colisiones.
- Resistencia a colisiones: la probabilidad de que diferentes entradas produzcan el mismo hash (colisión) debe ser mínima.
- Unidireccionalidad (para funciones hash criptográficas): no se puede recuperar la entrada original a partir del hash.
Ejemplo en Go:
import (
"fmt"
"hash/fnv"
)
func hash(s string) uint32 {
h := fnv.New32a()
h.Write([]byte(s))
return h.Sum32()
}
func main() {
fmt.Println(hash("example"))
}
Aquí se utiliza la función hash FNV, que calcula rápidamente el hash de una cadena.