BCrypt

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

  1. 不可逆:你永远无法从数据库里的 BCrypt 字符串反推出原始密码。
  2. 自带随机盐(salt):每次加密,即使是同一个密码,生成的结果也不一样。
    项目里的BCrypt如何工作的
    注册时
    用户输入密码 → encode() → 存数据库
    登录时
    用户输入密码 + 数据库里的加密串 → matches() → 返回 true / false
相关推荐
qq_1958216515 小时前
6. 应用层协议实现:CoE协议栈集成、对象字典配置、PDO映射
java·服务器·网络
弹简特15 小时前
【Java项目-轻聊】10-实现会话管理模块
java·开发语言·数据库
人道领域15 小时前
Java后端开发者转型AIAgent开发路线指南
java·开发语言
许彰午15 小时前
36_Java设计模式之代理模式
java·设计模式·代理模式
盒马盒马15 小时前
Rust:String
java·前端·rust
许彰午15 小时前
35_Java设计模式之工厂模式
java·开发语言·设计模式
凡人叶枫15 小时前
Effective C++ 条款32:确定你的 public 继承塑模出 is-a(是一种)关系
java·linux·开发语言·c++·嵌入式开发
小杨互联网15 小时前
Jar反编译逆向2.0教程实战
java·jar·java反编译·jar反编译·java逆向·源码还原
爱码少年15 小时前
Spring Boot 文件上传下载完整指南:从基础到高级实践
java·spring boot
Flittly16 小时前
【AgentScope Java新手村系列】(7)子Agent编排
java·spring boot·笔记·spring·ai