2
我需要轉換成C#下面的PHP代碼:轉換PHP HMAC SHA256到C#
$hash = hash_hmac('SHA256',"ent",'key',true);
echo rtrim(strtr(base64_encode($hash), '+/', '-_'), '=');
我用下面的C#代碼:(FROM HERE)
private static string hmacSHA256(String data, String key)
{
using (HMACSHA256 hmac = new HMACSHA256(Encoding.ASCII.GetBytes(key))) {
byte[] a2 = hmac.ComputeHash(Encoding.ASCII.GetBytes(data));
string a3 = Convert.ToBase64String(a2).ToString.Replace("+", "-").Replace("/", "_").Replace("=", "");
return a3;
}
}
但結果是不相同。
PHP結果:Xt0hGF_wcArzx4urxfbHUpOp2eEXvtGTDekGtQw5JTo
C#結果:FnM4gpRRlapTZcO5iAIlEXEqU5iFT1hYcmQ1rY7ZINE
您能告訴我們您是如何調用這些方法的嗎?即您傳遞給他們的數據是什麼? –
爲什麼這麼多近距離投票呢?海事組織這是一個有效的問題,它比你在這裏找到的大多數新的用戶問題要好得多。他向我們展示了原始代碼和他嘗試的轉換,並向我們展示了預期的和收到的輸出。除了他如何調用這些方法之外,可能會丟失什麼? –