我正在嘗試將webrequest發佈到另一個站點。該另一個網站在ASP中。 我通過以下功能發送sha256 ecnrypted格式的其中一個查詢值。SHA256 asp to asp.net問題
另一個網站正在檢查ASP格式的值。這些值不匹配。
這是我的.net 4.0函數用於SHA256轉換。我正在將值爲「[email protected]D」的輸入傳遞給以下功能。 它返回「AFF83D621AE6FDCEA7B191A64F470EB288BF7B996EA00A9D6FBE444A48AD9508」
但ASP網站預計值「e3ecd14c92a6ce3ed864e7e8feb9167c3d03142fccdd3bf6a2cd62385c122977」此相同的字符串,這就是爲什麼我的調用失敗
public string EncryptSHA256Managed(string input)
{
UnicodeEncoding uEncode = new UnicodeEncoding() ;
byte[] bytClearString = uEncode.GetBytes(input);
SHA256Managed sha = new SHA256Managed() ;
string strHex = string.Empty;
byte[] hash = sha.ComputeHash(bytClearString) ;
string hex = BitConverter.ToString(hash);
hex = hex.Replace("-", "");
return hex;
}
沒關係,我找到了解決方案!我更新了代碼中的以下行:byte [] bytClearString = Encoding.UTF8.GetBytes(input); – user228777