RuoYi若依平台忘记后台登录密码

在IDEA中通过编辑->查找功能搜索encryptPassword函数,复制其内容到新添加的main函数中运行,生成的加密字符串用于更新MySQL数据库的登录密码。不同版本可能使用不同加密函数,每次运行main函数可能会得到不同结果。

IDEA 通过菜单:编辑=》查找=》在文件中查找,输入“encryptPassword” 找到对应的加密函数,复制里面的内容,然后加密函数所在类中新增main函数,运行,即可显示加密字符串,再把该字符串复制到数据库的对应位置即可登录。

如下查找对应函数:

所在类新增main函数,单击main函数左侧绿色箭头运行

运行结果:

复制到mysql数据库对应位置,登录即为以上密码“admin123”

 

注意,有些版本使用的是其它函数加密,所以方法类似。可能每次运行main后的结果是不一样的。

 

 

 

 

在Java中,如果你想要安全地处理用户的密码并将其回显给用户,通常会直接将明文密码显示出来,因为明文密码存在泄露风险。为了保护用户隐私,你会对其进行加密后再展示。 例如,你可以使用`javax.crypto`包下的工具,如`MessageDigest`类配合哈希算法(比如SHA-256、MD5等)对密码进行加密,生成散列值。然后可以显示散列值,而是原始密码。 ```java import javax.crypto.Mac; import javax.crypto.spec.SecretKeySpec; import java.security.InvalidKeyException; import java.security.NoSuchAlgorithmException; public String encryptPassword(String password) { try { SecretKeySpec secretKey = new SecretKeySpec("your_secret_key".getBytes(), "HmacSHA256"); Mac mac = Mac.getInstance("HmacSHA256"); mac.init(secretKey); byte[] hash = mac.doFinal(password.getBytes()); return bytesToHex(hash); // 将字节数组转换为十六进制字符串 } catch (NoSuchAlgorithmException | InvalidKeyException e) { throw new RuntimeException("Error hashing the password", e); } } // 辅助函数将字节转换为十六进制字符串 private static String bytesToHex(byte[] bytes) { StringBuilder result = new StringBuilder(); for (byte b : bytes) { result.append(String.format("%02x", b)); } return result.toString(); } // 使用示例 String hashedPassword = encryptPassword("your_password"); System.out.println("显示的安全密码哈希值: " + hashedPassword); ``` 当你需要验证密码时,会使用相同的密钥和哈希算法计算输入的密码,并与存储的哈希值进行比较。这样可以在暴露原始密码的情况下确保密码的有效性。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值