AI 摘要 · 由英文经 AI 翻译
Uncovering and Understanding Hidden Dependencies in the LLM API Reseller Ecosystem via Prefix-Cache Side Channels
Zimo Ji, Xin Wei, Congying Xu, Wenyuan Jiang, Xin Yang, Zongjie Li, Yudong Gao, Shuai Wang
TL;DR
多层转售使 LLM API 转售商之间的依赖关系不透明,难以看清共享上游带来的风险。CacheTracer 将前缀缓存复用作为仅依赖 API 的侧信道,测量共享缓存可达关系;结果显示,真实端点间共享普遍存在,且结构深且集中。
问题
尽管多层转售伴随着机密性和完整性风险,现有研究仍难以揭示 LLM API 转售商之间由此产生的隐藏依赖关系。
出处:§I · pp. 1–2方法
CacheTracer 利用前缀缓存复用这一仅依赖 API 的侧信道,测量转售商端点之间的共享缓存可达关系及包含关系。
出处:§I · p. 2结果
37.1% 的已测端点对呈现共享缓存可达关系;包含层级跨越七层,且至少有 31 个其他节点包含某一缓存可达关系。
出处:§I · p. 2启示与局限
看似相互独立的转售商可能依赖共同的隐蔽上游,从而造成影响范围可能很大的生态系统级机密性和完整性风险。
出处:§VII · p. 13CacheTracer 得到的是一种低估:未报告的缓存包含关系仍属未知,不能据此认为它们不存在。
出处:§V · p. 12
Abstract
from arXiv · showhide
LLM API resellers have become an important access layer to modern LLM services. However, multi-level resale creates an opaque supply chain: a user's request may traverse undisclosed upstream resellers, each of which can inspect or modify prompts and responses, inducing ecosystem-level confidentiality and integrity risks. Existing studies audit individual resellers, but provide little visibility into hidden dependencies across resellers. We present CacheTracer, the first API-only measurement of such hidden dependencies. Our key insight is to exploit prefix-cache reuse as a side channel to measure dependency via cache-reach relations. CacheTracer operationalizes this insight with two primitives: Flood populates fresh cache state through one endpoint, and Prove probes whether another can reuse it while excluding probe-created hits. We then conduct a real-world measurement study with CacheTracer on 39 reseller endpoints, sending 1.1 million API requests across 636 endpoint pairs. Our measurements reveal a deep, concentrated cache-reach structure: 37.1% of measured pairs exhibit shared cache reach, the containment order spans seven layers, and one cache reach is contained within at least 31 of other nodes. We further find that the recovered structure is model-specific. We also evaluate the validity of CacheTracer through both real-world consistency checks and controlled experiments. The results show its high reliability and accuracy. These findings reveal substantial hidden dependencies among seemingly independent API resellers. Such deep and concentrated dependencies can create a large potential blast radius, where a confidentiality or integrity failure along a common upstream path may affect users across multiple downstream resellers.
I. 引言 · II. 背景与关键观察 · A. 服务提供方侧的缓存隔离
本文提出 CacheTracer,这是一种仅通过 API 进行测量的方法,利用前缀缓存复用揭示 LLM API 转售商之间隐藏的缓存依赖。测量结果显示,缓存可达关系结构层次深、分布集中且具有模型特异性;在遥测不确定时,该方法仍保持单侧低估。
II. 背景与关键观察
- 前缀缓存复用使共享缓存可达关系能够从外部观测到,而多层转售可能使由此产生的缓存可达信号具有方向性。先通过一个端点缓存新前缀,随后由另一个端点复用该前缀,可作为两者均可访问同一缓存域的证据。出处:§I · p. 2, Figure 1 · p. 2
I. 引言
- CacheTracer 使用 FLOOD 通过一个端点填充新的缓存状态,再用 PROVE 检验另一个端点能否稳定复用该状态。FLOOD 会反复发送新前缀,直到其很可能覆盖第一个端点几乎全部的路由流量;随后 PROVE 探测第二个端点。出处:§I · p. 2
- 研究测量了 39 个转售商端点和 636 对端点,共发送 1.1 million API requests;结果显示,共享缓存可达关系普遍存在,且结构层次深、分布集中。合并等价的缓存可达关系后,研究报告称包含关系序中有 34 个节点。出处:§I · p. 2
- 缓存可达包含关系跨越七层,其中一个节点的缓存可达范围包含于至少 31 个其他节点的范围之中。这一模式与多层级供给和较长的信任路径相符,但并未测量商业链路的跳数。出处:§I · p. 2
- 22 次决定性复测中,只有两次在第二个模型上仍观察到缓存可达包含关系,表明恢复出的结构具有模型特异性。第二模型复测直接检验观察到的包含关系是否会跨模型持续存在。出处:§I · p. 2
A. 服务提供方侧的缓存隔离
- 服务提供方侧的缓存隔离通过粗粒度租户标识符划分缓存域,并以分块方式存储缓存,从而阻止同一物理实例上的不同租户复用缓存。报告的 cached_tokens 字段揭示了复用的前缀长度;生产系统会在共享 token 前缀的请求之间复用 KV 状态,,,, 。出处:A. Provider-side cache isolation · p. 3
- 只有当报告的缓存 token 复用量覆盖已植入的前缀时,才判定为 HIT;传输错误和超时不纳入缓存状态分类。缓存遥测完整性假设报告的计数确实反映了对先前请求写入状态的复用。出处:A. Provider-side cache isolation · p. 3
- 若遥测错误漏报命中,可能会遗漏真实关系,但无法制造虚假关系,因此 CacheTracer 仍保持低估特性。客户看到的是 API 字段而非缓存本身,因此要将命中解释为共享基础设施的证据,就必须依赖这一假设。出处:§I · p. 2, A. Provider-side cache isolation · p. 3
B. 转售商侧负载均衡 · C. 转售商路由如何暴露缓存信道 · D. 威胁与测量模型
本文将转售商端点建模为经过负载均衡、转换凭证的网关,其路由会暴露具有方向性的缓存可达关系。在路由稳定性假设下,CacheTracer 仅利用普通付费客户可获得的观测信息,对这些关系进行概率测量。
B. 转售商侧负载均衡
- 转售商使用由其控制的凭证,将客户请求重新发送至上游,并在每一层转售时替换客户身份。兼容 OpenAI 的网关会将面向客户的令牌与面向服务提供方的通道分开;若上游本身也是转售商,这种替换便会重复发生。出处:B. Reseller-side load balancing · p. 3
- 多个上游通道、加权选择、重试、负载均衡和回退机制,可能使重复请求经过不同的服务提供方侧缓存域。因此,端点级观测汇总了经由不同上游凭证和缓存命名空间的流量。出处:B. Reseller-side load balancing · p. 3
- CacheTracer 假设,在测量窗口内成功的请求是来自固定路由分布的独立样本,且缓存前缀的行为不会系统性地改变该分布。时间稳定性有助于根据命中与未命中序列估算路由流量占比;前缀不变性则允许使用不同探测前缀来刻画同一端点。出处:B. Reseller-side load balancing · p. 3
C. 转售商路由如何暴露缓存信道
- 如果下游端点将流量转发至上游端点,那么上游可达的每个缓存域也都可由下游访问,从而形成单调的缓存域包含关系。形式化地说,若 vd 将部分流量经由 vu 转发,则 P(vu) ⊆ P(vd)。出处:C. How reseller routing exposes the… · p. 3
- 对上游端点执行 Flood,可使之后发往该端点的所有探测都命中;而对下游端点执行 Flood,只有当下游路由流量中选择了已覆盖子集的那部分请求到达上游时,才会在那里命中。这种不对称性揭示了具有方向性的缓存可达包含关系,且无需跨越服务提供方侧的缓存隔离边界。出处:C. How reseller routing exposes the… · p. 4
- 缓存可达包含关系按覆盖概率定义:当 δ = 0.05 时,若 vy 的路由流量中至少 95% 能命中经由 vx 写入的状态,则 vy ⪯ vx。该关系考察的是路由流量占比,而非缓存域在字面意义上的包含关系。出处:C. How reseller routing exposes the… · p. 4
- δ = 0.05 的分辨率在测量精度与请求量、持续时间、缓存域重新分配,以及可能造成暂时未命中的缓存状态过期之间取得平衡。阈值越严格,所需的命中序列就越长,也可能增加运行层面和时间上的噪声。出处:C. How reseller routing exposes the… · p. 4
D. 威胁与测量模型
- 测量者是使用低权限端点凭证的普通付费客户;他们观测响应、元数据、错误和时延,但不控制基础设施,也不访问其他租户的数据。提示中包含合成填充内容和新鲜随机数,以防泄露其他客户的数据。出处:D. Threat and measurement model · p. 4
III. CACHETRACER … C. FLOOD:覆盖单个端点的缓存可达范围
CacheTracer 将有方向性的缓存可达信号转化为实用的纯 API 框架,用于恢复成对关系并构建全局结构。PROFILE 和 FLOOD 两个基本操作优先测试信息量较大的端点对,并在缓存域不可观测、缓存状态不断变化的情况下,覆盖端点的隐藏缓存可达范围。
III. CACHETRACER
- CACHETRACER 通过五个逐步恢复成对缓存可达关系的基本操作,应对无法枚举的缓存域以及探测引起的缓存状态变化。该框架以候选转售商端点为输入,将成对缓存观测转化为全局缓存可达结构。出处:§III · p. 4, A. Method overview · p. 4
A. 方法概述
- PROFILE 利用轻量级延迟画像,优先测试可能先揭示短距离缓存可达关系的端点对。它将首个 token 的生成时间作为粗略的路径长度代理指标,但不判断端点之间是否存在关系。出处:A. Method overview · p. 4, B. PROFILE: prioritizing potentially… · pp. 4–5
B. PROFILE:优先测试可能相邻的端点对
- 如果已发现的包含关系可以推导出冗余的远距离测试结果,PROFILE 就能剪除这些测试。如果已知 A ≺B 且 B ≺C,就可以跳过对 (A, C) 的测试;PROFILE 改变测试顺序,而不判断端点是否相关。出处:B. PROFILE: prioritizing potentially… · pp. 4–5
- PROFILE 按首个 token 的生成时间对端点排序,并将排名相近的端点视为更可能存在近距离关系的候选对象。额外的转发和网关处理可能增加响应延迟,因此 TTFT 仅用作路径长度的粗略代理指标。出处:B. PROFILE: prioritizing potentially… · p. 5
- PROFILE 按排名距离从小到大排列候选端点对,先测试排名相邻的端点,再测试间隔更大的端点对。例如,对 (A, B, C, D),测试顺序先从 (A, B)、(B, C) 和 (C, D) 开始,再逐步测试间隔更大的端点对。出处:B. PROFILE: prioritizing potentially… · p. 5
C. FLOOD:覆盖单个端点的缓存可达范围
- FLOOD 通过一个端点反复发送相同提示,直到连续缓存命中表明其路由流量中仍未覆盖的部分不足 5%。当 δ = 0.05 时,连续 59 次命中即可满足这一覆盖条件;这意味着,没有任何单个未覆盖缓存域占路由流量的 5% 或以上。出处:C. FLOOD: covering one endpoint’s… · p. 5
- FLOOD 在连续命中 N_flood 次后停止;若总尝试次数达到 1000 次,或连续出错八次,则停止并判定失败。这一停止规则将覆盖目标转化为可执行条件,无需列出该端点背后的缓存域。出处:C. FLOOD: covering one endpoint’s… · p. 5
- PROVE 运行期间,FLOOD 通过两个低速率后台工作线程维持已植入的缓存状态,降低缓存过期的可能性。经过校准的并发设置能够维持缓存热度,同时避免因请求过多而频繁导致测量失败。出处:C. FLOOD: covering one endpoint’s… · p. 5
D. PROVE:方向性缓存可达性测试
PROVE 通过探测端点 B 能否复用经端点 A 写入的缓存状态,测量方向性缓存覆盖。前缀阶梯可避免探测自身产生缓存命中;统计阈值则用于判定包含、部分共享、未观察到共享或结果不确定。
目标与挑战
- PROVE 将方向性覆盖率 c(A, B) 估计为:通过 B 发出的成功请求复用经 A 写入的缓存状态的概率。它在方向性 FLOOD–PROVE 流程中执行一次缓存查询。出处:D. PROVE: directional cache-reach test · p. 5
前缀阶梯
- 前缀阶梯通过在未命中后切换到此前未查询过的更长前缀,并要求缓存 token 数超过先前探测产生的复用量,来避免自命中。前缀步长大于服务提供方的缓存块长度,因此一次未命中所产生的状态无法满足下一次命中阈值。出处:D. PROVE: directional cache-reach test · pp. 5–6
假设与边界
- 该方法假设更改前缀不会系统性地改变探测路由,并针对每个模型分别校准前缀长度、步长和缓存块长度。超时会消耗前缀,但不计为成功探测、命中或未命中;若干净前缀耗尽,则返回 INCONCLUSIVE。出处:D. PROVE: directional cache-reach test · pp. 6–7
流程与结果
- PROVE 根据观察到的命中、未命中、干净前缀耗尽情况及传输失败,返回 CONTAINED、PARTIAL、NOOBSERVED 或 INCONCLUSIVE。CONTAINED 表示支持缓存覆盖;PARTIAL 表示确认存在共享可达性,但不支持包含关系;NOOBSERVED 表示终止前未观察到命中;INCONCLUSIVE 则涵盖其他执行结果。出处:D. PROVE: directional cache-reach test · p. 6
E. CLASSIFY:双向配对分类
CLASSIFY 在两个方向上分别进行使用全新提示词的 Flood–Probe 测试,并根据缓存可达关系对端点对进行分类。包含关系表明供应链可能存在共享连接,但不能证明存在直接的供应商关系。
双向分类
- CLASSIFY 在分配配对类别前,分别在两个方向上进行使用全新提示词的 Flood–Probe 测试。任一方向的结果为 INCONCLUSIVE,都会使该端点对暂时无法判定。出处:E. CLASSIFY: bidirectional pair… · p. 7
- 两个 CONTAINED 结果得到缓存可达等价类;若仅一个方向为 CONTAINED,且反向测试不支持包含,则得到严格包含关系。出处:E. CLASSIFY: bidirectional pair… · p. 7
- 若结果为 PARTIAL 且不存在包含关系,则记录为非方向性共享;两个 NOOBSERVED 结果则表示在所选分辨率下未观察到共享。出处:E. CLASSIFY: bidirectional pair… · p. 7
包含关系与供应关系
- 缓存可达包含关系表明端点可能共享供应链,但不能证明存在直接的供应商关系。在单调性假设下,供应关系意味着包含关系;但仅凭缓存观测无法反推,因为共同的上游提供商可能导致包含关系,而两个端点之间并不存在相互供给。出处:E. CLASSIFY: bidirectional pair… · p. 8
F. BUILDGRAPH:剪枝与全局组装
BUILDGRAPH 将成对 cache-reach 测量组装为全局结构,同时剪除可由已恢复的包含路径推导出的关系。它也表示非方向性的共享关系,这类关系可能需要潜在的 cache-reach 见证节点。
全局组装
- BUILDGRAPH 通过处理经 PROFILE 优先级排序的候选对,组装全局 cache-reach 结构,并记录包含、克隆、部分共享或未决结果。它首先按 TTFT 对端点排序,再排列候选对、跳过可推导的关系、调用 CLASSIFY,并更新相应的图或端点组。出处:F. BUILDGRAPH: pruning and global… · p. 8
推导关系剪枝
- 包含路径剪枝会跳过关系已可推导的直接测量,从而降低请求成本和缓存扰动,且不会引入新的判定结果。例如,若已恢复 A ≺B 和 B ≺C,就可以跳过 A ≺C;因此,排序会优先处理可能距离较短的关系。出处:F. BUILDGRAPH: pruning and global… · pp. 8–9
潜在见证节点
- PARTIAL 结果表示不存在包含关系的共享 cache reach,可能需要借助 SHADOWINSERT 表示位于已测端点之外的潜在见证节点。这类共享也可以由已存在于恢复出的包含结构中的共同上游端点来解释。出处:F. BUILDGRAPH: pruning and global… · p. 9
IV. 测量与评估
本节评估真实世界 LLM API 转售商之间隐藏的缓存包含依赖,验证 CacheTracer 的假设,并依据已知真值测量其准确性。
RQ1 真实世界测量
- RQ1 描述真实世界转售生态中的缓存包含拓扑,包括其在不同模型间的差异及安全影响。主要评估目标是刻画真实世界转售商之间的隐藏依赖。出处:§IV · p. 9
RQ2 假设验证
- RQ2 考察 CacheTracer 所依据的缓存观测假设是否与测量系统的实际情况一致。该问题用于评估底层测量方法的有效性。出处:§IV · p. 9
RQ3 受控评估
- RQ3 评估在已知真值条件下,CacheTracer 恢复缓存共享与包含关系的准确性,以及恢复出的结构揭示了哪些潜在供应关系。评估在受控环境中测量 CacheTracer 的准确性。出处:§IV · p. 9
A. 实验设置 … 1) 测量设置:
CacheTracer 的真实场景研究使用常规 OpenAI 兼容请求和经过校准的前缀阶梯测量方案,评估了 39 个公开可访问的转售商端点。研究使用 gpt-5-nano-2025-08-07,在 7.2 小时内测量了 741 个候选端点对中的 636 个。
1) 提示词构造:
- 提示词由固定文本“Replay exactly OK”和一个 nonce 组成;报告的输入 token 数用于将提示词长度校准到测量目标。出处:1) Prompt construction · p. 9
2) 转售商筛选:
- 从三个来源筛选出 39 个公开可访问的转售商端点,随后通过注册、付款和 cached_tokens 检查进行人工验证。候选对象来自 FOFA 扫描、社区中继目录和 TokenAPI Scan;验证前移除了重复端点。出处:2) Reseller selection · p. 9
- 所有测量均通过一台工作站发出的常规 OpenAI 兼容请求完成,无需服务提供商配合、转售商特权访问权限或遥测数据。出处:2) Reseller selection · p. 9
1) 测量设置:
- CacheTracer 使用 gpt-5-nano-2025-08-07 测量筛选出的 39 家转售商;选择该模型是为了降低模型隔离风险、成本和延迟,并减少路由变更。低成本模型可缓解未披露的模型替换风险,并缩短测量周期。出处:1) Measurement setup · p. 9
- 每次测量均使用全新的 16,384-token 提示词正文和前缀阶梯:从 1,536 tokens 起步,步长为 256 tokens。这些参数高于测得的 1,024-token 缓存准入阈值和 64-token 缓存分块长度;针对其他模型时会重新校准。出处:1) Measurement setup · p. 9
- 在 7.2 小时内测量了 741 个无序候选端点对中的 636 个,另有 105 对在测量过程中被剪除。出处:1) Measurement setup · p. 9
2) 共享缓存可达有多普遍?:· 3) 缓存包含关系的深度与广度:· 4) 安全影响:
CacheTracer发现,37.1%的已测转售端点对存在共享缓存可达现象,形成深达七层且高度集中的包含结构。这种拓扑意味着安全风险可能相互关联:上游一旦遭到攻陷,就可能读取或篡改多个转售商下游的敏感流量。
2) 共享缓存可达有多普遍:
- 37.1%的已测转售端点对存在共享缓存可达现象,揭示了受测转售生态中的隐藏依赖关系。636个端点对中有236对至少出现一次真实的跨端点命中,并得到明确的覆盖结果;在测试假设成立的前提下,每次此类命中都直接证明端点可访问同一缓存域。出处:2) How common is shared cache reach? · pp. 9–10
3) 缓存包含关系的深度与广度:
- 恢复出的缓存包含关系序覆盖七层,最长链包含六个包含关系,传递闭包中有115个有序节点对。合并六个CLONE判定后,九个端点归并为四个等价类,最终剩下34个节点和58个不同的包含关系。出处:3) Depth and breadth of cache… · p. 10, Figure 6 · p. 10
- 涉及E2的全部26项定向测试中,只要对应端点经过Flood,均满足包含关系;反向测试在每对端点的59次探测中均未命中。这表明可通过31个端点访问E2的缓存域,但对大多数端点而言,该缓存域承载的流量占比很小,符合其为狭窄供应商或共享租户的情形。出处:3) Depth and breadth of cache… · p. 10, Table II · p. 10
- 至少有其他33个经克隆收缩的节点中的31个包含同一缓存域,由此得出缓存可达集中度的保守下界。该缓存域被24个节点直接包含、被31个节点间接包含;规模次大的向上闭包包含18个节点。出处:3) Depth and breadth of cache… · p. 10
4) 安全影响:
- 共享缓存路径上的运营方可能收到提示词并修改生成结果(包括工具调用),从而给名义上相互独立的端点带来机密性与完整性风险。使用工具的智能体可能通过这些请求泄露检索到的记录、持久记忆、智能体间消息、凭据和工具参数。出处:4) Security implications · p. 10
- 遭到攻陷的共享上游可能暴露敏感上下文,或破坏多个下游端点经工具执行的操作,使风险从单个公开端点扩展为跨转售商问题。恢复出的深度与集中度意味着潜在影响范围可能超过任何单个端点。出处:4) Security implications · p. 11
5) 模型依赖:… 1) 遥测完整性:
CacheTracer 的拓扑依赖于模型,而现实测量需要投入大量成本,但其中一部分可通过剪枝削减。验证结果还表明,几乎所有受测端点的缓存遥测都可靠;两个例外端点未纳入汇总结果。
5) 模型依赖:
- 22 次决定性重测中仅有 2 次重现了原有的包含关系,表明缓存包含拓扑依赖于模型,应按模型分别索引。其余决定性重测显示存在共享可达性但不构成包含关系,或未检测到共享;另有 22 次重测结果不确定。出处:5) Model dependence · p. 11
6) 测量成本:
- 在 7.2 小时内发送约 1.1 × 10^6 次请求,对 39 个现实中的转售端点进行测量,平均速率为每秒 42 次请求,每个直接测量的端点对发送 1,730 次请求。这些请求包括双向测量、重复探测观测和缓存维护流量。出处:6) Measurement cost · p. 11
- 在 741 个候选端点对中,蕴含剪枝通过依据先前恢复的包含关系推断其关系,避免直接测量其中 105 对,即 14.2%。这一机制减少了对候选端点对进行重复双向探测的需求。出处:6) Measurement cost · p. 11
C. RQ2:假设验证:
- CacheTracer 的假设检验使用缓存遥测数据和重复请求命中模式,覆盖了 RQ1 中测量的同一批 39 个转售端点。验证针对的是缓存共享与包含关系识别所依据的假设。出处:C. RQ2: Assumption Validation · p. 11
1) 遥测完整性:
- 冷提示测试采用新生成的随机数和此前未出现过的提示,确保报告的完整前缀命中并非由实验预先写入缓存所致。该流程检验 cached_tokens 是否反映了实际缓存命中。出处:1) Telemetry integrity · p. 11
- 在 5,997 次冷提示请求中获得的 5,059 条可用观测里,三个端点的遥测数据不足,其余端点共出现 3 次误报命中,发生率为 5.9×10−4。使用额外 1,660 条观测进行的更新提示检查,在一个端点复现了一次事件,在另一个端点未复现,得到的端点级发生率分别为 1/603 和 2/1270。出处:1) Telemetry integrity · p. 11
- 几乎所有受测端点的缓存遥测都可靠,因此,两个例外端点得出的部分共享判定未纳入汇总结果。这是该研究报告的验证结论。出处:1) Telemetry integrity · p. 11
2) 稳定路由:· D. RQ3:受控评估
现实世界的概率测量总体支持 CacheTracer 的路由模型;受控实验则表明,该方法能够准确恢复所有测试过的缓存共享拓扑及其组合。
2) 稳定路由:
- 在 21 条现实世界的 A ≺ B ≺ C 链中,预测与观测到的命中概率的绝对偏差中位数为 0.084,其中 14/21 条链的偏差不超过 0.10。随机打乱观测到的长距离数值后,中位偏差上升至 0.449;另有七个较大的偏差表明,这些假设只是近似,而非不变量。出处:2) Stable routing · pp. 11–12, Figure 7 · p. 12
- 如果将整个提示固定到某个缓存域,那么不同随机填充过程会从互不相关的路由群体中采样,也就无法得到观测到的一致性。观测到的偏差可能源于临时路由变化、配额或替代路径。出处:2) Stable routing · p. 12
- 测得的概率总体符合路由模型预测的乘法关系,这支持将稳定路由和前缀不变的选择视为合理近似。每个概率都基于一次独立的填充和一个新生成的随机提示;该关系将 C 到 A 的可达概率表示为 C 到 B 的可达概率乘以 B 到 A 的可达概率。出处:2) Stable routing · pp. 11–12
D. RQ3:受控评估
- 受控评估采用八种相互隔离缓存、可达关系已知的拓扑,包括成对关系、有代表性的三节点组合,以及一个八节点 DAG 压力测试案例。压力测试案例使用 12 个相互隔离的域,端点可达最多跨越十个域,最低终端路由概率约为 8.57%,高于 5% 的分辨率阈值。出处:D. RQ3: Controlled Evaluation · p. 12
- 受控实验确认,CACHETRACER 能区分无共享、可达关系等价、严格包含,以及存在共享但互不包含。这四类结果是 CLASSIFY 返回的成对关系类别。出处:D. RQ3: Controlled Evaluation · p. 12
- CACHETRACER 能正确恢复链式组合、扇入结构和隐藏的共享祖先,同时通过蕴含剪枝跳过传递包含关系。在组合压力测试案例中,它还恢复了全部六个直接观测到的关系,并将相互重叠的极大团保留为彼此独立的潜在解释。出处:D. RQ3: Controlled Evaluation · p. 12
- CACHETRACER 准确恢复了配置的全部 8/8 种拓扑,区分四类成对关系,并保留多跳、扇入、剪枝和相互重叠的潜在共享结构。由于每条配置的供应边都对应严格的缓存包含关系,准确恢复包含关系也就准确恢复了配置的供应图。出处:D. RQ3: Controlled Evaluation · p. 12
V. 讨论 … 伦理考量
CacheTracer 以保守的、仅通过 API 进行的方式呈现 LLM 转售商之间的隐藏缓存依赖,同时区分可观测的缓存拓扑与底层商业供应链。本文还将研究贡献置于既有侧信道、供应链和层析成像研究的脉络中,并说明了有界且经授权的测量实践。
V. 讨论
- CacheTracer 恢复出的缓存包含结构是一个下界近似:报告的关系有方向性测量作为依据,未报告的关系则仍属未知。当缓存域小于分辨率 δ,或测量期间路由发生变化时,包含关系可能无法被观测到。出处:§V · p. 12
- 恢复出的拓扑描述的是转售商端点之间可观测的缓存可达关系,而非商业供应图;因此,链长不能解读为中间商数量。某个缓存可达关系被高度包含,说明可观测的缓存可达关系较为集中,但不一定代表商业层面的集中。出处:§V · p. 13
VI. 相关工作
- 既有 LLM 供应链研究审计转售商行为、模型替换、定价和恶意网关,而 CacheTracer 则推断端点之间的隐藏依赖。相关工作还包括后端路由器和协作式模型指纹 [42],, 。出处:§VI · p. 13
- CacheTracer 将真实的 prefix-cache 复用重新用作关系型基础设施信号,而非内容泄露;该方法建立在缓存攻击和更广泛的推断侧信道研究之上 [22], [45],,, 。相关信道已揭示架构、身份或活动,,,,,,,,, 。出处:§VI · p. 13
- 与网络层析成像类似,CacheTracer 从端到端观测中推断隐藏拓扑;但若无额外假设或观测视角,外部痕迹只能确定一个等价类,,,,, 。CacheTracer 以预置的 prefix 状态取代数据包路径关联。出处:§VI · p. 13
VII. 结论
- 本文介绍了 CacheTracer 这一仅通过 API 进行的方法,它利用 prefix-cache 复用揭示转售商端点之间共享的缓存可达关系及其包含关系。对 39 个真实转售商的测量发现,缓存共享普遍存在,依赖结构层次较深且高度集中,表明看似独立的转售商可能依赖隐藏的共同上游服务商。出处:§VII · p. 13
伦理考量
- 研究使用付费账户和含有随机填充及新鲜 nonce 的合成提示,不涉及用户数据,也未尝试恢复其他客户的提示。请求使用有文档说明的接口和普通客户权限;洪泛请求设有上限,错误请求予以隔离,并在 7.2 小时内向 39 个端点发送了 1.1 × 10^6 个请求。出处:ETHICS CONSIDERATIONS · p. 14
- 根据预先制定的信息披露政策,端点身份未予公开,因为这些关系描述的是某个特定模型测量窗口内的基础设施,而非观测到的商业安排。对端点信息进行删减,在不点名公司的前提下保留了测量结果的整体形态。出处:ETHICS CONSIDERATIONS · p. 14
附录 A 测量预算与请求复杂度 … 附录 E 潜在见证的解读
附录量化了 CacheTracer 的请求复杂度,记录了经脱敏的端点信息和受控评估证据,并考察跨模型持久性。附录还说明,潜在见证表示尚未解释的共享关系,但无法识别隐藏的商业实体或内部结构。
附录 A 测量预算与请求复杂度
- CacheTracer 的最坏情况下前台请求复杂度为 N + N^2(Bf + Nprove);当相邻链路关系能够推出更长链路上的节点对时,复杂度降至 O(N(Bf + Nprove))。实际开销取决于候选节点对的剪枝情况,并在 §IV 中报告实测结果。出处:Appendix A · pp. 15–16
附录 B 脱敏端点索引
- Table III 列出了 Fig. 6 中的 34 个节点及其脱敏后的商业端点,同时保留了运营方数量和域名形态信息,以便对测量结果进行合理性检查。域名简化为公共后缀和最后一个可注册标签的字符,其余字符均以黑块遮蔽,并移除子域名。出处:Appendix B · p. 16, Table III · p. 17
附录 C 受控评估的方向性证据
- Table IV 报告了八种构造拓扑中两个 FLOOD–PROVE 方向的命中/未命中观测结果,以及对每种拓扑得到的 CLASSIFY 关系。该表提供了 §IV-D 受控评估所依据的方向性证据。出处:Appendix C · p. 16, Table IV · p. 17
附录 D 跨模型缓存包含关系
- 两种复现出的缓存包含关系在 gpt-5-nano-2025-08-07 和 gpt-5.1 上均保持成立,但仅有两次决定性重跑复现了原始关系。Figure 9 展示了这两种跨模型情形。出处:Appendix D · p. 16, Figure 9 · p. 16
附录 E 潜在见证的解读
- 潜在见证是用于解释尚未说明的共享缓存可达性的说明性占位对象,由尚未解释的 PARTIAL 节点对构成的极大团生成,且从不作为查询对象。极大团保留了相互重叠的解释,包括共享端点但代表不同结构解释的团。出处:Appendix E · p. 16
- 潜在见证无法被识别:等价的转发链、共租户服务面或它们的组合,内部结构虽不同,却可能保留可见的缓存可达关系。因此,其数量和标签无法识别隐藏实体;此外,潜在见证不纳入观测节点、包含边和缓存可达性统计。出处:Appendix E · p. 16