Startpage——保护隐私的搜索引擎,搜索质量等同 Google

2018-11-20IT IT.信息安全

★引子


  很多年来,俺一直用 Startpage 来代替 Google 进行 Web 搜索。一直想写篇博文来介绍一下,但又一直忘了。
  前几天,Startpage 的界面作了一次重大改版,让俺终于再次想起之前一直忘记的事情。

不见图 请翻墙

★为啥俺不用 Google 的搜索功能?


  俺也算是 Google 搜索的老用户了,大约2000年左右开始用它(具体时间已记不清)。
  但随着时间的推移,俺越来越注重隐私保护,也就越来越想摆脱 Google 的搜索功能。这其中的原因,俺已经唠叨很多次了,今天再次解释一下:
  Google 的商业模式基于【在线广告】(Google 90% 以上的利润都来自于此)。为了做到在线广告的【精准投放】,Google 必须尽可能详细地了解每一个使用 Google 产品/服务的网民。所以 Google 有强烈的动机,想要收集每个用户的隐私。更详细的解释,可以看之前的博文:《弃用 Chrome 改用 Firefox 的几点理由

  顺便说一下:
  百度更加不能用!!!俺在上述这篇博文中是这样评价百度的:
  百度同样是一家搜索引擎公司,但是百度比 Google 更恶心百倍。Google 虽然喜欢收集用户隐私,但最起码人家 Google 的搜索结果是【客观的】。而百度的搜索结果是可以花钱买滴(还美其名曰“竞价排名”)。这么说吧,如果你针对某个关键词向百度出了高价,那么网民在百度上搜索该关键词的时候,你的网站就会排在搜索结果的前面。
  就是靠着“竞价排名”,莆田系与百度这两个大流氓完美地勾搭在一起。如果说莆田系医院是垃圾,那百度这家公司就是垃圾中的垃圾;如果说莆田系的老板是人渣,那百度的老板李彦宏就是人渣中的人渣。
  莆田系加上百度,不知毁掉了多少家庭,不知让多少病患人财两空。李彦宏的百亿身家,就是靠人血馒头堆出来的。当年的魏则西事件,只不过是碰巧被曝光的沧海一粟。下面是俺当年发的《每周转载》。
每周转载:魏则西事件、百度广告、莆田系、军队医院(各方报道及网友评论)


★为啥俺选择 Startpage?


  由于 Web 搜索是经常要用的(很多网民每天都会用到),而 Google 搜索的牛逼程度(搜索的精准性),又是别的搜索引擎【无法替代】滴!于是就产生一个很尴尬的矛盾。咋办捏?
  俺尝试过一些不同的方案,最后终于选用 Startpage 作为“Google 搜索”的替代品。
  选择它,最重要的一个原因是:Startpage 在保护隐私的同时,能够做到与 Google【同等质量】的搜索结果
  如果你对 Startpage 搜索引擎还不太了解,可以先看维基百科的“这个页面”。
  另外,Startpage 也得到了“粉碎棱镜”网站的推荐,请看“这个页面”。(注:这个“粉碎棱镜”网站,是在斯诺登曝光“棱镜门”丑闻之后成立的。专门推荐一些【对抗政府监控】的软件和网站)


★为啥 Startpage 可以实现【高质量】的搜索?


  在本文的标题中,俺提到:搜索质量等同 Google。Startpage 它是如何做到的捏?很简单,因为它的后台用的就是 Google 搜索。简单地说就是:当你在 Startpage 的界面上进行搜索,Startpage 会把你的搜索关键字发送给 Google 的搜索服务器,然后再把 Google 的搜索结果展示给你看。通俗地说:Startpage 就好比是一个【搜索引擎的代理】。
  由于 Startpage 后台使用的是 Google,所以 Google 搜索的一些常用语法,Startpage 也支持。比如说:用 site: 语法来限定只搜索特定网站。(如果要更详细地了解 Google 搜索的语法,可以参见《Google 搜索的基本语法》)

  说到“Startpage 后台使用 Google”,某些同学可能会担心其中的隐私风险?下面俺来解答一下:
  虽然 Startpage 后台用的是 Google 搜索,但 Startpage 服务器发给 Google 服务器的信息【只有搜索关键字】。换句话说,Google 服务器拿到这些搜索关键字,并不知道这些搜索请求是哪个人发起的。如此一来,Google 也就【无法】窥探你的隐私。
  某些安全意识比较高的同学,可能还是会问:你怎么知道 Startpage 是否会暗中记录用户信息?关于这方面的担心,俺在本文倒数第二个章节会做进一步的介绍。


