惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

GbyAI
GbyAI
N
News and Events Feed by Topic
D
DataBreaches.Net
MongoDB | Blog
MongoDB | Blog
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Engineering at Meta
Engineering at Meta
T
Tailwind CSS Blog
博客园_首页
Microsoft Azure Blog
Microsoft Azure Blog
Y
Y Combinator Blog
博客园 - Franky
Hugging Face - Blog
Hugging Face - Blog
月光博客
月光博客
A
About on SuperTechFans
I
InfoQ
S
Securelist
Last Week in AI
Last Week in AI
S
Schneier on Security
C
CXSECURITY Database RSS Feed - CXSecurity.com
Hacker News: Ask HN
Hacker News: Ask HN
Schneier on Security
Schneier on Security
Know Your Adversary
Know Your Adversary
腾讯CDC
大猫的无限游戏
大猫的无限游戏
S
Security @ Cisco Blogs
博客园 - 三生石上(FineUI控件)
Simon Willison's Weblog
Simon Willison's Weblog
D
Darknet – Hacking Tools, Hacker News & Cyber Security
T
Tor Project blog
美团技术团队
aimingoo的专栏
aimingoo的专栏
G
Google Developers Blog
罗磊的独立博客
Vercel News
Vercel News
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
The Cloudflare Blog
S
Secure Thoughts
www.infosecurity-magazine.com
www.infosecurity-magazine.com
Latest news
Latest news
Recent Announcements
Recent Announcements
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
L
LINUX DO - 热门话题
Security Latest
Security Latest
TaoSecurity Blog
TaoSecurity Blog
Cyberwarzone
Cyberwarzone
有赞技术团队
有赞技术团队

月光博客

AI编程从零开始:环境配置到开发调试-月光博客 母亲被保健品诈骗-月光博客 向身体低头,向岁月妥协:我的高血压“还债日记” -月光博客 月光博客电子书:《信息安全指南》 谷歌发布2025年度搜索排行榜 中国2025社会热点大事记 2025年十大流行语发布 7天3次,骗子骗走我母亲95万元 “技术男”设三重安全墙,母亲95万存款还是被骗走了 电信诈骗后的复盘:母亲的95万元,是怎么从手机银行里消失的 母亲被电信诈骗95万元的全过程 阿根廷警察被谷歌街景相机拍到裸照 网信办开展“清朗·整治恶意挑动负面情绪问题”专项行动 翟欣欣敲诈勒索案一审获刑12年 《绝命毒师》影评:力工觉醒后的梭哈至死 《人工智能生成合成内容标识办法》正式施行 用AI分析你的财务信息 腾讯子公司实习HR怒怼求职者后被开除 OpenAI发布最强模型GPT-5,免费向所有用户开放 用AI解构你的日记 用AI分析你的游戏偏好 用AI分析你的观影偏好 用AI分析你的听歌偏好 《白鹿原》人物分析:乱世浮沉中的人性剖析 乌托邦的捷径:让AI治理“失败国家” 苹果AI的“路径错误”:为什么它在大模型时代掉队了? 《暗黑破坏神3》第35赛季开荒指南 我对特朗普的看法 欧·亨利十大经典小说鉴赏 HBO电视剧《最后生还者》第二季影评 播客自动化更新分发教程 《围城》人物分析:知识分子的时代困局 NotebookLM音频概览支持中文 《暗黑破坏神3》国服回归 《暗黑破坏神3》国服赛季开荒指南 《网络数据安全管理条例》正式发布实施 契约之下的自由:社会契约论 如何去除文章的AI味道 电影《好东西》影评 我的价值观:义务论和效益论 《魔兽世界》正式服PVP教程 电影《哪吒2》影评 中医理论不是科学理论 DeepSeek与主流AI模型对比评测 TikTok停止在美国服务 我的三观(世界观、价值观、人生观) 《无限暖暖》游戏评测 2024年财经年度总结 月光博客2024年推荐阅读文章 IMDb公布2024年热门电影和电视剧 2024年十大流行语发布 谷歌发布2024年度搜索排行榜 中国2024社会热点大事记 Google Adsense税务居住地证明申请教程 极狐GitLab回应前员工实名举报公司高管:恶意诽谤造谣 升级FTTR千兆光纤带宽 字节跳动起诉前实习生索赔800万 看完历届奥斯卡最佳影片后的体验 李子柒已经正式改名并恢复更新 苹果历年新春短片 “姜萍事件”调查结果公布 胡锡进社交平台恢复更新 上海女子沙白自杀的伦理道德分析 京东与杨笠一起玩火 字节跳动大模型训练被实习生攻击,涉事者已被辞退 《加勒比海盗》系列电影 《夺宝奇兵》系列电影时间线 《侏罗纪公园》系列电影时间线 《终结者》系列电影时间线 华为禁止用户从外部手动安装安卓应用(APK文件) 《炉石传说》国服回归一片混乱 官媒辟谣苹果手机被远程引爆 小米回应摄像头里出现陌生男子说话 环球人物:民族大义不是流量密码,盲目排外没有土壤 《异形》系列电影时间线 看完IMDb250后的体验 暴雪《炉石传说》国服开启预约 网易DD参与代打《魔兽世界》事件的深入分析 福建男子四年前“翻墙”浏览境外网站被行政处罚 《魔兽世界》正式服开服两周游戏体验 暴雪游戏足迹查询:查看暴雪游戏的数据 用AI分析你的推特社交网络数据 胡锡进停更三个月 国家网络身份认证公共服务管理办法向社会公开征求意见 苹果将部分产能转回中国 Windows全球大范围蓝屏 电影《V字仇杀队》影评 微软中国员工禁用安卓手机:只能用iPhone 《魔兽世界》怀旧服“巫妖王之怒”游戏体验 百度旗下萝卜快跑已在多个城市开放载人测试 我为什么不喜欢华为这家企业 胡锡进:强烈谴责苏州袭击日本人的凶手 20美元在美国超市的购买力 华为紧急辟谣“是国内最大的牛肉进口商” 苹果公司公布2024年Apple设计大奖获奖名单 自动生成电影剧本:人工智能技术的崭新里程碑 电影《芳华》人物分析 Steam账号被盗号的解决方法 中文互联网内容正在逐步消失 马斯克:推特域名已全部转移到X
互联网广告过滤的小历史
投稿 · 2012-01-04 · via 月光博客

