shiroMD5盐加密

本文介绍了如何在Shiro框架下使用MD5结合盐值进行密码加密。首先,详细讲述了如何编写MD5工具类,接着阐述了更改密码的步骤,并在控制层展示了如何操作原始密码进行加密。最后,提到了自定义的JwtToken对象,以及其与UsernamePasswordToken的关系。
摘要由CSDN通过智能技术生成

编写MD5工具类

import org.apache.shiro.crypto.hash.SimpleHash;
import org.apache.shiro.util.ByteSource;

public class MD5Utils {
	public static void main(String[] args) {
			 System.out.println(md5("1","1"));
	}
	
	public static String md5(String username,String password){
		String hashAlgorithmName = "MD5";//加密方式
		Object crdentials = password;//密码原值
		ByteSource salt = ByteSource.Util.bytes(username);//以账号作为盐值
		int hashIterations = 1024;//加密1024次
		String result = new SimpleHash(hashAlgorithmName,crdentials,salt,hashIterations).toHex();
		return result;
	}
}

更改密码

加密后的密码
在这里插入图片描述
数据库密码改为返回的字符串(如果有注册功能,在注册调用加密方法数据库存入加密值)
在这里插入图片描述

控制层更改原始密码

这里是自己实现的JwtToken对象,原始对象是UsernamePasswordToken
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值