BCrypt初体验之加密与验证

    技术2022-07-10  124

    版权声明:本文为 小异常 原创文章,非商用自由转载-保持署名-注明出处,谢谢! 本文网址:https://blog.csdn.net/sun8112133/article/details/107057062

    BCrypt 是一种加密方式,目前使用比较火。在这里我不得不说一下 MD5 加密现在已经弱爆了,目前最新版的 Spring Security 中已经把 MD5 剔除了,MD5 太不安全了,更推荐用 BCrypt 加密,而且什么盐值加密也很少用,因为 BCrypt 中已经将 salt 加进去了。

    Spring Security 提供了 BCryptPasswordEncoder 类,实现 Spring 的 PasswordEncoder 接口使用 BCrypt 强哈希方法来加密密码。BCrypt 强哈希方法 每次加密的结果都不一样。

    本篇博客主要以案例来演示使用 BCryptPasswordEncoder 类进行简单加密与验证。

    import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; public class Test { public static void main(String[] args) { BCryptPasswordEncoder bcp = new BCryptPasswordEncoder(); // 原始密码(明文密码) String rawPassword = "123456"; // 使用 BCrypt 对明文加密 String encodedPassword = bcp.encode(rawPassword); System.out.println(encodedPassword); // 校验密码 if (bcp.matches(rawPassword, encodedPassword)) { System.out.println("密码校验成功"); } else { System.out.println("密码错误"); } } }

    博客中若有不恰当的地方,请您一定要告诉我。前路崎岖,望我们可以互相帮助,并肩前行!
    Processed: 0.014, SQL: 9