哈希加盐法(HASH+SALT)

     一些网站的数据库管理着用户的ID及口令,口令以MD5等加密后的形式存在,但是有些时候可能数据库泄露,HASH值被攻击者获取,如果此HASH值对应的口令是弱口令(被很多用户采用),则黑客可以通过此HASH暴力破解获取其他用户的ID及口令,破坏数据的机密性。

    通过加入盐值(salt)即盐化可以很好的防治这种攻击手段。盐值是一组随机的字符串,通过插入在口令后进行HASH算法,这样即使是相同的口令,插入不同的盐值后生成的HASH值也是不相同的,由于MD5的不可逆性,想要逆向破解MD5也是非常耗时间的。

    具体的流程是:

    用户注册时:

    1、用户在网站注册时提供ID与口令

    2、系统为用户分配盐值

    3、盐值插入口令后进行HASH

    4、将ID,HASH值与盐值存入数据库

   身份验证时:
    1、用户提供ID与口令

    2、系统在数据库中通过用户提供的ID查找HASH值与盐值

    3、将盐值插入用户提供的口令后进行HASH

    4、将HASH值与数据库中的HASH值比较,相等则验证成功,反之验证失败


你可能感兴趣的:(安全技术)