我正在尝试从 mvc 中的 hotmail 中检索联系人 asp.net。hotmail api 的响应包含电子邮件作为电子邮件哈希,我知道我们无法解密该电子邮件地址哈希。在那里,我看到了另一个包含实际联系人电子邮件地址的字段。我如何使用 sHA56 hasing 计算该电子邮件地址的哈希。
那怎么办?它假设要哈希的字符串以 UTF-8 编码,您链接的文章没有提到应该使用的编码。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Security.Cryptography;
namespace TestSHAHash
{
class Program
{
static void Main(string[] args)
{
string email = "Someone@Example.org";
string clientId = "0000000603DB0F";
string toHash = (email.Trim() + clientId.Trim()).ToLowerInvariant();
byte[] data = Encoding.UTF8.GetBytes(toHash);
byte[] result;
SHA256 shaM = new SHA256Managed();
result = shaM.ComputeHash(data);
string lowerHexaDecimal = BitConverter.ToString(result).Replace("-","").ToLowerInvariant();
Console.WriteLine(lowerHexaDecimal);
Console.ReadLine();
}
}
}