我试图从 C# (.Net) 方法中理解这些代码行来创建签名。但是,我想在 PHP 中做同样的事情,但不太了解它在 C# 中的作用。
我想知道是否有任何 .net 开发人员可以帮助我用“英语”解释下面的代码?
非常感谢
HMAC hasher;
Byte[] utf8EncodedString = Encoding.UTF8.GetBytes(String.Format("{0}:{1}:{2}", MethodName, TimeStamp, AccessID));
hasher = HMACSHA1.Create();
hasher.Key = Encoding.UTF8.GetBytes(AccessKey);
Byte[] hashResult = hasher.ComputeHash(utf8EncodedString);
return Convert.ToBase64String(hashResult);
这是我的PHP代码。它是否正确?
$signatureString = $methodName.':'.$timeStamp.':'.$accessID;
返回 hash_hmac('sha1', $signatureString, $accessKey, false);
更新:2012 年 5 月 30 日
现在才开始工作
$signature = base64_encode(hash_hmac('sha1', $signatureString, $accessKey,true));