0%

散列算法

简介

​ 散列(Hash)算法,它是一种单向算法,用户可以通过该算法对目标信息生成一段特定长度的唯一Hash值,却不能反向操作;

​ 常用于在不可还原的密码存储、信息完整性校验等;

分类

  1. MD2
  2. MD4
  3. MD5
  4. HAVAL
  5. SHA,可以对任意长度的数据运算生成一个160位的数值;
  6. SHA-1
  7. HMAC
  8. HMAC-MD5
  9. HMAC-SHA1

比较

  1. SHA-1与MD5
    均由MD4导出,

    不同之处:
    对强行供给的安全性
    最显著和最重要的区别是SHA-1摘要比MD5摘要长32位;
    使用强行技术,产生任何一个报文使其摘要等于给定报摘要的难度对MD5是2128数量级的操作,而对SHA-1则是2160数量级的操作。这样,SHA-1对强行攻击有更大的强度;
    对密码分析的安全性,由于MD5的设计,易受密码分析的攻击,SHA-1显得不易受这样的攻击;
    速度,在相同的硬件上,SHA-1的运行速度比MD5慢;