MD5加密

package com.tzsw.emhr.relieft.rttpub;

import java.security.*;
import java.math.*;

public class TestMd5 {
  public String MD5(String sInput) throws Exception {
    String algorithm = "";
    //输入不能为空
    if (sInput.trim() == null) {
      return "null";
    }
    //指定采用MD5算法
    try {
      algorithm = System.getProperty("MD5.algorithm", "MD5");
    }
    catch (SecurityException se) {
    }
    //定义MessageDigest对象
    MessageDigest md = MessageDigest.getInstance(algorithm);
    //按照系统缺省的字符编码方式把sInput 转换成字节,并把结果存到一新的字节数组buffer中
    byte buffer[] = sInput.getBytes();
    //从指定的字节数组buffer的偏移量0开始,用指定的字节数组修改由sInput生成摘要
    //count为从 0 开始用的字节数长度。
    for (int count = 0; count < sInput.length(); count++) {
      md.update(buffer, 0, count);
    }
    //通过执行最后的诸如填充的操作完成散列码的计算。 在调用之后复位该摘要
    //返回存放结果散列值的字节数组bDigest
    byte bDigest[] = md.digest();
    //将bDigest转换为大整数bi
    BigInteger bi = new BigInteger(bDigest);
    //返回bi字符串表示,即最终的编码结果
    return (bi.toString(16));
  }
  public static void main(String[] a) {
    TestMd5 my = new TestMd5();
    try {
      System.out.println(my.MD5("2333"));
      //7f6ffaa6bb0b408017b62254211691b5  //123
    }
    catch (Exception e) {}
  }
}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值