ChatGPT 广告归因链全面曝光:4 层 Fernet 加密+上下文精准投放,AI 广告技术架构深度解析
安全研究员在 HN 上公开了 ChatGPT 广告系统完整技术架构:SSE 流实时注入广告、4 层 Fernet 加密 Token 构成归因链、OAIQ SDK 追踪用户点击行为。本文从 AI 工具构建者角度,解析这套系统对 AI 自动化变现的启示。
2026年4月29日 · 阅读约 5 分钟
核心结论
2026 年 4 月 28 日,安全研究员 Buchodi 在 HN 上公开了 ChatGPT 广告系统的完整技术实现细节。这不仅是 OpenAI 商业化的关键一步,更是 AI 平台如何构建原生广告归因体系的第一份公开技术参考。
关键发现:
- 事件时间:2026-04-28 公开披露(实际系统已运行一段时间)
- 影响对象:所有使用 ChatGPT 的 AI 工具构建者、内容创作者、Affiliate 从业者
- 核心变化:ChatGPT 在对话 SSE 流中注入广告,通过 4 层 Fernet 加密 Token 实现完整的点击归因闭环
关键要点
- 广告通过 SSE 协议的
single_advertiser_ad_unit事件实时注入对话流 - 每条广告携带 4 个 Fernet 加密 Token,构成完整的 attribution chain
- 广告选择基于对话上下文(contextual targeting),同一账户不同话题获不同广告
- 追踪 SDK 名为 OAIQ(v0.1.3),通过首方 Cookie
__oppref实现跨页面的 30 天归因
背景:ChatGPT 广告系统的技术解剖
Buchodi 通过一个"受同意的移动流量研究集群"抓取了 ChatGPT 广告系统的两端——用户侧(ChatGPT)和商户侧(SDK)。这是业界第一次获得如此完整的端到端视角。
这套系统有两半:ChatGPT 端在 SSE 流中注入结构化广告对象,商户端通过 OAIQ SDK 在浏览器中报告商品浏览行为。两者通过 Fernet 加密的点击 Token 连接起来。
ChatGPT 端的广告注入机制
当用户向 ChatGPT 发送消息时,后端在 chatgpt.com/backend-api/f/conversation 的 SSE 响应流中除了模型输出外,还会注入广告事件:
event: delta
data: {
"type": "single_advertiser_ad_unit",
"ads_request_id": "069e89b3-c038-7764-8000-6e5a193e5f69",
"ads_spam_integrity_payload": "gAAAAABp6Js_<...redacted...>",
"advertiser_brand": {
"name": "Grubhub",
"url": "www.grubhub.com",
"favicon_url": "https://bzrcdn.openai.com/cabfae7ead26b03d.png",
"id": "adacct_6984ed0ba55481a29894bb192f7773b4"
},
"carousel_cards": [{
"title": "Get Chinese Food Delivered",
"body": "Satisfy Your Cravings with Grubhub Delivery.",
"image_url": "https://bzrcdn.openai.com/...",
"target": { "type": "url", "value": "https://...", "open_externally": false }
}]
}关键设计细节:
single_advertiser_ad_unit是类型化 Schema,命名暗示存在兄弟类型(multi-advertiser 等)advertiser_brand.id格式为adacct_<32-hex>,是每个商户的稳定账号标识- 广告素材托管在 OpenAI 的 CDN(bzrcdn.openai.com),而非商户自己
target.open_externally: false表示在 ChatGPT 内置 WebView 打开,OpenAI 可观测点击后导航
关键影响:4 层 Fernet 加密归因链
这是整个系统最精巧的部分。每条广告携带 4 个不同的 Fernet 加密数据块,构成完整的归因链路:
| Token | 位置 | 作用 | 生命周期 |
|---|---|---|---|
ads_spam_integrity_payload | SSE 数据体内 | 服务端防刷校验,防止伪造点击 | 仅服务端 |
oppref | 点击 URL + OAIQ Cookie | 正向归因 Token,随每次像素事件传递 | Cookie TTL 720 小时(30 天) |
olref | 点击 URL | 曝光侧日志记录,SDK 未存储 | 仅跳转时 |
ad_data_token | SSE payload 中 Base64 包裹的 JSON | 内含另一个 Fernet Token,点击时服务端对账 | SSE 内 |
Fernet 加密的前 9 字节是公开的(版本字节 0x80 + 8 字节大端 Unix 时间戳),因此无需 OpenAI 密钥即可恢复 Token 的生成时间:
import base64, struct, datetime
b = base64.urlsafe_b64decode("gAAAAABp7fdA" + "==")
print(datetime.datetime.utcfromtimestamp(struct.unpack(">Q", b[1:9])[0]))
# → 2026-04-26 11:30:08 UTCBuchodi 实测发现:Home Depot 广告的点击 URL 的 Token 在 11:30:08 生成,浏览器在 11:31:43 获取商户页面。点击延迟仅 95 秒。
上下文定向的实际效果
同一账户在不同对话中收到完全不同的广告,证明 ChatGPT 的广告选择基于对话上下文:
| 对话主题 | 投放的广告 |
|---|---|
| 北京旅行(长城、故宫) | Grubhub — "Get Chinese Food Delivered" |
| 北京旅游预订 | GetYourGuide — 长城游, ad_id=beijing003 |
| 北京航班 | Axel — utm_term=vflight_beijing_03 |
| NBA 季后赛 | Gametime — utm_campaign=nba&utm_content=playoffs |
| 春季时尚趋势 | Aritzia — utm_campaign=chatgptpilot_trav3 |
| 效率工具/幻灯片 | Canva — utm_campaign=…link-clicks_products |
适配建议:AI 工具构建者的启示
对 AI 内容创业者的机会
- 理解归因模型:ChatGPT 的 30 天 Cookie 归因窗口比大多数联盟平台更长,意味着从 ChatGPT 出发的推荐流量有更宽裕的转化窗口
- SEO+GEO 策略需要适应性调整:当用户通过 ChatGPT 搜索"推荐工具"时,系统可能直接注入广告而非展示你的内链内容——这意味着 GEO 优化不仅要考虑 AI 回答引擎的引用,还要考虑 AI 广告系统的竞价逻辑
- 监控 bzrcdn.openai.com 和 bzr.openai.com:这两个域名是投放广告的 CDN 和事件追踪域名,添加到监控或拦截列表可以理解广告系统的行为
对 AI Agent 开发者的技术提醒
- SSE 流中的非模型事件:如果你的 Agent 通过 SSE 与 LLM 后端通信,需要处理非文本事件(ad units, tool calls 等)。不要假设 SSE 中所有 delta 都是模型输出
- OAIQ SDK 模式可复制:通过首方 Cookie + 服务端计算点击延迟 + 端到端 Ferent 加密校验——这套归因架构值得 AI Agent 平台借鉴
任务清单
- 检查自己的 AI 工具中是否正确处理了 SSE 流中的非模型事件
- 评估 ChatGPT 广告对 Affiliate 流量来源的潜在影响
- 关注 OpenAI 是否推出面向开发者的广告 SDK
参考来源
工具词条
正文中自然写出的工具品牌名包括:OpenAI、ChatGPT、Canva。平台侧会自动匹配已维护工具的 tool_mentions。
相关阅读
- 想系统学习 AI 自动化工作流?看教程:如何用 n8n + ChatGPT 搭建 AI 内容自动化分发系统
- 真实案例:独立开发者如何将 AI 能力变现:Claude Code + n8n 搭建自动化报表 SaaS,月入 $3,800
- 进阶参考:18 岁零基础用 AI Agent 造出月入 $5,000 的 SaaS