[개발] 암호화 오류

in #krsuccess10 days ago (edited)

거래소 rest api 이용하려고 하는데 signature 오류가 계속 뜨는군요.
파이썬 사용하는 암호화 모듈이 문제인가해서 nodejs로 확인해봐도 같은 오류가 뜹니다.

doc를 잘못이해한건지 도저히 답을 모르겠군요.
혹시 코드 보시고 관련 경험이 있으시면 의견 주셨으면 합니다. 미리 감사드립니다.

요지는

query를 보내기 전에 key로 암호화를 하는데요.
암호화할 데이타는 아래와 같습니다.

# signature 만드는 부분
def hashing(query_string) :    
    return hmac.new(
        key=SECRET.encode("utf-8"), msg=query_string.encode("utf-8"), digestmod=hashlib.sha256
    ).hexdigest()


body = {
        'timestamp':str(get_timestamp())
}

query_string = urlencode(body)  # str을 만듬 timestamp=123456 이런 
signature = hashing(query_string )  #주어진 string으로 signature만듬

query_string ['signature'[] = signature
query_string = urlencode(query_string )  # signature가 포함된 str을 만듬 timestamp=123456&signature=3xdjfslks..jfd  

#원하는  형태로 만들어서 request
response = requests.get(path+'?'+query_string, headers=headers)

이렇게 해서 질의를 해보면

해싱에 들어오는 문자열은 아래와 같고

image.png

이를 바탕으로 query를 보내는 전체 string은 아래와 같습니다.

image.png

하지만 결과는
image.png

sign이 틀리다고 나옵니다.

python 패키지 버전 문제인가 해서 javascript로 만들어서 nodejs로 돌려봐도 signature 값이 같이 나옵니다. query결과는 당연히 같은 오류가 나오고요?

아래 auth문서에 보면 paramer만 string으로 만들어서 HMAC SHA256 하라고 나옵니다.

image.png
python, javascirpt 코드 모두 같은 sig값이 나오는데, 왜 오류가 날까요?

제가 뭔가가 놓치고 있을 것 같은데, 뭐가 문제일까요?

거래소에 질의를 해 놓았는데 아직 답신이 없군요. ㅠㅠ


개발 하고자하는 api문서의 auth
https://hashkeyglobal-apidoc.readme.io/reference/authentication-1

Coin Marketplace

STEEM 0.29
TRX 0.12
JST 0.033
BTC 64107.66
ETH 3148.40
USDT 1.00
SBD 3.84