/// <summary>
/// 你懂的
/// </summary>
/// <param name="buffer"> 你懂的</param>
/// <returns></returns>
public static string binl2hex(byte[] buffer)
{
StringBuilder builder = new StringBuilder();
for (int i = 0; i < buffer.Length; i++)
{
builder.Append(buffer[i].ToString("x2"));
}
return builder.ToString();
}
/// <summary>
/// 你懂的
/// </summary>
/// <param name="input"> 你懂的</param>
/// <returns></returns>
public static string md5(string input)
{
byte[] buffer = MD5.Create().ComputeHash(Encoding.GetEncoding("ISO-8859-1").GetBytes(input));
return binl2hex(buffer);
}
/// <summary>
/// 你懂的
/// </summary>
/// <param name="passWord">QQ密码</param>
/// <returns></returns>
public static string hexchar2bin(string passWord)
{
StringBuilder builder = new StringBuilder();
for (int i = 0; i < passWord.Length; i = i + 2)
{
builder.Append(Convert.ToChar(Convert.ToInt32(passWord.Substring(i, 2), 16)));
}
return builder.ToString();
}
/// <summary>
/// 获取最新空间加密的方法
/// </summary>
/// <param name="qq">http://check.ptlogin2.qq.com/check?uin={0}&appid=15000101&r={1} 返回的第三个参数</param>
/// <param name="password">QQ密码</param>
/// <param name="verifycode">验证码</param>
/// <returns></returns>
public static string GetPassword(string qq,string password, string verifycode)
{
String P = hexchar2bin(md5(password));
String U = md5(P + hexchar2bin(qq.Replace("\\x", ""))).ToUpper();
String V = md5(U + verifycode.ToUpper()).ToUpper();
return V;
}
C# 2012QQ空间最新加密方式
最新推荐文章于 2021-03-01 17:29:29 发布