加盐加密的简单理解

落日映苍穹つ 2023-03-01 12:49 4阅读 0赞

背景

  • 对于同一密码,同一加密算法会产生相同的hash值。这样,当用户进行身份验证时,对用户输入的明文密码应用相同的hash加密算法,得出一个hash值,然后使用该hash值和之前存储好的密文值进行对照,如果两个值相同,则密码认证成功,否则密码认证失败。
  • 出于更安全的考虑,即使两个用户输入的是相同的密码,也应该要保存为不同的密文,即使用户输入的是弱密码,也需要考虑进行增强,从而增加密码被攻破的难度。因此出现了加盐加密。

    1. 加密过程(用户注册)

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1NhY3JlZG5lc3M

  • 也就是说最终的密文是以下两个内容的函数:
  1. 用户输入的密码明文
  2. 盐值
  • 最后要将以下内容存入数据库:
  1. 用户的用户名
  2. 最终的密文
  3. 加密所用的盐值

    1. 校验过程(用户登录)

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1NhY3JlZG5lc3M 1

————————————————
版权声明:本文为CSDN博主「Sacredness」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Sacredness/article/details/86027143

发表评论

表情:
评论列表 (有 0 条评论,4人围观)

还没有评论,来说两句吧...

相关阅读

    相关 什么是密码?

    生活中,我们为了保证密码的安全性,一般都不会使用明文存储,而是要将明文进行加密,然后再进行存储。假如我们的数据被拖库,代码被泄露,请求被劫持的情况下,也能保证用户的密码

    相关 Java加密

    1.场景还原     很多同学认为登录密码经过MD5加密后就万事无忧,遗憾的告诉你,这并非万全之策;虽然这个世界上没有绝对的安全,但是我们能不能动动脑筋将密码加密的更安全

    相关 密码-Salting password

    今天看到一个新鲜词:Salting password,加盐的密码。感觉很是纳闷,这是什么意思呢?上网查了下原来是对密码进行一些混淆增加破解的难度。 一般对密码都不会是明文存储

    相关 HTTPS简单理解

    一、对共钥私钥、数字签名、证书的理解 1.公钥私钥(一般用于确保信息的安全性) 非对称加密:加密解密用的不是同一个东西。 公钥就像是锁,可以对信息进行加密,加密以

    相关 Java 简单理解

    背景 对于同一密码,同一加密算法会产生相同的hash值。这样,当用户进行身份验证时,对用户输入的明文密码应用相同的hash加密算法,得出一个hash值,然后使用该hash...