算法和数据结构5.3哈希函数

2019-12-25  本文已影响0人  数字d

哈希函数可以吧给定的数据转换成固定长度的无规律数值,转换后的无规律数值可以作为数据应用于各种场景。

输入固定长度的无规律数值,会输出固定长度的数字,但是这些数字多用十六进制表示。

计算机会用由0和1这链各个数字表示二进制来管理所有的数据。虽然哈希值是用十六进制表示的,但是它也是数据,在计算机内部同样也要用二进制啦进行管理。

以此为前提,哈希函数有以下特征:

1.哈希函数输出的哈希值数据长度不变。

即使输入了相当大的数据,输出的哈利值长度也保持不变

2.输入了相同的数据,哈希值也必定相同

3.即使输入数据相似,哈希值也会有很大的差异

4.即使输入两个数据完全不同,输出的哈希值也有可能是相同的。(这种情况概率比较低,叫作哈希冲突)。

5.不可能从哈希值的反向推算出原本的数据,这点不可逆的操作和加密有很大的不同。

6.求哈希值得计算相对比较容易。

一般用作用户名和密码保存到服务端时候用到哈希函数,且服务端只存储哈希过后的密码。

因为哈希不可逆,所以就算被X窃听也不用担心。

上一篇 下一篇

猜你喜欢

热点阅读