关于个Base64,MD5,16进制的转换
1,待签名数据以UTF-8的格式转字节流,对字节流进行MD5算法得到的签名字节流,再转换为16进制字符串,即生成了数字签名。
byte[] targetData = md5.ComputeHash(System.Text.Encoding.UTF8.GetBytes(request + xPassword.InnerText));
StringBuilder sb = new StringBuilder("");
foreach (byte b in targetData)
{
sb.AppendFormat("{0:x2}", b);
}
string data_digest = sb.ToString();
2,待签名数据以UTF-8的格式转字节流,对字节流进行MD5算法得到的签名字节流,再经过Base64转换为字符串,即生成了数字签名
MD5 md5 = new MD5CryptoServiceProvider();
string data_digest = Convert.ToBase64String(md5.ComputeHash(Encoding.GetEncoding(_lse.Encoding).GetBytes(request + xPassword.InnerText)));
惜秦皇汉武,略输文采;唐宗宋祖,稍逊风骚。
一代天骄,成吉思汗,只识弯弓射大雕。
俱往矣,数风流人物,还看今朝