Claude Code 用隐写术标记中国用户:一场事先张扬的信任坍塌
Claude Code v2.1.196的逆向工程揭露了一个令人不安的真相:它通过系统时区检测和域名黑名单悄悄识别中国用户,并用隐写术标记他们。这一设计不仅违背了产品伦理中的透明度原则,更是将开发者工具转化为监控工具。当AI工具被地缘政治化,产品经理们不得不面对一个尖锐的问题——我们的产品到底站在谁那边?

2026年6月30日,Reddit用户LegitMichel777在对Claude Code v2.1.196进行逆向工程时,发现了一段不该存在的代码。这段代码自4月2日起悄悄运行了三个月,它做的事很简单:识别中国用户,并用隐写术标记他们。这不是Anthropic第一次封锁中国用户,但这可能是第一次,让全球开发者开始认真思考一个问题——你的AI工具,到底站在谁那边?

一、先看技术:这套检测机制有多”精巧”
Claude Code的中国用户检测分两层,设计得相当”产品化”。
第一层:系统时区检测。 不看IP,不看GPS,看你电脑的系统时区。只要是`Asia/Shanghai`或`Asia/Urumqi`,标记。这意味着绝大多数中国开发者——即使挂了代理——也会被命中。因为没人会为了用个编程工具去改系统时区。
第二层:中转域名黑名单。 当用户设置了`ANTHROPIC_BASE_URL`环境变量(使用第三方API中转服务),Claude Code会将中转域名与内置的147个域名做比对。这份黑名单覆盖了中国主流互联网公司(百度、阿里、字节、美团、网易、京东、B站)、AI实验室(DeepSeek、月之暗面、MiniMax、阶跃星辰),以及大量API中转服务商。域名列表经过XOR异或加密(密钥91),并非明文存储。到这里,检测逻辑本身并不复杂。
真正让人脊背发凉的,是检测结果怎么传回服务器的,它没有发送任何额外的网络请求。它做了一件更”聪明”的事:修改系统提示词中的Unicode字符。具体来说:
- 日期分隔符从`2026-06-30`(连字符)变成`2026/06/30`(斜杠)
- 英文撇号从标准U+0027替换为三个肉眼完全无法分辨的Unicode变体——U+2019、U+02BC、U+02B9——分别对应不同的用户分类
这些字符在屏幕上看起来一模一样。但服务器端只需扫描对话中的Unicode码点,就能瞬间完成用户身份识别,这叫隐写术, 一种把信息藏在明面上的古典密码技术,用在了一个编程工具里。更耐人寻味的是代码层面的人为混淆:检测逻辑埋在一百多个XOR常量和大段死代码中,显然经过了刻意的反逆向设计。
一个产品团队,如果要做一个正当的地域检测功能,会这么做吗?

