///时间戳
string tmstamp = Convert.ToInt64((DateTime.Now - new DateTime(1970, 1, 1, 0, 0, 0, 0)).TotalSeconds).ToString();//秒
string tmstampnew =((DateTime.Now.ToUniversalTime().Ticks - 621355968000000000) / 10000000).ToString();//毫秒
private static String HEXADECIMAL = "ABCDEFGHIJKLMNOP";//16字节
/// <summary>
/// 字符串转16进制
/// </summary>
/// <param name="content"></param>
/// <returns></returns>
public static string ChargeContent(string content)
{
char[] chars = HEXADECIMAL.ToCharArray();
byte[] con = Encoding.UTF8.GetBytes(content);
// 转16进制
StringBuilder sb = new StringBuilder();
int bit;
for (int i = 0; i < con.Length; i++)
{
bit = (con[i] & 0x0f0) >> 4;
sb.Append(chars[bit]);
bit = con[i] & 0x0f;
sb.Append(chars[bit]);
}
return sb.ToString();
}
public static string Sign(string content)
{
var HexContent = ChargeContent(content);
//uft8,x2
//创建对象的方法:构造方法,静态方法(工厂)
MD5 md5 = MD5.Create();
//将字符串转换成字节数组
byte[] byteOld = Encoding.UTF8.GetBytes(HexContent);
//调用加密方法
byte[] byteNew = md5.ComputeHash(byteOld);
return Convert.ToBase64String(byteNew);
}