# 什么是哈希函数？

By [风吹一池皱](https://paragraph.com/@nftsun) · 2021-12-12

---

通过百度百科，可以搜做到哈希函数的定义：“Hash，一般翻译做"散列"，也有直接音译为"哈希"的，就是把任意长度的输入（又叫做预映射， pre-image），通过散列算法，变换成固定长度的输出，该输出就是散列值。”简单点来讲，**哈希函数是一种接受输入值的函数，一个输入输入值得到输出值的算法。**

哈希函数是用来解决数据和数据之间对应关系的一种算法，哈希函数就是一种映射，是从输入信息到存储地址的映射。到处都会使用加密哈希，从密码存储到文件验证系统。使用确定性算法的基本原理，就是使用一个输入，并且每次都产生一个固定长度的字符串。也就是说，使用同样的输入总是会导致同样的输出。

哈希函数这个领域不存在传统企业领域一家独大的情况，由于密码学的开源精神，哈希函数设计思路也非常的开阔，目前可供使用的哈希函种类、数量众多。

\*\*哈希函数主要分为以下六类：加法Hash、位运算Hash、乘法Hash、除法Hash、查表Hash、混合Hash。\*\*目前使用范围最常见的哈希函数就是混合Hash，包括MD系列和SHA系列等。

---

*Originally published on [风吹一池皱](https://paragraph.com/@nftsun/t8owuLVKsGVuZJMDpAVe)*
