我正在尝试使用 PHP 和 Objective-C 实现身份验证解决方案。两种语言都使用相同的密钥和相同的秘密创建自己的 HMAC-SHA1 编码字符串。
显然,他们的做法似乎有所不同。
在 Objective-C 方面,我使用 OAuthCustomer 作为签名类,它产生正确的编码字符串:
/3n/d4sKN6k3I7nBm1qau59UukU=
在 PHP 方面,我使用了带有 base64 编码的内置函数 hash_hmac('sha1',...) ,它产生了这个:
ZmY3OWZmNzc4YjBhMzdhOTM3MjNiOWMxOWI1YTlhYmI5ZjU0YmE0NQ==
然后我尝试使用另一个函数(在此处提到),这会产生 base64 编码:
NWY1ODUwOWE3NGI4NWU5ZTIxMDYzMTNmNzk3NTYxMDQ4OWE1MmUzNQ==
我完全不知道如何解决这个问题,我什至不知道为什么会这样。
多谢帮助,
保罗