内容类型
Research
在 内容类型 维度下,Research 将 BTW.MEDIA 上采用相同编辑格式的文章汇集到一起,让读者可以在不混淆不同类型证据的前提下,比较简报、档案、风险提示、市场分析和事件报道。该页面说明这一内容类型如何在站内呈现互联网基础设施事件、企业动态、治理决策、运营信号和公开证据。读者可以比较哪些主体或基础设施系统最常出现、来源质量如何影响解读,以及某篇材料属于长期档案、时效性事件、战略市场信号还是治理进展。最终形成对运营商、投资者、客户、分析师和政策相关方都有参考价值的搜索页面,帮助他们理解同类文章格式背后的影响、时机与证据。

案例档案
TXT 记录完全正确,供应商仍不等于域名所有者:ACME DNS-01 与委托验证的权限边界
供应商的员工账号、CI 密钥和证书库权限都已撤销,`_acme-challenge` 却仍委托到它管理的验证区。供应商用尚存的 ACME 账户申请通配符证书,正确的 TXT 摘要随即出现,验证全部通过。协议没有出错;漏项发生在只画到应用层的离场清单里。

案例档案
边界不是过滤器:BGP 最大前缀数如何把容量预算变成断会话权限
多一条路由,为什么可能导致此前已经正常承载流量的整组路由一起撤走?答案不在那条新路由是否“有问题”,而在最大前缀数策略把计数结果绑定了什么动作。只有把计数口径、保护对象、合理余量、执行后果和转发证据写清楚,这个看似简单的上限才是一项可治理的网络控制。

案例档案
DNS 回答安全,不等于主机选择正确:SSHFP 指纹的权限边界
运维人员输入 `ssh db`。网络下发的搜索后缀把短名补成了另一个完整域名;该名称的 SSHFP 通过 DNSSEC Secure 验证,服务器给出的主机密钥也与指纹完全一致。所有密码学证明都成立——只是成立于客户端选中的主机,而非操作者心中那台数据库。

案例档案
签名通过了,From 地址却不是签名者:DKIM 域签名的权力边界
邮件把 `bank.example` 显示为 From 域,DKIM 结果为 pass;真正完成签名的却是攻击者控制的 `receipt-alert.example`。密码学没有出错,系统只是把一个域的证明送给了另一个域。

案例档案
摘要完全吻合,发送者仍然未知:HTTP `Content-Digest` 与校验和的权力边界
那份策略文件没有在传输途中损坏。它从一开始就是恶意内容,而且附带了计算完全正确的 `Content-Digest`。服务显示“已验证”,随即执行文件。攻击者没有破解哈希算法;他只是同时选择了正文和摘要。

案例档案
请求头写着“客户端”,但对端地址并不认同:HTTP `Forwarded` 与代理链的授权边界
一台源站按设计只应接收两层反向代理转来的请求,却仍可从公网直达。攻击者直接连上源站,把管理员白名单地址放进 `X-Forwarded-For` 最左端,IP 规则随即放行。解析器没有读错字符;真正的错误,是让一个未经授权的网络对端替更早的节点作证。

案例档案
名字选中了 TLS 上下文,却没有授权请求:SNI 路由提示的权威边界
一台多租户网关收到 `tenant-a.example`,准确选中了租户 A 的证书与 TLS 配置。随后它又把这次选择记成“租户 A 已认证”,让没有任何客户端凭证的连接靠近管理接口。密码学没有失败;失败的是系统把客户端自己填入的名字升格成了客户端身份。

案例档案
证书签名通过了,握手却没有完成:TLS 1.3 `Finished` 的转录权威
监控平台在服务端 CertificateVerify 验签成功时就记下一次“安全握手”。下一条加密握手消息的 `Finished` 校验失败,客户端按规范发送致命错误并断开。证书私钥确实完成了它应有的证明,系统却提前替它宣布了另一项尚未发生的事实。

互联网历史
证明回程存在的令牌:DNS Cookies 为何不是身份凭证
EDNS 中一个很小的选项,改变了 DNS 服务器理解 UDP 源地址的方式。它不能说明请求者是谁,却能说明一件更窄、也更实用的事:先前发往这个表面地址的响应,曾被某个端点收到;如今,对方带回了服务器签发的令牌。

IETF
报文尚未丢失,拥塞已经留下标记:ECN 的漫长机制史
互联网曾长期用丢包来证明拥塞:先让传输受损,再由发送端从损失中推断路径承压。显式拥塞通知(ECN)把关键时点向前挪了一步——路由器可以在报文仍然完整时留下证据;但这两个比特只有在队列、接收端、隧道和发送端共同守约时才有意义。

