生活需要加点盐(salt):)

什么是盐(salt):

密码学中,在散列前将指定的字符串插入散列内容中的任意固定位置,插入字符串的操作称为「加盐」。

  • 散列:对数据处理的方法,通过散列函数/算法将项和索引(散列/散列值)生成散列表(便于搜索的数据结构)。

  • 散列算法、哈希函数:用于加密密码,因为其计算出的散列值(Hash Value)能不可逆(不可倒推原来的数值)。

为什么需要「加盐」:

为了额外的安全,即使被彩虹表找到散列后对应的原始内容,由于「加了盐」,扰乱了真正的密码,让获取到的难度增大了不少。

散列函数一些实践(md5,sha1, hash):

echo $md5 =  md5('test'); // 098f6bcd4621d373cade4e832627b4f6


echo sha1('test'); // a94a8fe5ccb19ba61c4c0873d391e987982fbbd3


echo hash('md5', 'test'); // 098f6bcd4621d373cade4e832627b4f6
echo hash('sha256', 'test'); // 9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08
echo hash('haval160,4', 'test'); // 516d3243a12ce3af38a005003c7221bf85299714


  • md5()、sha1()和sha256()并不适合用于密码保护场景:

    这些散列算法是面向快速、高效进行散列处理而设计,破解者能「暴力」获取散列码对应的原始数据。

  • 注意:密码散列只能保护密码不会从数据表中直接获取,无法保证被注入恶意代码拦截到密码。

写到最后:

安全是门大学问,这仅是是我学习过程中整理出来的一丢丢表面东西,希望能给屏幕前的你带来一点帮助,希望我们能共同进步 ? 如果可以的话,能不能给我点个赞呀~ ~就一下啊…)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值