摘要:Adblock Plus的历史几乎就是从网景公司将Netscape的大部分源代码以Firefox之名开源后,互联网的广告过滤史。目前,Adblock plus不仅是Firefox上用户最多的扩展(活跃用户1000~1500万,是排名第二的的两倍)。

Adblock系列扩展程序的最重大的贡献:

1,通过浏览器扩展实现广告过滤

2,同时提供了黑白名单

3,提供了订阅系统

Adblock Plus的后续影响:

1,别人纷纷模仿,推出了类似产品。国内各种简单易用的XXXX卫士,附带了可以订阅的广告过滤,就更不用说了

2,向世人展示了浏览器内核的内容策略有多么重要:Google Chrome 从17开始,专门提供一个叫WebRequest的扩展API,使扩展程序可以清楚地控制网页上的元素

3,在国内,优酷甚至打出了"黑屏"这种惩罚屏蔽广告的用户的手段

4,这一行为的最终目的可能是让互联网广告进化,达到一种新的,大多数人都能接受的平衡。最近发布的Adblock Plus 2宣布会放行非骚扰性广告,就是一个例子。

正文:

本文主要是在说一个叫Adblock Plus的Firefox扩展,实在没办法,在地球上所有的浏览器扩展程序中,唯有它的活跃用户能超出一千万,爱好者谓之神器也不为过。Google Chrome倒是有几个被称作"Apps"的快捷方式(Gmail,Youtube,Angry Bird)的数量能接近它。

是不是发现这两年恼人的弹出式广告少了很多?早期,浏览器纷纷加入“阻止弹出广告”的功能,还记不记得那时候的3721导航条,google/MSN工具栏,都标榜自己能阻止弹出窗口式的广告?但,不够~~~~有人打算把浏览器中所有的广告除掉。

一个叫Wladimir Palant的德国人,他的贡献直接让至少2000万互联网用户轻松地将自己不喜欢的广告排除于视线之外。而在他的作品Adblock Plus所体现的想法(显然不是原创的),则让远远多于2000万的人,成功的表达了自己反对广告的意愿:

Adblock Plus

------This is Adblock

现在,随地捡起一个"****卫士",也能轻易地除去网页上的大多广告,当然愿意用专业的浏览器扩展效果更好;甚至靠广告吃饭的优酷为此举起了“反--反广告”的大旗:(小样,不肯看广告是吧?小黑屋禁闭30秒!)