案例档案
边缘节点协商了 HTTP/2,源站却仍说 HTTP/1.1:TLS ALPN 只拥有一条连接的协议决定权
浏览器提出 `h2` 与 `http/1.1`,边缘节点选择 `h2`,握手完成,HTTP/2 帧也正常流动。监控随后把源站标成“原生支持 HTTP/2”。这个结论越界了:边缘节点已经终止第一条 TLS 连接,又以独立客户端身份向源站建立第二条连接,并在那一段使用 HTTP/1.1。ALPN 证据没有错,错的是把它跨过终止点继续使用。

案例档案
CA 名称在清单里,身份却未获准:TLS `certificate_authorities` 的选择提示权边界
客户端看到服务器列出的 CA 名称,挑出一张匹配的证书;服务器也确实把证书链验证到了受信任锚点。随后,业务服务拒绝了这个主体——它不属于目标租户,也没有所请求操作的角色。这里没有密码学矛盾。故障发生在观察系统把“被选中”“已验证”和“可执行”压成同一个绿色结论之时。

案例档案
签名是真的,状态仍可能滞后:TLS OCSP 装订与缓存答案的权限边界
证书在 10:07 被撤销。10:11,服务器仍向新连接附上了一份签名完全正确的 `good` 响应,`nextUpdate` 还有数小时才到。这里没有伪造:答案是真的、仍在声明的时间区间内,却已经落后于现实。真正误导人的,是监控把这三件事压成了一个绿色字段:`revocation_checked=true`。

案例档案
套接字关了,交易没有结束:TLS `close_notify` 的终止权限
客户端收到了“成功”,服务器也完成了看似正常的 TLS 关闭。几毫秒后,数据库却拒绝了那次写入。这里没有密码学矛盾:`close_notify` 只证明服务器在一个 TLS 发送方向上不再发送消息,不能证明付款、授权或状态变更已经持久化。真正的故障,是系统把连接终止当成了业务结论。

案例档案
票据还在,会话已不在:TLS 1.3 恢复状态的权限边界
区域切换后,新节点接受了一张六小时前签发的 TLS 1.3 会话票据。密码学验证没有出错:客户端持有对应的恢复 PSK,binder 也覆盖了这次新握手。问题在于,用户的管理权限早已被撤销。系统恢复了旧判断,却没有证明那个判断此刻仍然成立。

案例档案
记录更长,不等于消息更长:TLS 1.3 填充与可见长度的证据边界
取证表里有两个数字:第一条密文记录比第二条多 512 字节。报告把差额直接算进请求正文,并据此认定用户执行了某项操作。抓包没有错,推论却跨错了层。发送端正把 TLS 1.3 记录补齐到固定边界,有时还发送正文为空的应用数据记录。线上可见的是密文长度,不是填充前的应用消息长度。

案例档案
第一次问候被退回,却没有被抹去:TLS HelloRetryRequest 与协商记录的权威
故障分析拿到的抓包从第二个 ClientHello 才开始。里面只有一个密钥份额,服务端接受了它,握手也顺利结束。若把这段记录单独阅读,很容易断言客户端一开始就选择了这个群组。事实恰好相反:第一次问候曾作出另一种预测,而 TLS 特意把它的哈希带进后续记录,使一次纠偏不能变成对历史的重写。

案例档案
协商要的是证书,代码却放行了密钥:TLS 裸公钥与验证权边界
裸公钥并不是“少了几段的证书”,而是 TLS 明确定义的另一种认证形态。真正危险的不是使用它,而是在双方没有选择它时让它改写验证规则。wolfSSL 在 2026 年修复的高危缺陷,正好留下了一份运行代码证据:一枚格式正确的密钥,也可能从错误的门进入信任系统。

NPNOG
加德满都共同技术周:体验一致,责任分层
<!-- BTW:SLUG:yi-zhou-liang-ge-ji-gou-liang-ge-jie-shu-npnog-sanog-38 -->

案例档案
证明在连接开始后才到达,但它不能改写过去:TLS Exported Authenticator 与应用权限
14:03,一份有效的证书证明进入了一条已承载数百次操作的连接。系统随即提升所有并发流,还把此前五分钟的工作改记在新身份名下。密码学验证没有错,授权历史却被写错了。RFC 9261 能把新增身份的私钥持有证明绑定到既有连接,却不会替应用决定生效时刻、目标流和权限范围。
