base64 encode/decode (GDAX authentication)

https://docs.gdax.com/#signing-a-message

This is the process necessary to fulfill the encoding for authentication with the exchange through the REST API. 

Here is the authentication process I have been trying to accomplish using 

Here are the things I have tried ; 

KDB 3.6 encoding 

qcrypt

cryptoq

I’ve tried tons of things, I have a feeling it has to do with the digest,

Here are the sequence of events of what has to happen:

timestamp = str(time.time()) message = timestamp + request.method + request.path_url + (request.body or '') hmac_key = base64.b64decode(self.secret_key) signature = hmac.new(hmac_key, message, hashlib.sha256) signature_b64 = signature.digest().encode('base64').rstrip('\n')

Thanks a bunch in advance.

I tested it using cryptoq library and getting the same signature_b64 as it coming out from python. Try this:

q) message : “test_message”

q) hmac_key : .cryptoq.b64_decode(secret_key)

q) signature:  .cryptoq.hmac_sha256[hmac_key;message]

q)signature_b64 : .cryptoq.b64_encode signature



On Wednesday, 23 May 2018 18:59:14 UTC+1, Jake wrote:

https://docs.gdax.com/#signing-a-message

This is the process necessary to fulfill the encoding for authentication with the exchange through the REST API. 

Here is the authentication process I have been trying to accomplish using 

Here are the things I have tried ; 

KDB 3.6 encoding 

qcrypt

cryptoq

I’ve tried tons of things, I have a feeling it has to do with the digest,

Here are the sequence of events of what has to happen:

timestamp = str(time.time()) message = timestamp + request.method + request.path_url + (request.body or ‘’) hmac_key = base64.b64decode(self.secret_key) signature = hmac.new(hmac_key, message, hashlib.sha256) signature_b64 = signature.digest().encode(‘base64’).rstrip(‘\n’)

Thanks a bunch in advance.

p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #000000; background-color: #ffffff}span.s1 {font-variant-ligatures: no-common-ligatures}