md5加密测试代码

/**
     * md5加密
     * @param source 传入明文字符串
     * @return 加密结果
     */
    public static String md5(String source){

        // 1.判断source 是否有效
        if(  source == null || source.length()==0 ){
            // 2.抛出 "字符串不合法!请不要传入空字符串"
            throw  new RuntimeException(CrowdConstant.MESSAGE_STRING_INVALIDATE);
        }else{
            try {
                // 3.获取MessageDigest对象
                String algorithm = "md5";
                MessageDigest messageDigest = MessageDigest.getInstance(algorithm);

                // 4.获取明文字节数组
                byte[] input = source.getBytes(StandardCharsets.UTF_8);

                // 5.执行加密
                byte[] output = messageDigest.digest(input);

                // 6.创建BigInteger
                int signum = 1;
                BigInteger bigInteger = new BigInteger(signum, output);

                // 7.16进制
                int radix = 16;
                String encode = bigInteger.toString(radix).toUpperCase();
                return encode;

            } catch (NoSuchAlgorithmException e) {
                e.printStackTrace();
            }
        }
        return  null;
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值