【发布时间】:2012-11-01 03:00:51
【问题描述】:
我需要使用 PHP 创建一个“密钥”才能使用 Web 服务,但这对我来说意义不大。
Web 服务已显示可与 C# 应用程序一起使用,但我需要通过 PHP 访问它。
为了使用该服务,我需要一个“密钥”,然后是基于该密钥的身份验证签名。
我尝试过的一切都只是从网络服务中抛出一个错误。
对于“秘钥”,简述为:
- ASCII 编码纯文本密码
- 使用 MD5 散列编码密码
- 获取 MD5 哈希字节并执行按位运算'& 127'
- 转换为base64字符串
我不清楚第 3 点 - 其余部分非常简单;我在这里错过了什么?
然后生成认证签名的简要说明是:
- 密钥的 UTF-8 编码(秘密访问密钥是第 4 步的结果)
- 日期的 UTF-8 编码
- HMAC-SHA1(UTF-8-Encoding-Of(秘密访问密钥,RequestDate))
- Base 64 字符串
再一次,我在上面看不到任何问题 - 只是第 3 点让我感到困惑。
任何指针?
【问题讨论】:
-
和这个有关系吗...Bitwise Operations ?
-
我已经看过了,但这对我来说意义不大 - 尤其是在相当奇怪的简介中(获取 MD5 哈希字节并执行按位运算'& 127')
标签: php encryption cryptography md5 cryptographic-hash-function