2

我试图从 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));
4

1 回答 1

0

在 php.net 上为您回答http://www.php.net/manual/ru/function.hash-hmac.php#105099

于 2012-03-09T14:38:21.553 回答