Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
原始javascript中的sha256加密_Javascript_Html_Encryption_Sha256_Coinbase Api - Fatal编程技术网

原始javascript中的sha256加密

原始javascript中的sha256加密,javascript,html,encryption,sha256,coinbase-api,Javascript,Html,Encryption,Sha256,Coinbase Api,我正在尝试使用一个新的脚本将字符串加密到原始javascript中的HMAC SHA256,但它似乎不起作用。 我试着这么做是为了给警察打电话。您需要在GET请求中提供一些值,包括签名,这就是我遇到的问题。签名需要进行HMAC SHA256加密。签名应包括以下内容: CB-ACCESS-SIGN头是通过使用prehash字符串时间戳+方法+请求路径+正文(其中+表示字符串连接)上的密钥创建sha256 HMAC生成的。时间戳值与CB-ACCESS-timestamp标题相同 正文是请求正文字符串

我正在尝试使用一个新的脚本将字符串加密到原始javascript中的HMAC SHA256,但它似乎不起作用。 我试着这么做是为了给警察打电话。您需要在GET请求中提供一些值,包括签名,这就是我遇到的问题。签名需要进行HMAC SHA256加密。签名应包括以下内容:

CB-ACCESS-SIGN
头是通过使用prehash字符串
时间戳+方法+请求路径+正文
(其中+表示字符串连接)上的密钥创建sha256 HMAC生成的。时间戳值与
CB-ACCESS-timestamp
标题相同

正文
是请求正文字符串,如果没有请求正文(通常用于GET请求),则省略该字符串

方法
应为大写

我想他们说的是,我可以忽略身体,因为这是一个GET请求

我的代码如下:

HTML库调用:

<script src="https://cdnjs.cloudflare.com/ajax/libs/js-sha256/0.9.0/sha256.js"></script>
coinbase API的响应为:

{"errors":[{"id":"authentication_error","message":"invalid signature"}]}

这意味着除了签名之外,所有的东西都是正确的。

我自己也能弄清楚(云海也发现了其中的一个问题)

问题是:

  • HMAC加密需要我的API_机密

  • 我需要使用URL参数,而不是整个URL


参考,他们在消息中使用的url路径似乎是相对的,但您提供了一个绝对路径。不确定这是否是问题所在,但您可以检查您的代码以比较您的哈希函数可以创建与他们使用的任何库相同的输出。是的,您完全正确。几分钟前我自己也遇到了这个问题,但这确实是问题之一。谢谢。HMAC不是加密。它是基于散列的消息身份验证代码@是的,我对加密不太了解,所以我不知道。不过,谢谢你提供的信息!
{"errors":[{"id":"authentication_error","message":"invalid signature"}]}