java的md5和php的md5加密后不一致的解决方案

package tool;

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

import com.ndktools.javamd5.Mademd5;

public class Md5_demo {
	private String md5val;
	public Md5_demo(String md5val) {
		this.md5val = md5val;
	}
	
	public String toMd5() throws NoSuchAlgorithmException {
		MessageDigest md5 = MessageDigest.getInstance("MD5");
		md5.update(md5val.getBytes());
        /** 获取加密后的字节数组 */
        byte[] md5Bytes = md5.digest();
        String res = "";
        for (int i = 0; i < md5Bytes.length; i++){
            int temp = md5Bytes[i] & 0xFF;
            if (temp <= 0XF){ // 转化成十六进制不够两位,前面加零
                res += "0";
            }
            res += Integer.toHexString(temp);
        }
        return res;
	}
	
}

servlet中调用:

		String signs = "asgjkajg";
		Md5_demo md5demo = new Md5_demo(signs);
		String sign="";
		try {
			sign = md5demo.toMd5();	//返回md5加密好后的签名
		} catch (NoSuchAlgorithmException e) {
			e.printStackTrace();
		}

猜你喜欢

转载自blog.csdn.net/qq_42249896/article/details/90743205