密码加密解密问题

Blade 已结 1 200
ypl
ypl 2024-10-30 11:49

一、该问题的重现步骤是什么?

1. 我使用源码中的加密规则,  我新增了一个用户,加密前是123456,加密后是10470c3b4b1fed12c3baac014be15fac67c6e815。image.png

2. 但是在 loadUserByUsername 自定义用户校验中, 使用的也是源码的校验规则。(password:123456)为什么DigestUtil.hex(password)之后的密码 就成了 7c4a8d09ca3762af61e59520943dc26494f8941b。 加密解密规则到底是什么? 我用的全都是源代码。技术部分无做改动。只是业务改动。

image.png


二、你期待的结果是什么?实际看到的又是什么?

加密解密验证通过


三、你正在使用的是什么产品,什么版本?在什么操作系统上?

springCloud


四、请提供详细的错误堆栈信息,这很重要。


五、若有更多详细信息,请在下面提供。

1条回答
  •  admin
    admin (楼主)
    2024-10-30 12:30

    你一个用了encript方法一个用了hex方法,两个方法逻辑不一样,结果也就不一样。你点进去看看具体实现。

    bladex的加密逻辑就是密码明文先md5再对md5的密文sha1。接口传输的时候是国密sm2,后端接收到后进行国密解密,然后再sha1(md5)得出最终加密串。

    后续版本会增加密码盐进一步加强加密逻辑

    作者追问:2024-10-30 12:30

    前端是 jwt.md5 加密。在哪里进行了 国密加密?

    回答: 2024-10-30 12:30

    新版本是国密:【「SpringBlade公开课」13-国密加密配置-哔哩哔哩】 https://b23.tv/uMHEiY0

    0 讨论(2)
提交回复