From 33fc0b30c60871931bb55275061ff2db28015bcb Mon Sep 17 00:00:00 2001 From: Hykilpikonna Date: Wed, 10 Aug 2022 23:06:56 -0400 Subject: [PATCH] [+] api signing --- dotdotbuy_auth.py | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/dotdotbuy_auth.py b/dotdotbuy_auth.py index e773061..064866d 100644 --- a/dotdotbuy_auth.py +++ b/dotdotbuy_auth.py @@ -6,11 +6,16 @@ import time KEY = 'yaA9pBTwBdTDYz6ruLiJOI8jkijJ3Vs3' +def timestamp() -> str: + # Java timestamp now + return str(int(round(time.time() * 1000))) + + def sign_params(params: dict[str, str]): # Add useless keys params.update({ 'platform': 'MeowOS', 'appVersion': '114.514', 'apiVersion': '3.0.0', 'language': 'cn', - 'currency': 'CNY', 'appName': 'owo', 'timestamp': str(int(round(time.time() * 1000))) + 'currency': 'CNY', 'appName': 'owo', 'timestamp': timestamp() }) # Add signature @@ -19,3 +24,18 @@ def sign_params(params: dict[str, str]): params['signature'] = hashlib.md5((KEY + raw + KEY).encode('utf-8')).hexdigest().upper() params['signMethod'] = 'md5' return params + + +def sign_api(params: dict[str, str]): + # Add useless keys + params.update({ + 'user_id': params['userId'], 'access_token': params['accessToken'], + 'app_key': 'aaa', 'partner_id': '', 'service': 'dotdotbuy', + 'timestamp': timestamp() + }) + + signed_keys = ['access_token', 'app_key', 'partner_id', 'service', 'timestamp', 'user_id'] + raw = ''.join(f'{k}:{params[k]}&' for k in sorted(signed_keys)) + params['sign'] = hashlib.sha1(('456' + raw + '456').encode('utf-8')).hexdigest().lower() + return params +