★Startpage 的额外好处——【禁用 JS 脚本】也能正常使用


  如今很多网站越来越重度依赖 JS 脚本。一旦浏览器禁用了 JS 脚本,这些网站就无法正常显示。
  Startpage 到目前为止,一直都可以在禁用 JS 脚本的方式下,【正常使用】。
  (关于“禁用 JS 脚本”有啥好处,本文倒数第二个章节会提到)


★Startpage 的额外好处——对【Tor 代理】很友好


  经常用 Tor 的同学应该会发现,很多网站对 Tor 代理是【不友好】的。当使用 Tor 访问这些网站,经常无法正常打开(显示一个报错的页面)。Google 搜索尤其如此。相比之下,Startpage 对 Tor 用户是很友好滴。
  以俺本人为例:
  俺的上网环境是【全程走 Tor 代理】。显然,当俺使用 Startpage 进行搜索的时候,也是走 Tor 代理。这么多年来,俺很少碰到报错的情况(印象中,好几个月才会碰到一次)。从这点来看,Startpage 算是对 Tor 很友好滴。


★Startpage 的额外好处——【没有】使用 HTTP 协议的 referer 字段


  很多搜索引擎(包括以隐私安全著称的 DuckDuckGo)都会在【外链跳转】中加入 referer 字段,这会引发潜在的隐私风险。而 Startpage【没有】使用这个字段。
  考虑到很多读者是技术菜鸟,俺稍微解释一下:

◇啥是 referer 字段?


  通俗地说:这是一个 HTTP 请求(HTTP request)的属性字段,用来表示当前页面是从哪里跳转过来的(Web 跳转的起始页面)。Web 服务器接收到 HTTP 请求,可以根据其中的 referer 字段,了解用户是从哪里跳转过来的。
  更详细的说明请看“维基百科”。

◇搜索引擎的外链使用 referer 字段,会有啥风险?


  当你使用搜索引擎,找到某个你想要的网站,然后你通常会直接点击该网站的链接,跳转到该网站。
  如果搜索引擎启用了 referer 字段,当你跳转到目标网站,目标网站的服务器就会知道你是从某某搜索引擎跳转过来的。更严重的是,大部分搜索引擎的“搜索结果页面”的网址,会包含【搜索关键字】。所以,目标网站如果(通过 referer 字段)拿到搜索引擎页面的网址,就可以知道你是搜了哪些关键字,才跳转过来的。

◇小知识:通过定制 Firefox,禁用所有点击的 referer 字段


  如果你用的是 Firefox 浏览器,可以修改其配置选项(Preferences),“完全禁用”或“部分限制”referer 字段。
  具体的“配置项名称”及说明,可以参考 Mozilla 官网的“这个 wiki 页面”。
  定制 Firefox 的方法参见博文:《扫盲 Firefox 定制——从“user.js”到“omni.ja”


★Startpage 的额外好处——【不用】cookie 也可以记住用户偏好


  Startpage 提供了若干偏好设置(也叫“用户选项”)。你可以定制“界面显示的颜色/风格”,也可以定制“使用哪个国家的服务器”......诸如此类。

◇大部分网站如何保存用户的个性化设置?


  对于用户的偏好设置,大部分网站通常采用两种方式保存:
1. 保存在客户端(使用 cookie)
2. 保存在服务端(需要用户注册和登录)

  这两种方式都不太爽,都有潜在的隐私风险。