ADBlock

------优酷的小黑屋

这张照片里是2010年CeBIT(德国信息及通信技术博览会)的Linux New Media Award奖获得者(目测左边仨哥们是1.9M级的)

Wladimir Palant是右边数过来第二个:

Adblock

到目前为止至少没有adblock plus的中文传记,英文的,也只有Adblock plus作者的自叙,以及维基百科,所以笔者想给它做一个中文的小传:

1,最初,有一个叫Henrik Aasted Sorensen的人,在2002年发布了第一个Adblock 0.1。这个版本无非是提供了一个Firefox自带的图片过滤功能的外部接口而已,它只能按网址屏蔽图片。

Adblock

------Adblock 0.1(Doubleclick居然那时就已经有了!)

2,Henrik Aasted Sorensen发布的最后一个Adblock是0.3版,就像早期的Chrome上的广告过滤扩展一样,Adblock 0.3是在网页加载完成后,才将广告隐藏的

3,2003年初,Adblock的版本号进入0.4,项目改由一个叫"rue"的账户负责维护,但这个"rue"的真名谁也不知道。Adblock 0.4使用了一种叫"XBL"的技术,虽然不能阻止广告的下载,能更好地隐藏,广告在加载网页过程中不会显示出来。此时的Adblock开始支持过滤Flash、Java广告(注:不是视频网站flash播放器内的广告),似乎烙下了不稳定的坏名声

4,2004年,Wladimir Palant发现可以用Firefox的Content Policy(注:内容策略系统)来达到真正阻止广告被下载(这就是为什么目前Chrome上两个广告过滤扩展如此渴求WebRequest API的原因,有了它,扩展才能在广告下载前便阻止它)。这时的Adblock还可以阻止背景图片,javascript脚本以及样式表(注:估计是指css样式表隐藏?) 。Adblock也进入了0.5版。

5,2005年初,一个叫Michael McDonald的人向Firefox的扩展库提交了"Adblock Plus 0.5"(注:就是现在的Adblock Plus)。它提供了两个历史性的创意:白名单(Exception Rules)与订阅系统。同时,用户界面和本地化(提供了16种语言的翻译)也得到了改善。

6,与此同时,Adblock的开发趋于停止,甚至当Firefox 1.5刚发布的时候根本找不到一个兼容的Adblock。结果是Michael McDonald给Adblock写了个补丁,让它能运行在Firefox 1.5上。

7,于是,Wladimir Palant重写了Adblock0.5的代码(注:我估计也加入了当时Adblock plus提供的新功能),并希望将其提交给Adblock的代码库,但与其它的Adblock代码贡献者发生了矛盾。Adblock的作者不愿意全盘接受Wladimir Palant的代码,并把精力放在了令人迷惑(注:作者原话'mysterious Adblock 0.6')的Adblock 0.6中

8,接下来Wladimir Palant联系了Michael McDonald以讨论合作事宜,而Michael McDonald表示他无意继续开发Adblock Plus,于是Michael McDonald便把Adblock Plus项目转交给了Wladimir Palant。到了2006年初,Wladimir Palant重写的Adblock 0.5成为了"Adblock Plus 0.6",而真正的Adblock项目却已完全停滞,Mozilla甚至不得不专门为Michael McDonald开放了上传权限,以便他修补一个出现在Adblock上的漏洞。

Adblock

------Adblock Plus 0.6.1,白名单的语法是"@@"

9,从此,Firefox上的广告过滤扩展几乎完全被Wladimir Palant维护的Adblock Plus垄断。期间他改进了Adblock Plus的比较算法(从trivial算法更换为Boyer-Moore算法),意味着可以给Adblock Plus添加上万个(快速)条目,却几乎不会减慢运行速度。

注:

a,在目前的算法中,快速条目大致上指"3个不包括星号的连续字符"的条目。

b,2006年Wladimir Palant在一篇博文中表示,规则条目数量的增加几乎不会对速度产生影响,在当时的电脑与当时的Firefox上,3000条规则需要30毫秒。

Adblock

------Adblock Plus 0.7.2(蓝色)比0.7(绿色)快了一倍以上

