md5简单加密处理

MD5简单加密处理字符串

java代码如下,代码比较简单,没有多余的处理,可能也会存在些许问题


import org.springframework.stereotype.Component;

import java.math.BigInteger;
import java.security.MessageDigest;

@Component
public class md5Utils {

    private static final String salt="自定义加盐的字符串";

/**
 * @param str
 * @return java.lang.String
 * @描述: md5简易版加盐,返回加密后的字符串!
 */
    public String md5(String str) {
        MessageDigest md5=null;
        try {
            md5 = MessageDigest.getInstance("MD5");
        }catch (Exception e){
            //md5加载失败
            System.out.println("md5加载失败!");
            return null;
        }
        if (null != str && !"".equals(str)){
            String endStr=str+salt;
            md5.update(endStr.getBytes());
            //
            String md5str = new BigInteger(1, md5.digest()).toString(16);
            char st = md5str.charAt(0);
            char en = md5str.charAt(md5str.length()-5);
            String substring = md5str.substring(1, md5str.length() - 1);
            return en+substring+st;
        }else
            return null;
    }

/**
 * @param str 验证字符
 * @param md5str md5转换后的字符串
 * @return java.lang.Boolean
 * @描述: str与md5加密后的字符串配对!
 */
    public  Boolean md5verifyStr(String str,String md5str) {
        if (null != md5(str) && null != md5str && !"".equals(md5str)){
            return md5str.equals(md5(str));
        }else
            return null;
    }

}

接下来只需要调用两个方法就可以对字符串加密和比对了,但是加密后的字符串是不可逆的,所以加密后的字符串不能解析为原来的字符串,请谨慎考虑和使用,自己练习当我没说。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值