◇Startpage 如何保“存个性化设置”——基于 cookie 的方式


  Startpage 也提供 cookie 的方式。据它官方的说法:默认情况下是【不】保存 cookie 的;只有当用户进入“Settings 界面”进行个性化设置,并点了界面底部的 Save 按钮,才会记录唯一的一个 cookie。

◇Startpage 如何保存“个性化设置”——【不用】cookie 的方式


  由于 Startpage 是强调隐私防范滴,所以它还提供了一种【无 cookie】的方式来保存用户的个性化设置。当你进入“Settings 界面”,修改了各种配置选项后,你【不要】点击 Save 按钮。然后滚动到界面底部,会看到一行字:
Save your settings without a cookie
  如果你的浏览器【没有禁用 JS】
  在这行字下方会显示两串很长的网址(短的那串是编码过的,长的那串是没有编码的)。你随便挑选其中一个网址,加入浏览器的书签,就 OK 了。下次只要点击这个书签,打开 Startpage 界面后,Startpage 就可以根据网址中的参数,知道你的个性化设置。

  如果你的浏览器【禁用了 JS】
  你会看到一个 Generate URL 按钮。点击该按钮之后,按钮下方会显示两串网址(短的那串是编码过的,长的那串是没有编码的)。你随便挑选其中一个网址,加入浏览器的书签,就 OK 了。下次只要点击这个书签,打开 Startpage 界面后,Startpage 就可以根据网址中的参数,知道你的个性化设置。

◇用 URL 网址来保存个性化设置的【好处】


  用 URL 网址来保存个性化设置,可以不依赖 cookie。这样有啥好处捏?
  其一,
  有些关注隐私的网民,会定期清除浏览器所有的 cookie。用 URL 参数来保存个性化设置,清除 cookie 时就不会受影响。
  其二,
  很多关注隐私的网民,会用【隐私模式】来访问 Startpage 网站。在“隐私模式”下,cookie 只保存于【内存】中,也就无法记住用户的设置;而用 URL 参数来保存个性化设置,就可以完美兼容【隐私模式】。


★如何【更安全地】使用 Startpage?


  虽然 Startpage 公开声称:绝不会偷窥用户的隐私。但以俺的行事风格,从来【不会】轻易相信任何口头声明。(在信息安全的圈子混了这么多年,这是起码的素质)
  有鉴于此,俺在使用 Startpage 的过程中,依然对它进行了一些防范。俺要达到的效果是:即便 Startpage 想要耍流氓,暗中收集俺的信息,也收集不到太多。下面是俺采取的几个措施:

◇只通过【Tor 代理】访问 Startpage


  虽然 Startpage 声称不会记录用户信息(用户信息当然也包括“公网 IP”)。但它到底有没有偷偷记录用户的公网 IP,外界是无法判断滴。
  为了保险起见,俺总是通过 Tor 代理访问 Startpage。这样一来,就算 Startpage 偷偷记录“访问者 IP”,俺也无所谓。因为在 Tor 代理的模式下,Startpage 服务器看到的“访问者 IP”,其实是 Tor 网络的“出口节点”的 IP,而【不是】俺本人的公网 IP。
  引申阅读:
“如何翻墙”系列:扫盲 Tor Browser 7.5——关于 meek 插件的配置、优化、原理
“如何翻墙”系列:关于 Tor 的常见问题解答

◇只在【隐私模式】下访问 Startpage


  在 Firefox 的隐私模式(private windows)下,即便某个网站企图保存 cookie,这些 cookie 也只保存在会话(session)中,也就是【内存】中。当你关闭隐私浏览窗口,这些 session 中的 cookie 就消失了。
  虽然 Startpage 默认【不】使用 cookie,但就算 Startpage 有一天变坏了,想要偷偷使用 cookie,俺也不怕。

◇只在【禁用 JS】的情况下访问 Startpage


  这么干,主要是防止网站收集【浏览器指纹】。啥是“浏览器指纹”捏?可以参见俺的《如何保护隐私》系列教程的第5篇(链接在“这里”)。
  网站要想获取“浏览器指纹”,常用的两种方式是:
