加密加盐处理

一、背景
对于同一密码,同一加密算法会产生相同的hash值。这样,当用户进行身份验证时,对用户输入的明文密码应用相同的hash加密算法,得出一个hash值,然后使用该hash值和之前存储好的密文值进行对照,如果两个值相同,则密码认证成功,否则密码认证失败。

出于更安全的考虑,即使两个用户输入的是相同的密码,也应该要保存为不同的密文,即使用户输入的是弱密码,也需要考虑进行增强,从而增加密码被攻破的难度。因此出现了加盐加密。

加密过程(用户注册)
在这里插入图片描述

即:最终的密文是以下两个内容的函数:
用户输入的密码明文+盐值

最后要将以下内容存入数据库:
用户的用户名(校验用户,是查找密码的唯一值)、
最终的密文(注册时输入的密码,进行相同加密处理后生成的密文;用于以后每次登录校验密码的正确性)、
加密所用的盐值(随机字符串,每个用户每串密码对应的盐值可能不同;盐值位置可在明文密码前,也可在明文密码后,根据具体业务规则对盐值位置进行规定)

校验过程(用户登录)
在这里插入图片描述

参考链接:加密加盐的简单理解

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值