c,Adblock Plus使用JavaScript(JS)写的,而JS的执行效率和浏览器的JS引擎有很大关系。和2006年不同的是,现在的JS引擎都能把JS预先动态编译(JIT)机器码,极大提高了执行效率。

Adblock

------Firefox 9(2011年12月)的JS性能几乎是与Firefox 3.6(2010年1月)的5倍

Adblock

------而Firefox 3.5(2009年6月,JS引擎与Firefox 3.6相同)的JS性能是Firefox 3(2008年6月)的两倍

10,2010年,蓬勃发展的Google Chrome浏览器迎来了它的两大广告过滤扩展---Adblock for Chrome(由美国人Michael Gundlach开发)和Adthwart(作者不详)。Adblock for Chrome是一个专门为Google Chrome开发的广告过滤扩展,后来Michael Gundlach又把它移植到了Apple Safari上。Adthwart则是移植了Adblock Plus的比较算法,后来其作者把项目移交给了Wladimir Palant,同时Adthwart归属于Adblock Plus的大旗下。

(注:广大Chrome用户纷纷用脚投票表示他们更喜欢Adblock for Chrome,其用户数量接近三倍于Adblock Plus的Chrome版)

Adblock

------Adblock for Chrome  on  Chrome Web Store

11,Google Chrome的用户量(注:我倾向于认为这个'用户量'是活跃用户)上,Adblock(300万+)比Adblock Plus(100万+)多一倍以上。而Firefox的Adblock Plus日均活跃用户最高有1500万。光是这些活跃用户加起来就有1500~1900万(考虑可能的重复)人。因为"活跃用户"总是远远少于实际用户数量,所以实际受益于Adblock Plus系列及相似产品的用户保守估计至少2000万。

Adblock

------Adblock Plus(Firefox版)的用户情况:总共1.45亿下载次数,近一年来平均1280万活跃用户

12,而国内的特殊情况(不到5%的用户使用了新式的浏览器:Google Chrome(及衍生产品,或使用webkit引擎的浏览器),Firefox),使用Adblock Plus等扩展的大约只有50万的级别(注:由AMO和CNZZ的数据推测)。然而,国内有大量的软件、其它浏览器扩展使用了Adblock Plus的创意:高效的比较算法,黑白名单,订阅系统,使得国人能更轻易地对付广告(效果差一点没问题)

ADblock

------国内常见的某"XXXX卫士"提供的广告过滤功能

13,今年(2011)年底,Wladimir Palant将Adblock Plus作为一个公司运营,同时Adblock Plus进入2.0分支,默认放行了被定义为"非侵犯性的"广告。12月底,Adblock Plus有了第一位雇员Andrey Novikov,他目前主要负责Adblock Plus的Google Chrome版本

Adblock

------Adblock Plus 2,默认允许"非骚扰性型广告"

  • 最出名的配置文件是由adblock plus团队负责维护的Easylist,至少12个非常流行的地方性列表(包括Chinalist)是在Easylist的基础上添加的。一个典型的适合大中华地区的过滤列表(Chinalist-Lazy,包含了Chinalist,部分Easylist和EasyPrivacy)有将近13000个条目,正是Adblock Plus高效的比较算法,用户才能不影响使用地过滤广告
  • 几乎每个允许附加组件的浏览器都有了自己的广告过滤扩展。Adblock for Chrome与Adblock Plus的Chrome版可以很容易移植,甚至直接运行于到那些使用Chromium内核的第三方浏览器(注,文中有误,傲游是直接基于Webkit)。
  • 国内盛行的各种"XXXX卫士"软件,以及某些杀毒软件也提供了不依靠浏览器的广告过滤功能,它们通常不兼容Adblock语法,且过滤功能也有限,但胜在使用极其方便
  • 少数广告过滤软件能在提供不依靠浏览器的过滤同时,也能保证各种高级过滤功能

在这之后反对的是什么呢?

用户追踪:

我们在上网的时候,总是(通常)不知情地把我们的各项信息提交给第三方,打一个不恰当的比喻:"它"知道你何时,何地,和谁,在哪里开房,当然,"它"通常不知道你的真实姓名,也绝不会偷看你们在房间里具体做什么。被你访问的所有网站都使用了同一个“第三方信息公司”服务,这是怎么一个情况?对于外国人,这个“第三方信息公司”就可以说是Google了,全球来说,大部分的网站都使用了Google Analytics。

来源:fcerebel投稿。

互联网广告过滤的小历史