1. 通过浏览器的“User Agent”
2. 通过收集浏览器运行环境的信息(大部分需要通过 JS 脚本实现)
  对前者的防范,可以参见《如何保护隐私》系列的第6篇(链接在“这里”)。对于后者,只要你禁用了 JS 脚本,很多收集浏览器指纹的技术就会失效,因此可以大大降低“浏览器指纹”的【信息量】。(注:信息量越低,“浏览器指纹”的【唯一性】就越差,也就越难以用来定位某个具体用户)
  由于 Startpage 在禁用 JS 脚本的情况下也可以正常使用,所以俺总是对 Startpage 网站禁用 JS 脚本。


★为啥俺【不】推荐 DuckDuckGo(DDG)?


  本文发布后,估计某些读者会让俺推荐 DuckDuckGo(简称 DDG)。所以先把丑话说在前头——谈谈“为啥不推荐 DuckDuckGo”?

◇搜索质量太差(相比 Startpage 而言)


  最重要的一个原因是:DuckDuckGo 的搜索质量实在不行。这可不是俺一家之言,网上有很多人抱怨过这点。(如果你不信的话,可以自己测试一下)
  如果搜索质量不 OK,就算隐私保护做得再好,对俺来说也没有意义了。

◇DuckDuckGo 隶属于【美国】公司


  每一家公司都不可避免地要受到所在国法律的影响。DDG 隶属于美国公司,而 Startpage 隶属于荷兰公司。
  由于《美国爱国者法案》(洋文叫做“USA PATRIOT Act”)的存在,注册在【美国】的 IT 公司,将会有隐私方面的风险——美国政府(在反恐的名义下)可以要求美国公司交出用户数据。关于该法案的详细介绍,可以参见维基百科的“这个链接”。
  说到“美国政府对互联网的监视”,咱们要再次感谢斯诺登同学冒着生命危险进行爆料。关于这事儿,俺专门发过2篇博文:
中美政府信息监控的差异——“棱镜门”丑闻随想
每周转载:关于“棱镜门”丑闻的相关报道
  在法律方面,欧盟对隐私的保护,要明显好于美国;而荷兰又是欧盟国家中,这方面做得比较好的。
  综上所述,从“公司所在国的法律”来评估隐私风险,Startpage 要优于 DuckDuckGo。

◇DuckDuckGo 的基础设施依赖于亚马逊的 AWS


  DDG 网站的运作依赖于亚马逊的 AWS 云平台(具体参见“DDG 创始人 Gabriel Weinberg 的访谈”)。
  由于亚马逊也是美国公司,同样存在前面提及的《爱国者法案》的隐私风险。

◇关于“DuckDuckGo VS Startpage”的引申阅读


  下面这篇文章【很全面地】对比了这两款注重隐私保护的搜索引擎。此文写于2016年,更新于2017年,还算是比较新的。
  之所以说这篇【很全面】是因为:此文不光对比了这两个搜索引擎的界面和功能,还涉及到其它很多细节——比如“HTTP 协议的 referer 字段”,比如“服务器所在地”,比如“公司的合作伙伴”,比如“公司的资方背景”......
DuckDuckGo or Startpage


俺博客上,和本文相关的帖子(需翻墙)
如何保护隐私》(系列)
中美政府信息监控的差异——“棱镜门”丑闻随想
每周转载:关于“棱镜门”丑闻的相关报道
如何防止黑客入侵》(系列)
如何隐藏你的踪迹,避免跨省追捕》(系列)
如何挖掘网络资源》(系列)
“如何翻墙”系列:扫盲 Tor Browser 7.5——关于 meek 插件的配置、优化、原理
“如何翻墙”系列:关于 Tor 的常见问题解答
扫盲 Firefox 定制——从“user.js”到“omni.ja”
基于安全性考虑,如何选择及切换 Firefox 版本?