py-test/testlvl.py

36 lines
1.3 KiB
Python

import base64
import rsa
# Google Play Developer Console 生成的 Base64 编码的 RSA 公钥
BASE64_PUBLIC_KEY = "YOUR_PUBLIC_KEY"
def verify_signature(signature, signature_data, timestamp):
try:
# 解码公钥
public_key_bytes = base64.b64decode(BASE64_PUBLIC_KEY)
public_key = rsa.PublicKey.load_pkcs1_openssl_pem(public_key_bytes)
# 将签名数据和时间戳组合
message = f"{signature_data}:{timestamp}".encode('utf-8')
# 解码签名
signature_bytes = base64.b64decode(signature)
# 验证签名
rsa.verify(message, signature_bytes, public_key)
return True
except Exception as e:
print(f"验证签名失败: {e}")
return False
# 示例数据
signature = "jV1Iy1CvfAqLqw1XWocBQVgY4RsGbh1e0CZm8FOnynFSx2tLR9OCzIzJOyRo4T198lcYCgOdqiKvqvpkvYyp6gUGPY9SlHa0qRXyTM0umOwA8c+JkgfuSPD3x51J0yBwDLNmeLImCwj5je5TSe3wIP4c3Fs6PkJQgo4zFRUHMBfThunAF4niithzf1QjYn3FWYbJptFE+HUWkjVfbtRy9vGGUFGW3oqv+djyhEgpxH4R/ZRmYrzGyy7EDqfjh7TLLcofKInZNCbTs27/Vj/35xhdGx1DUaeV6oFngNNjTIKpw44LboEwN4B5ac4hx1nfXuYKEcic/gw2lxEgj1t/RQ=="
signature_data = "your_signature_data"
timestamp = "your_timestamp"
is_valid = verify_signature(signature, signature_data, timestamp)
print(f"签名验证结果: {is_valid}")