密码中为什么要加盐

Life is short , play more!
本文来自lihao's Blog,转载请注明。

当然这里不是说做饭,加盐不是为了好吃。加盐在密码学里主要是为了安全性。

在密码学历,盐指的就是一段随机的比特(数据),用来创建一段输入的数据。加盐就是为了扰乱正常的数据,防止被别人猜测。 例如经常用到的密码,通行码等。

例如我们用这个密码whoistester,则为了安全性,我们往往要进行单向加密。 例如使用md5加密。但是md5加密后的结果, 如果我们通过黑客行为或者监听等,拿到密文后。可以通过一些md5反向解密的大数据库里查询到原文内容。 这样安全性有很大的危险。

如果我们加盐,那么猜测的难度将会大大加大。

例如:

加盐前: whoistester   1234e21d38c93ff1191306542f7d138b(加密后的密文)

加盐后,假设我们的盐是4567890, 通过我们的加盐方法,加进去。

加盐后:w4h5o6i7s8t9e0ster cf934628e2937bbd1cb86fd716fdff72

这种情况下,如果黑客截取到了 1234e21d38c93ff1191306542f7d138b  和 cf934628e2937bbd1cb86fd716fdff72 , 并解密得到原文 whoistester 和w4h5o6i7s8t9e0ster ,这时候加盐的密码串,就很难被黑客猜到哪个才是真正的密文。 这样显而易见就提高了安全性。


发表评论

电子邮件地址不会被公开。 必填项已用*标注