二、产品经理视角:这不是功能,这是”暗模式”
如果把这件事放在产品框架里审视,问题会更清晰。
任何产品的用户检测功能,如果目的是正当的(比如合规要求),通常有三个特征:
- 透明度:在隐私政策或用户协议中披露
- 可感知性:用户能知道自己正在被检测(例如地域提示)
- 最小化:只收集必要信息,不超出目的范围
Claude Code的检测机制,三个特征全部缺失。
用户不知道被检测。检测结果用不可见的方式传输。收集的信息(时区+中转域名+域名归属分类)超出了”确认地域”的必要范围——它还分类了”你是不是AI实验室相关的”。
这在产品伦理上有一个专门的词,叫Dark Pattern(暗模式)——用设计手段让用户在不知情的情况下做出或经历某些事情。
但Claude Code比传统的暗模式更进了一步。传统暗模式最多让你多花点钱或多点个按钮。它是在一个开发者信任的工具底层埋了逻辑,而这个逻辑的运作方式,和木马的通信机制本质上没有区别。
三、信任:开发者工具的隐性货币
开发者工具和普通消费产品有一个本质区别:你给它的权限不一样。
一个笔记软件知道你写了什么。一个编程工具知道你所有的代码、项目结构、API密钥、数据库连接字符串、内部系统架构。你在它面前是裸的。
这就是为什么开发者对工具的信任门槛极高。也是为什么VS Code能取代Sublime,GitHub能取代SourceForge——不是因为功能多了多少,是因为信任建立起来了。
Anthropic在这件事上犯了三个产品层面的致命错误:
第一,高估了”目的正当”的豁免权。防止模型蒸馏是合理需求。但正当目的不等于正当手段。用一个加密的、隐藏的、不可感知的标记系统来实现这个目的,手段本身的破坏力超过了目的的合理性。
第二,低估了开发者社区的逆向能力。任何客户端代码都是可以被逆向的。XOR加密、代码混淆、死代码填充——这些在逆向工程师眼里不是障碍,是挑衅。你越藏,他们越想挖。
第三,混淆了”安全措施”和”监控措施”安全措施告诉用户”我在保护你”(例如杀毒软件扫文件前弹窗确认)。监控措施告诉用户”我在看着你”(但不告诉你我看到了什么)。Claude Code做的不是安全,是监控。而开发者是所有用户群体中,对监控最敏感的一群。
四、更大的图景:AI工具的”国籍”
这件事孤立地看,是Anthropic一家公司的一次翻车。但放在2026年的时间线上,它其实是一个更大的趋势的缩影。
2025年9月,Anthropic限制”中资持股超50%的实体”使用Claude。
2026年2月,Anthropic指控中国AI公司通过24,000个欺诈账号发起1,600万次蒸馏攻击。
2026年3-4月,Claude Code嵌入检测代码。
2026年6月,美国与AI公司谈判”自愿模型标准”,被解读为AI领域的出口管制框架。
每一个节点都在同一个方向上:AI正在被地缘政治化。
对于中国开发者和产品人来说,这意味着一个根本性的问题:你用的AI工具,有没有”国籍”如果有,它的国籍和你的国籍不一致时,它会站在哪边?
这个问题在Claude Code事件之前是抽象的现在是具体的——具体到你的代码编辑器里,有一个你看不见的标记,决定了你是一个”正常用户”还是一个”需要特殊处理的中国用户”。
五、下一步:中国AI工具生态的机会?
危机往往是格局重组的前夜。
Claude Code在开发者社区的口碑在这一周内经历了断崖式下跌。r/ClaudeCode子版块的热门帖几乎全是质疑和嘲讽。大量开发者在GitHub上发起”迁移到Cursor/Copilot”的讨论。
这对中国AI工具生态来说,可能是一个被动的窗口期。
目前国内的AI编程工具生态正在快速成型:
- 通义灵码(阿里)免费且中文生态完善
- CodeBuddy(腾讯)深度整合微信生态
- DeepSeek Coder系列模型在代码生成benchmark上已进入第一梯队
- 智谱CodeGeeX开源且支持多IDE
它们共同的问题是:品牌信任还没建立起来,国内开发者对国产AI编程工具的普遍心态是”能用,但不够好”。
Claude Code这次翻车,恰恰暴露了”国外大厂的AI工具”并不等于”值得无条件信任的工具”。当信任这个变量被拉平,竞争就回到了产品本身——谁的模型更强、谁的体验更顺、谁对开发者的理解更深。
六、写在最后
Anthropic承诺在7月2日的更新中完全删除相关代码。从技术上说,这件事”解决”了。
但信任的修复,远比代码的删除困难。
这件事给所有产品人留下的,不是一个技术问题,而是一个产品哲学的拷问:
当你的产品拥有极高的系统权限和用户数据访问能力时,你的产品伦理边界在哪里?
“为了安全”能不能成为一切隐蔽操作的遮羞布?”用户不会发现”能不能成为产品决策的默认前提?”竞争对手都这么做”能不能成为放弃透明的理由?
如果你是一个AI产品的产品经理,这三个问题,值得你和团队坐下来聊一整个下午。
因为今天出事的是Claude Code。明天,可能就是你做的产品。
而到那个时候,你希望你的用户,怎么评价你?
本文由 @不到九点 原创发布于人人都是产品经理。未经作者许可,禁止转载
题图来自Claude官网截图
- 目前还没评论,等你发挥!

起点课堂会员权益




