签名算法
签名算法 | |
---|---|
加密方式 | RSA |
加密方法 | SHA1 |
长度 | 2048 |
格式 | PKCS1v15 |
私钥 | private_key_pem |
构造签名
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
RsaNo | string | 是 | 合作商编号 |
Time | int | 是 | 当前时间戳 |
.... | .... | 否 | 每个接口需要的参数 |
每次接口请求之前都需要构造签名获得token,将token带入header头部正常请求接口
下面是python语言签名示例代码:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import time
import json
import base64
import requests
from cryptography.hazmat.primitives import hashes
from cryptography.hazmat.primitives.asymmetric import padding
from cryptography.hazmat.primitives.serialization import load_pem_private_key
# 常量定义
API_URL = "https://www.90daili.com/Api/ProjectList" # API地址
RSA_ID = "********" # 用户编号,根据实际情况替换
PRIVATE_KEY_PATH = "private.pem" # 私钥文件路径
def load_pem(path):
"""加载私钥文件"""
with open(path, 'rb') as f:
return f.read()
def sign_rsa(data, private_key_pem):
"""对提供的数据进行RSA签名"""
try:
# 加载私钥
private_key = load_pem_private_key(private_key_pem, password=None)
# 计算签名
signature = private_key.sign(
data.encode('utf-8'),
padding.PKCS1v15(),
hashes.SHA1()
)
# Base64编码
return base64.b64encode(signature).decode('utf-8')
except Exception as e:
print(f"签名错误: {e}")
return None
def generate_token(request_body, private_key_path):
"""生成请求体和签名Token"""
try:
private_key = load_pem(private_key_path)
token = sign_rsa(request_body, private_key)
return token
except Exception as e:
print(f"生成token错误: {e}")
return None
def main():
# 生成请求体
request_body = json.dumps({
"Time": int(time.time()),
"RsaNo": RSA_ID
}, separators=(',', ':'))
# 签名Token
token = generate_token(request_body, PRIVATE_KEY_PATH)
if not token:
print("Token生成失败")
return
# 设置headers
headers = {
"Content-Type": "application/json",
"Token": token
}
# 发送请求
try:
response = requests.post(API_URL, data=request_body, headers=headers)
print(response.text)
except Exception as e:
print(f"请求发送错误: {e}")
if __name__ == "__main__":
main()
如有疑问,请联系九零IP在线客服
九零代理IP —— 全球高速代理,助力您的商业腾飞!
🌍 覆盖全球,高速稳定
九零代理IP拥有海量优质IP资源,覆盖国内300+城市地区,高速稳定,匿名性强,满足您的游戏搬砖、自媒体、数据采集、SEO优化、广告投放等多场景需求!
🔒 安全可靠,专业保障
采用高匿名加密技术,严格保护用户隐私,确保您的网络操作安全无忧。7×24小时专业技术支持,随时为您解决后顾之忧!
💼 商业合作,互利共赢
诚邀企业、开发者、跨境电商、营销团队等合作伙伴,共同开拓市场!我们提供灵活的合作方案,定制化服务,助力您的业务高效增长!
📩 联系我们
九零IP官网:www.90daili.com
微信:19871648261、
QQ:639317776
选择九零代理IP,携手共赢未来! 🚀