学习Mybatis加密数据存储

@Override
    public void Register(RegisterRequest registerRequest) {
        String encryptedPassword = encryptPassword(registerRequest.getPassword());
        registerRequest.setPassword(encryptedPassword);

        registerRequest.setUserId(UUID.randomUUID().toString());
        registerRequest.setCreateTime(Calendar.getInstance().getTime());
        registerRequest.setState(1L);

        loginMapper.Register(registerRequest);
    }
    private String encryptPassword(String rawPassword) {

        BCryptPasswordEncoder encoder = new BCryptPasswordEncoder();
        return encoder.encode(rawPassword);
    }

在service使用bcrypt加密密码a4f406fb5c164b4b870353b0230fd76c.png使用Spring Security的BCryptPasswordEncoder的加密069e78725f804b468866e89206588c6a.png

使用Mybatis XML映射

f0d5bbd197034087bbde79a8016d214c.png

加密成果

ac8413aefe884f82ad0b85df12ed4e9b.png

 

解密

@Override
    public boolean Login(LoginRequest loginRequest) {
        LoginRequest login = loginMapper.Login(loginRequest.getUsername());

        if (login != null) {

            BCryptPasswordEncoder encoder = new BCryptPasswordEncoder();
            return encoder.matches(loginRequest.getPassword(), login.getPassword());
        }
        return false;
    }

先从从数据库获取加密的密码,再使用加密库来验证密码

462cddb5a174491592068583a0ef1ecf.png

Mybatis XML映射

14765938952c478195edcaa00b70714e.png

 

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值