请求 可信验证 每一次请求,都有据可查
10 秒看懂证据结论,也可下载后完全离线验签。
当前可验证范围:请求记录、OAuth 渠道选择、Ed25519 签名、Merkle 检查点与计费数据。
技术用户手动核验:你需要执行的操作▼
1. 在你自己的终端发送检测请求,并保存响应头:
1 curl -D qapi-headers.txt https://aiapi.qhunliv13.online/v1/chat/completions \ 2 -H "Authorization: Bearer sk-你的API密钥" \ 3 -H "Content-Type: application/json" \ 4 -d '{"model":"gpt-5.6-sol","messages":[{"role":"user","content":"Reply with OK only."}],"max_tokens":8}'
2. 打开 qapi-headers.txt,复制完整的 X-QAPI-Request-ID。
3. 将 Request ID 粘贴到下方查询框,点击「查询」,核对模型、OAuth 渠道槽位、计费用量和记录时间。
4. 在结果中点击「下载证据包」,保存原始 JSON 文件。
5. 在已下载 Q-API 验证器的目录执行:
1 python -m aiapi.verify_evidence qapi-evidence-REQUEST_ID.json
6. 保存请求头、证据包和验证器的 PASS 输出,作为本次手动核验记录。
手动核验过程中遇到问题,可加入 QQ 群 146045691 讨论。
A.溯源方法说明
每笔请求如何溯源? New API 记录请求 ID、渠道 ID、模型及计量数据。Q-API 定期拉取并签署脱敏记录。渠道 ID 用于验证分发层选择了配置的 openai-oauth 路由。
验证依据:
- New API 配置中渠道
openai-oauth的 base_url 指向本地openai-oauth服务 openai-oauth被配置为使用 ChatGPT OAuth 凭据访问上游- New API 日志中的
channel_id、倍率与缓存明细可用于复核路由和费用 - 分发层源码:
QuantumNous/new-api(AGPL-3.0);OAuth 层:EvanZhouDev/openai-oauth(Apache-2.0)
签名证据: Q-API 使用独立 Ed25519 密钥签署脱敏记录,可验证载荷自签发后保持完整。
B.令牌流向图
C.系统状态
D.溯源统计
E.请求溯源查询
完整溯源文档▼
1 · 令牌流向总览
ChatGPT 订阅 (chatgpt.com)
│ Codex OAuth (access_token + refresh_token)
▼
openai-oauth (:10531) ← 订阅转 API 核心 (EvanZhouDev/openai-oauth, Apache-2.0)
▼
New API (:3000) ← 二次分发与精细计费
▼
下游用户/应用
2 · 下游用户接入方式
用户拿到 New API 生成的令牌后,通过 OpenAI 兼容 SDK 接入:
1 from openai import OpenAI 2 client = OpenAI( 3 base_url="https://aiapi.qhunliv13.online/v1", 4 api_key="sk-您的API密钥" 5 )
New API 将请求转发到 openai-oauth(172.17.0.1:10531),后者通过 Codex OAuth 令牌调用 ChatGPT 后端 API。
3 · 审计者验证流程
公开审计通过脱敏、签名的请求记录和发布版本清单完成。服务器 SSH、抓包工具和管理后台不向匿名访问者开放,避免 OAuth 令牌、API 密钥和用户流量泄露。
推荐验证顺序:① 从 API 响应复制 x-qapi-request-id → ② 在本页查询请求记录 → ③ 使用公开密钥离线验证签名。每项结果都会显示证据签发者与已验证范围。
4 · 验证上游来源(ChatGPT OAuth)
1 # 文件权限(仅 root 可读) 2 ls -la /root/.codex/auth.json 3 4 # 解码 JWT 验证来源 5 python3 -c " 6 import json, base64, re 7 t = open('/root/.codex/auth.json').read() 8 m = re.search(r'accessToken":"([^"]+)', t) 9 parts = m.group(1).split('.') 10 pad = 4 - len(parts[1]) % 4 11 if pad != 4: parts[1] += '=' * pad 12 d = json.loads(base64.b64decode(parts[1])) 13 print('iss:', d.get('iss','')) 14 " 15 # 预期输出:iss: https://auth.openai.com
openai-oauth 代码来源:GitHub EvanZhouDev/openai-oauth(Apache-2.0)。可用模型验证:curl -s http://localhost:10531/v1/models,预期包含 gpt-5.6-sol / terra / luna 等。
5 · 验证请求链路完整性
1 # New API 渠道配置(预期指向本地 openai-oauth) 2 sqlite3 /data/one-api/one-api.db "SELECT id, name, base_url FROM channels;" 3 4 # TLS 证书链(预期 CN=chatgpt.com, issuer=Amazon RSA 2048) 5 curl -vI https://chatgpt.com 2>&1 | grep -E "SSL|certificate|subject|issuer" 6 7 # 系统调用追踪(防数据窃取) 8 sudo strace -f -e connect -p $(pgrep -f "openai-oauth" | head -1) -t 2>&1 | head -20 9 10 # 出站流量验证(防请求劫持) 11 sudo timeout 10 tcpdump -i any -nn "tcp port 443" 2>/dev/null | grep -iE "chatgpt|openai"
6 · 验证部署代码真实性
1 # New API 镜像信息(GitHub: QuantumNous/new-api, AGPL-3.0) 2 sudo /usr/local/bin/docker-viewer inspect one-api | grep -E "Image|RepoTags|Created" 3 sudo /usr/local/bin/docker-viewer images --digests | grep one-api 4 5 # 构建历史验证(对照 GitHub Dockerfile 逐行比对) 6 sudo /usr/local/bin/docker-viewer history one-api --no-trunc 7 8 # 容器完整性(应仅显示 /app、/tmp 运行时文件) 9 sudo /usr/local/bin/docker-viewer diff one-api 10 11 # VPS 代理脚本 12 cat /root/vps_proxy_server.py
7 · 服务器供应商与虚拟化
供应商:ZOUTER LIMITED (AS205548) 机房:美国犹他州盐湖城 虚拟化:KVM(QEMU),一级虚拟机,无嵌套 systemd-detect-virt # 输出: kvm cat /sys/devices/virtual/dmi/id/sys_vendor # 输出: QEMU
8 · 验证访问控制
匿名用户仅可访问脱敏后的公开溯源 API;审计人员使用实名、临时、最小权限账号;系统管理员通过独立密钥登录,操作写入审计日志;数据库、OAuth 凭据和支付密钥仅 root 可读。
9 · 验证清单
| 验证项 | 公开证据 | 已验证范围 |
|---|---|---|
| 请求接收 | 脱敏请求记录 | Q-API 记录过该请求 ID |
| 渠道选择 | New API 路由记录 | 分发层选择了指定渠道 |
| 记录完整性 | Ed25519 签名 | 签名后内容未改变 |
| 部署版本 | 镜像摘要与发布清单 | 标识被声明的运行版本 |
10 · 各组件代码来源
| 组件 | 来源 | 许可证 |
|---|---|---|
| New API | github.com/QuantumNous/new-api | AGPL-3.0 |
| openai-oauth | github.com/EvanZhouDev/openai-oauth | Apache-2.0 |
| VPS 代理脚本 | 本服务器 /root/vps_proxy_server.py | — |
| 住宅代理 | lajiaohttp.net | 闭源商业服务 |
| ChatGPT API | 官方服务 | 闭源商业 API |