哈希函数
2022-09-21 本文已影响0人
小陈wx
什么是哈希函数?
hash直译为弄糟搞乱
哈希函数的意义在于输入一个值,返回一个被搞乱且唯一的值。
哈希函数的意义?
从hash值唯一对应,还有被打乱的特性我们可以在多个场景应用
1.利用输入输出唯一对应,通过比对输出的hash值我们可以做文件是否一致的校验
2.利用hash函数加密
那么我们是不是可以自己实现一个hash函数呢
//哈希简单实现
function hashSth(someString){、
//转化为ascii码
var key =someString.charCodeAt();
return key+1
}
hashSth("你好")
控制台会打印:20321
如此简单的hash函数,有没有问题?MD5!!!
答案是有,在某些情况下不同的输入可能得到相同的输出,这种情况叫做冲突,牛逼的数学天才已经为我们提供了多种的hash算法包括sha-256,MD5等这些算法能够极大的减少冲突的可能,数学高手可自行深入了解。。。。