AWS签名版本2 - 无法从示例中重现签名

时间:2017-01-16 19:28:13

标签: amazon-web-services

我从这个例子中复制签名有问题:http://docs.aws.amazon.com/general/latest/gr/signature-version-2.html

我正在使用此页面来计算HMAC-SHA256 :( 由于限制需要删除链接) 在PL / SQL中,我得到了相同的结果。

输入

字符串: GET \ nelasticmapreduce.amazonaws.com \ N / \ nAWSAccessKeyId = AKIAIOSFODNN7EXAMPLE&安培;动作= DescribeJobFlows&安培;是SignatureMethod = HmacSHA256&安培; SignatureVersion = 2及时间戳= 2011-10-03T15%3A19 3A30%&安培;版本= 2009-03-31

秘密: wJalrXUtnFEMI / K7MDENG / bPxRfiCYEXAMPLEKEY

结果: c606d8236c5e81560c553be7868a9cf3fa296cdd2fff93e7fbc8bdbac0100239

编码为Base64后的结果:YzYwNmQ4MjM2YzVlODE1NjBjNTUzYmU3ODY4YTljZjNmYTI5NmNkZDJmZmY5M2U3ZmJjOGJkYmFjMDEwMDIzOQ ==

网址编码后的结果:YzYwNmQ4MjM2YzVlODE1NjBjNTUzYmU3ODY4YTljZjNmYTI5NmNkZDJmZmY5M2U3ZmJjOGJkYmFjMDEwMDIzOQ%3D%3D

预期结果: i91nKc4PWAt0JJIdXwz9HxZCJDdiy6cf%2FMj6vPxyYIs%3D

我错过了什么吗?或者我的方法是错的?

更新

我认为在大写页面“hexdigest”是计算AWS Signature所需的“摘要”。 Ruby中的工作示例:https://repl.it/FPwZ/0 我使用HMAC-SHA1而不是HMAC-SHA256,因为在PL / SQL中我无法计算HMAC-SHA256。

现在我在PL / SQL中遇到了一个新问题。 dbms_crypto.mac返回“hexdigest”值而不是“digest”值。我可以在PL / SQL中获得“摘要”值吗?

摘要 - >二进制字符串, hexdigest - >十六进制编码的字符串

0 个答案:

没有答案