尋找一種方法在C#中從字符串中執行以下操作。C#SHA-2(512)Base64編碼哈希
public static String sha512Hex(byte[] data)
計算的SHA-512消化,並返回值作爲十六進制字符串。
參數: 數據 - 消化 返回: SHA-512摘要作爲一個十六進制字符串
private static string GetSHA512(string text)
{
UnicodeEncoding UE = new UnicodeEncoding();
byte[] hashValue;
byte[] message = UE.GetBytes(text);
SHA512Managed hashString = new SHA512Managed();
string encodedData = Convert.ToBase64String(message);
string hex = "";
hashValue = hashString.ComputeHash(UE.GetBytes(encodedData));
foreach (byte x in hashValue)
{
hex += String.Format("{0:x2}", x);
}
return hex;
}
沒有按照我的希望工作。該文件指出,我需要將字符串轉換爲「SHA-2(512)Base64編碼散列」 – 2011-04-14 17:21:19
僅供參考...我很感激幫助,我不會讓它過去這家公司也弄亂他們的文檔。 – 2011-04-14 17:29:17
是的,好吧,我沒有仔細閱讀標題,你應該在你的問題中提及「-2」部分。不知道在.NET中是否有SHA-2 512位實現,但可能是。 – 2011-04-14 17:39:35