
一个撇号8 种身份Claude Code 是怎么悄悄认出中国用户的这两天技术圈被一条消息刷屏了。有人逆向了 Claude Code 的打包文件发现 Anthropic 在里头藏了一段专门针对中国用户的代码会偷偷给你打标记。骂的人特别多。说实话我看到这条新闻的第一反应不是跟着一起骂。而是想搞清楚一件事它到底是怎么做到「标记你」还能让你完全看不见的Claude Code 国内用的人不少这事跟每个用它的人都有关。我把能找到的逆向分析都翻了一遍——英文的 dev.to、中文社区的拆解、X 上宝玉的帖子。翻完先给你两个结论剩下的咱们慢慢拆。第一那段专门针对中国用户的代码是真的。第二真正值得说道的是它干这件事的手法——用一个你看不见的撇号做成了一件特别精巧的事。它把标记藏在了哪先说它把「标记」藏在了哪。你每次用 Claude Code 跟模型对话它都会在请求的最前面自动拼一段系统提示词。其中有一行普通得不能再普通Todays date is 2026-06-30.就是告诉模型今天几号。人畜无害对吧问题就出在这行字里。Anthropic 没有单独发一条请求来「举报」你也没有在你的数据里附加什么奇怪字段。它选了一个最隐蔽的办法直接改这行字本身。把「你是谁」的信息藏进这行每天都要发的、看起来毫无意义的日期里。用专业点的说法这叫水印。更准确点叫隐写steganography。翻译成人话它没给你贴一张写着「中国用户」的大字报而是在你每句话的句号里偷偷换了一个你看不见的笔划。一个撇号能藏两个比特那它具体改了哪第一个位置是Todays里的那个撇号。就是那个。你别小看这个符号。在计算机里长得像撇号的东西远不止一种。正常的撇号是键盘上直上直下的Unicode 编码叫U0027。但在字符表里至少还有三个跟它长得几乎一模一样字符编码长相U0027键盘上直上直下的一竖’U2019向右弯的花引号ʼU02BC悬在右上角的小逗号ʹU02B9一根短短的竖撇我把它们并排放一起盯着看了半天愣是没分出来。复制粘贴带不走普通的文本处理也不会清洗它就那么静静躺在你发出去的请求里。Anthropic 干的事就是根据「你是什么身份」从这四个里挑一个替换进去。四个撇号正好能编码两个比特的信息命中域名黑名单命中 AI 关键词用哪个撇号否否U0027是否’U2019否是ʼU02BC是是ʹU02B9也就是说光这一个肉眼不可见的字符就同时表达了「你有没有命中域名黑名单」「你有没有命中 AI 实验室关键词」两层判断。两个判断压进了一个标点符号里。第二个暗门日期的分隔符光两个比特还不够。它还留了第二个暗门日期中间的分隔符。正常日期是2026-06-30用连字符-。但如果判定你在「中国时区」它会把这三个连字符悄悄换成斜杠2026/06/30这又是一个比特。你以为是工程师随手写的日期格式差异其实是刻意的第三层标记。三个比特八种身份把这两个暗门拼起来一共三个比特。三个比特能表达 2 的 3 次方——八种不同的身份。时区域名关键词身份编码普通否否普通用户中国否否中国时区用户中国是否命中黑名单的中国用户中国是是双重命中的中国用户………………共 8 种组合每一种组合都精确对应一种「你是谁」。举个具体的例子。同样是发一句话给 Claude一个走百度内网代理的员工和一个用 DeepSeek 中转站的独立开发者发出去的那行日期人眼看起来一模一样。但在 Anthropic 后台眼里是两串完全不同的身份编码。它能精确到这个程度。这事最让人不舒服的地方在哪不是它标记了你而是它标记得这么优雅你居然一点都没察觉。谁会被标记四层关卡那你可能会问是不是所有中国用户都被标记了没有。这套机制有触发条件而且层层把关一共四层。第一层看你是不是走官方直连。如果你没动过ANTHROPIC_BASE_URL这个环境变量老老实实连的官方api.anthropic.com整套水印直接跳过什么都不干。第二层看你的系统时区。它不看你 IP而是直接读你电脑的时区设置。而且认得很死——只认Asia/Shanghai和Asia/Urumqi两个。为什么是这俩因为全球通用的时区数据库里这俩正好、且仅代表「中国大陆」。它故意没用「8」这种省事写法。因为香港、台湾、新加坡都是 8一判就误伤。它精确匹配这两个名字等于把你死死钉在大陆本土。第三层一张 147 项的域名黑名单。你填的中转站域名拿来跟这张表比。这张表还做了加密——Base64 加上 XOR 异或密钥就是整数91。对就 91比你家 WiFi 密码还简单。谈不上多难破解安全研究者几分钟就能解开但足够挡住普通用户。第四层11 个 AI 实验室关键词。只要你的域名里含deepseek、moonshot、zhipu这些词命中。去重之后正好是 9 家中国头部大模型公司——DeepSeek、月之暗面、MiniMax、智谱、百川、阶跃星辰、零一万物、阿里通义、字节豆包。有意思的是国外竞品Google、OpenAI一个都没在表里。所以可以确认这套东西就是冲着中国来的一点含糊都没有。为什么它不查 IP反而更难躲聊到这你可能会想Anthropic 直接查 IP 不就行了干嘛费这么大劲去改一个撇号这正是这套机制最「鸡贼」的地方。查 IP是网络层的事。你走中转站、走代理IP 就变了Anthropic 看到的只是中转站的 IP根本认不出你是谁。但时区、环境变量是应用层的事藏在你自己电脑里。中转站改得了数据包的出口改不了你系统的时区也改不了你填进去的那个ANTHROPIC_BASE_URL。更关键的是这个标记是搭在你本来就要发的那条请求里走的。它不需要单独发一条「举报」请求不需要额外的接口没有任何能被防火墙拦掉的东西。你要拦它就等于拦掉你自己跟 Claude 的对话。这就是隐写和普通检测的根本区别。普通检测是「我知道你在查我我能躲」。隐写是「你根本不知道自己被标记了躲都没处躲」。这套机制到底图什么说了这么多机制回到一个最根本的问题Anthropic 费这么大劲到底图什么答案不复杂——防蒸馏。什么是蒸馏简单说就是竞争对手拿 Claude 当老师海量提问、收集回答再拿这些数据训练自己的模型低成本「抄」出近似的能力。Claude 这种前沿模型训练成本动辄上亿美金谁都不想被白嫖。而国内一批 AI 公司恰恰是最有动机、也有能力这么干的人。所以那张 147 项的黑名单第一项就是.cn域名——宁可错杀不肯漏过。这套水印本质上就是一枚「取证印章」一旦发现谁在批量蒸馏能顺着标记一路追到源头。还有个进展据 Tech Times 7 月 1 日报道Anthropic 已经承诺会修复这个机制。从被曝光到表态整改反应不算慢。写在最后它针对中国用户做水印这事是真的没什么可洗的。但比起这件事本身我更担心的是另一个趋势这种「看不见的标记」会不会成为以后所有 AI 工具的标配你想想这套手法几乎零成本。不增加请求不增加流量也不留下任何能被察觉的痕迹。一个字符的差别就把八种身份分得清清楚楚。这么高性价比的标记手段没有理由不会被别的厂商学去。今天它能在一个撇号里藏三个比特明天它就能在别的字符里藏下更多。这才是真正值得警惕的方向。徐公持续分享 AI Engineering 实战。更多学习笔记和可复用代码开源在 GitHubhttps://github.com/gdutxiaoxu/ai-engineering-learning欢迎 Star。推荐阅读我用 Claude Code 半年了这个功能彻底改变了我的工作方式AI 时代我们活得太着急了