BCrypt

定义:BCrypt 是一种用于密码加密与校验的密码散列算法,主要用于存密码。
核心:不存明文密码,只存"不可逆的加密结果",登录时用算法自己去比对。做法:用户输入明文 然后matches 去和数据库密文比对
代码体现:passwordEncoder.matches(rpassword, user.getPassword())。
特点

  1. 不可逆:你永远无法从数据库里的 BCrypt 字符串反推出原始密码。
  2. 自带随机盐(salt):每次加密,即使是同一个密码,生成的结果也不一样。
    项目里的BCrypt如何工作的
    注册时
    用户输入密码 → encode() → 存数据库
    登录时
    用户输入密码 + 数据库里的加密串 → matches() → 返回 true / false
相关推荐
We....1 小时前
鸿蒙与Java跨平台Socket通信实战
java·服务器·tcp/ip·arkts·鸿蒙
笃行客从不躺平1 小时前
Token 复习
java·分布式·spring cloud
Albert Edison2 小时前
【Python】函数
java·linux·python·pip
2301_818732062 小时前
项目启动报错,错误指向xml 已解决
xml·java·数据库·后端·springboot
码农阿豪2 小时前
Oracle 到金仓数据库迁移实战:一次真正“落地”的国产替代之旅
java·数据库·oracle
小王不爱笑1323 小时前
SpringBoot 整合 Ollama + 本地 DeepSeek 模型
java·spring boot·后端
毕设源码-钟学长3 小时前
【开题答辩全过程】以 高校宿舍分配系统设计与实现为例,包含答辩的问题和答案
java
何中应3 小时前
IDEA 中让 Git 忽略 .idea 目录
java·git·intellij-idea
無森~3 小时前
HBase优化面试题
java·面试·hbase