|
|
发表于
2026-3-16 22:56:29
来自手机
|
显示全部楼层
来自 黑龙江
from flask import Flask, Response
from Crypto.Cipher import AES
from Crypto.Util.Padding import pad
import json
app = Flask(__name__)
# ===================== 你必须和原APP一致的配置 =====================
# AES-128 密钥(16 字符,自己改成你真实密钥)
AES_KEY = b"1234567890abcdef"
# 解密后必须返回的标准 JSON(含 entities/image)
RESPONSE_DATA = {
"code": 200,
"msg": "success",
"entities": {
"image": "https://your-domain.com/image.png",
"url": "https://your-domain.com"
}
}
# ==================================================================
def aes_128_ecb_hex(data: dict) -> str:
plain = json.dumps(data, ensure_ascii=False).encode("utf-8")
padded = pad(plain, AES.block_size)
cipher = AES.new(AES_KEY, AES.MODE_ECB)
encrypted = cipher.encrypt(padded)
return encrypted.hex() # 纯十六进制,无任何多余内容
@app.route("/api", methods=["GET", "POST"])
def api():
ciphertext = aes_128_ecb_hex(RESPONSE_DATA)
return Response(ciphertext, mimetype="text/plain")
if __name__ == "__main__":
app.run(host="0.0.0.0", port=8000, debug=False) |
|