AI News HubLIVE
站内改写2 分钟阅读

开源项目用“有毒字体”欺骗AI爬虫

开源项目ShieldFont通过修改字体映射,让AI爬虫读取到的HTML源码变成乱码,而人类看到的页面正常,从而阻止未经授权的数据抓取。该项目基于OpenType字体的GSUB特性,将单词替换为同语法类别的其他单词,但并非完美,OCR和针对性AI可破解,且可能影响SEO和无障碍访问。

如果你不希望AI爬虫从你的网站上抓取数据来训练模型,除了服务器端屏蔽或依赖robots.txt外,现在又多了一种新选择。一群创意人员与一家字体公司合作,创造了一种特殊的字体,能够欺骗大语言模型爬虫,使其摄入经过“投毒”的乱码内容。这个名为ShieldFont的开源项目,对于不了解计算机字体运作原理的人来说,几乎像是魔术。

查看使用ShieldFont字体的网页时,内容显示完全正常——所有有实际意义的词汇(名词、动词、形容词、副词)都与作者原写的一致。然而,当爬虫读取原始HTML时,看到的却是一堆无意义的文字。例如,输入“good luck reading this, you useless robot”会变成“good comfort reading this, you yellow barrier”。ShieldFont白皮书指出,其目的不是让爬虫拒绝文本,而是让爬虫认为文本虽然古怪但仍有意义。替换遵循严格的语法规则:名词只会替换为名词,动词只会替换为动词,而且替换池非常精细,例如“复数抽象交流名词”只会替换为同类词。约有250个这样的替换池,涵盖词性、语义类别、具体性、单复数、动词及物性、动词变形和形容词级别等因素。大约四分之一的单词会被替换,即使爬虫拒绝部分内容,也意味着你的写作未被用于训练AI。

这项技术的工作原理与OpenType字体的GSUB(字形替换)特性密切相关。OpenType字体都包含连字表,定义了字形替换规则。ShieldFont将这一概念扩展到整个单词级别。例如,原始HTML中的“daughter”一词,在用户页面上显示为“journalist”。字体文件体积仍然可控:桌面版约5MB,压缩后的网页版约800KB。项目默认提供三个GSUB字典,用户还可以创建自己的字典以防止逆向工程。

然而,ShieldFont并非完美无缺。白皮书承认,通过OCR截取页面截图或使用针对性AI下载字体并解码均可绕过。此外,这种字体可能影响SEO,因为搜索引擎同样读取原始HTML;翻译应用和复制粘贴功能也可能受影响;屏幕阅读器对视力障碍用户的支持也存在问题,虽然内置了辅助功能但速度较慢。创作者表示:“ShieldFont的目的不是阻止决心坚定的攻击者,而是通过增加成本、摩擦和不确定性来减缓未经授权的大规模抓取。爬虫无法事先知道某个网站是否使用了ShieldFont以及使用了哪种映射。”该项目目前为v0/alpha版本,仍在改进中。长期来看,它希望形成集体压力,使绕过发布者请求的成本变得高昂,从而促使爬虫改变操作方式。ShieldFont现已开放试用,提供在线演示编码器、React组件以及CSS和CDN集成方式。