什么是 HASH

什么是 HASH

 

中文名:散列、哈希。

HashMap的由来是基于Hasing技术(Hasing), Hasing就是将很大的字符串或者任何对象转换成一个用来代表它们的很小的值,这些更短的值就可以很方便的用来方便索引、加快搜索。[引用1]

 

哈希算法:指一系列加密算法,这些算法遵守了 哈希算法的加密规则,但是各种算法的加密实现方式不同。

哈希算法是将不同长度的数据,进行加密运算,输出一段 128 为的字符串,这些字符串都是唯一的,非重复的。

 

特点:

  1. HASH 算法是一个不可逆的单向函数,两个不同的值的 Hash值是不同的,对数据的很小的改动,都会让哈希值产生很大的变化,从而可以轻易发现数据被篡改而纪实采取行动。
  2. 不重复,不同的值的加密结果都是唯一的。
  3. 不可逆,得到哈希值,也无法推算出最初的值。
  4. 抗碰撞能力高,即不同的值计算得到相同哈希值的可能越小越好。
  5. 好的 散列函数 = 计算简单 + 分布均匀;

 

代表算法:

  1. MD5 加密算法;
  2. SHA1 加密算法;

 

作用:

信息安全方面:

      1、文件校验:

            奇偶校验、CRC检查 -> 纠正数据传输中的错误,无防篡改能力;

            MD5 加密算法 -> 防止数据被 恶意破坏;

      2、数字签名:

            HASH算法最终会得到一个唯一值,类似于(数字指纹),可以表示达到签名的唯一性的特点。

      3、鉴权协议;

 

哈希表:

概念:是一种物理存储结构。数据内容,与数据存放地址之间的映射关系。

表现形式:以 键值对 进行保存;

给定任意类型的数据 -> 加工(哈希算法)-> 结果(哈希值:作为键的存储地址)。

 

 

引用1:https://zhuanlan.zhihu.com/p/30543726

https://blog.csdn.net/21aspnet/article/details/6596747

https://www.zhihu.com/question/26762707

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值