☰
93 密码加盐哈希存储,这个Java工具类8个方法明文永不出库
2026/10/22 13:03:08 网站建设 项目流程

📌AI人工智能: 「AI大模型」AI_Agent智能体实战项目保姆级文档

📋 目录

  • 一、工具类功能
  • 二、所需环境
  • 三、方法与调用示例(按需调用)
  • 四、工具类源码(可直接复制)

一、工具类功能

注册时用随机盐 + PBKDF2-HMAC-SHA256 拉伸出一个慢哈希,连同算法、迭代次数、盐一起编进一个自描述串存库,登录时把整串交给 verify 比对,明文口令永不出库。

二、所需环境

JDK 17或以上

三、方法与调用示例(按需调用)

🔢方法序号:1

🎯方法用途:

🧩方法定义:public static String hash(String password)

🗣️入参解释:public static String hash(明文口令)

📤返回值解释:String,形如$pbkdf2-sha256$600000$盐$哈希的自描述串

💡边界口径:

🧪方法示例:


🔢方法序号:2

🎯方法用途:

🧩方法定义:public static String hash(String password, int iterations)

🗣️入参解释:public static String hash(明文口令, 迭代次数)

📤返回值解释:String,口令哈希串

💡边界口径:

🧪方法示例:


🔢方法序号:3

🎯方法用途:

🧩方法定义:public static String hash(String password, int iterations, int saltBytes, int keyBits)

🗣️入参解释:public static String hash(明文口令, 迭代次数, 盐字节长度, 派生长度)

📤返回值解释:String,五段式的口令哈希串

💡边界口径:

🧪方法示例:


🔢方法序号:4

🎯方法用途:

🧩方法定义:public static boolean verify(String password, String storedHash)

🗣️入参解释:public static boolean verify(待校验口令, 存储串)

📤返回值解释:boolean,匹配为true,不匹配为false

💡边界口径:

🧪方法示例:


🔢方法序号:5

🎯方法用途:

🧩方法定义:public static boolean needsRehash(String storedHash)

🗣️入参解释:public static boolean needsRehash(存储串)

📤返回值解释:boolean,需要重算为true

💡边界口径:

🧪方法示例:


🔢方法序号:6

🎯方法用途:

🧩方法定义:public static boolean needsRehash(String storedHash, int targetIterations)

🗣️入参解释:public static boolean needsRehash(存储串, 目标迭代次数)

📤返回值解释:boolean,需要重算为true

💡边界口径:

🧪方法示例:


🔢方法序号:7

🎯方法用途:

🧩方法定义:public static Params parse(String storedHash)

🗣️入参解释:public static Params parse(存储串)

📤返回值解释:Params,public record Params(int iterations, byte[] salt, byte[] hash),盐和哈希都是防御性副本

💡边界口径:

🧪方法示例:


🔢方法序号:8

🎯方法用途:

🧩方法定义:public static boolean isStoredFormat(String storedHash)

🗣️入参解释:public static boolean isStoredFormat(待判断字符串)

📤返回值解释:boolean,是本类格式返回true

💡边界口径:

🧪方法示例:

四、工具类源码(可直接复制)

📦本工具类源码:93-密码加盐哈希存储工具类

📦 需要「Java企业级工具类全家桶(1-100)」点点关注点点赞,回复「java工具类」可领取100个工具类的完整源码

💡 工具类已调试通过,复制粘贴即可使用,省时省力

💡 可保存到自己网盘,永久有效


觉得对您有帮助,麻烦点点关注啦,您的关注是我创作的最大动力~ 🎯

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询