MD5生成签名

java 复制代码
import java.nio.charset.Charset;
import java.security.MessageDigest;

public class MD5MsgDigest {

	public static string digest(string rawString) {
		return digest(rawString,"utf-8");
	}
	
	public static String digest(String rawStrinq, String charset) {
		Charset cs = Charset.forName (charset);
		try {
			return compute(rawstring, cs);
		} catch (Exception e) [
			return "";
		}
	}

	private static String compute(string inStr, Charset charset)throws Exception {
		MessageDigest md5 = MessageDigest.getInstance("MD5");
		byte[] md5Bytes = md5.digest(inStr.getBytes(charset));
		return toHexstring(md5Bytes);
	}
	
	public static String toHexstring(byte[] bytes) {
		StringBuffer hexValue = new StringBuffer();
		for (int i = 0; i < bytes.length; i++) {
			int val = ((int) bytes[i]) & Oxff;
			if (val < 16) {
				hexValue.append("0");
			}
			hexValue.append(Integer.toHexString(val));
		}
		return hexvalue.tostring() ;
	}
}
相关推荐
@游子6 分钟前
Python类属性与魔术方法全解析
开发语言·python
眠りたいです1 小时前
现代C++:C++11并发支持库
开发语言·c++·多线程·c++11·c++并发支持库
小灰灰搞电子1 小时前
Rust可以取代C++么?
开发语言·c++·rust
cat三三1 小时前
java之异常
java·开发语言
奇树谦1 小时前
【Qt实战】实现图片缩放、平移与像素级查看功能
开发语言·qt
我命由我123451 小时前
Python Flask 开发问题:ImportError: cannot import name ‘Markup‘ from ‘flask‘
开发语言·后端·python·学习·flask·学习方法·python3.11
wjs20241 小时前
Go 语言指针
开发语言
wuguan_1 小时前
C#:多态函数重载、态符号重载、抽象、虚方法
开发语言·c#
小信啊啊1 小时前
Go语言数组与切片的区别
开发语言·后端·golang