我从客户端获得需要在服务器中进行身份验证的字符串消息。我需要确保我(服务器)获得了客户端发送的准确的字符串内容。我不关心客户的身份。只有这条信息。我想过使用哈希码或CRC算法。
你对此有什么建议/最佳实践吗?
非常感谢,
阿迪·巴尔达
发布于 2010-01-21 19:01:06
为了确保字符串是相同的,那么是的,哈希就可以完成这项工作。您将遇到的唯一问题是,如果服务器没有要匹配的内容,那么您所拥有的字符串将与散列后的字符串相同。
你有什么特别用的语言吗?
下面是一个用C#编写的示例,它对字符串进行哈希处理,然后将其转换为Base64:
public static string QHash(string str)
{
SHA512 SHA512HashCreator = SHA512.Create();
byte[] EncryptedData = SHA512HashCreator.ComputeHash(Encoding.UTF8.GetBytes(str));
StringBuilder qhash = new StringBuilder();
for (int i = 0; i < EncryptedData.Length; i++)
{
qhash.Append(EncryptedData[i].ToString("X2"));
}
return qhash.ToString().ToUpper();
}https://stackoverflow.com/questions/2108272
复制相似问题