跳到正文
本站是 ODERSA 的官方网站。 如何确认这一点

官方域名

本站的网址以 odersa.org 结尾。协会的每一项服务都放在 odersa.org 的子域名下,别处一概没有。如果浏览器地址栏里的网址不是以 odersa.org 结尾,这个站点就不是我们的。

免费,也不用账号

所有内容一开始就全部开放:不用注册,不用账号,不用密码,不用订阅,也没有广告。没有什么是留给付费的人的,因为这里什么都不收费。

不收集任何数据

本站不跟踪您:没有跟踪代码,没有跟踪 cookie,这些页面里没有内嵌任何统计工具,也不在您的设备上测量任何东西。我们的主机会以汇总方式统计请求,就像任何会应答的服务器一样:只是一个总数,绝不是一份个人档案。您不必相信我们的话:打开浏览器的开发者工具,切到“网络”标签页,然后刷新页面。您会看到本站请求的完整清单。所有内容都来自 odersa.org,没有任何东西发往别处。

内容自由使用

内容以 CC BY 4.0 许可协议发布。您可以复制、翻译、打印并再分发,用于课堂或身边的人都可以,唯一的条件是署名 ODERSA。

简体中文
工作台什么都不上传的工具
ODERSA 协会的一间工坊什么都不外传,什么都不留存,什么都到不了我们手里。

证据

网上所有工具站都写着自己尊重您的隐私。我们更愿意告诉您怎么查。查法有三种,从最快的到最彻底的,没有一种需要会编程。

快的那种:看网络面板

浏览器自己会列出进来和出去的全部东西。这是最直接的证据,十秒钟的事。

  1. 打开本站的任意一件工具
    比如元数据查看器。等页面加载完。
  2. 打开开发者工具
    Windows 和 Linux 上按 F12。Mac 上按 Cmd + Option + I。也可以走浏览器菜单,找“开发者工具”或者“检查”。
  3. 切到“网络”标签页
    如果您的浏览器是英文界面,它叫 Network。然后点那个禁止图标或者“清空”,把列表清干净:开始之前列表必须是空的。
  4. 放一个文件进去,跑一遍
    关键就在这一刻。工具干活的时候盯着列表看,下载结果的时候也盯着看。
  5. 自己看结果
    列表一直是空的。一行都不会冒出来:读文件的时候没有,处理的时候没有,下载的时候也没有,因为那份下载是您自己的浏览器用标签页内存里的东西现做的。

一个老实的说明:页面第一次加载的时候,面板里确实会有一堆行。那是网站自己的文件,页面、样式表、字体、脚本,全都来自同一个域名。要看的是那次加载之后、处理文件的那段时间:别的网站正是在那时候上传,而这里列表必须一直是空的。

没得反驳的那种:把网断了

一个需要服务器才能干活的网站,断网就干不了活。这个网站可以。

  1. 先联网访问一次这件工具
    网站这时候会装进您浏览器的存储里,跟一个应用一样。
  2. 把网络切断
    开飞行模式,或者拔掉网线,或者在开发者工具的网络标签页里切到“离线”。
  3. 刷新页面,再用一次工具
    一切照常:页面显示出来,文件放得进去,处理跑得完,结果下载得下来。一个要上传的网站做不到这件事。

最彻底的那种:读代码

最慢,也最扎实。不用注册账号,也不用什么特别的工具。

  1. 查看页面源代码
    Ctrl + U,或者右键再点“查看页面源代码”。本站自己的代码没有压缩过,也没有混淆过,这是有意的:读不懂的代码没法查。只有一个例外,就是内嵌的那个 PDF 库:它是按作者发布的样子、压缩过的形态提供的,方法页写明了它的体积、它的许可证,以及它不发任何网络请求。
  2. 打开这件工具的文件
    每件工具的代码就装在一个 JavaScript 文件里,文件名跟着它自己的名字,从这个域名加载。里面能看到读文件、处理、生成结果这几步。页面本身还会另外加载本站共用的底座,PDF 专区里再加上内嵌的那个库:这些文件到哪一页都一样。
  3. 找一找有没有可能把东西发出去
    在浏览器里,能把数据发出去的办法就那么一小撮:可以搜 fetch、XMLHttpRequest、sendBeacon、WebSocket、EventSource,以及临时拼出来的图片标签或脚本标签。您会搜到几处,这是有意留着的。它们都在注释里,注释写的正是这些函数一次也没被调用过;另有一处,fetch 只是密码短语生成器所用的 EFF 词表里的一个单词。图片类工具确实会拼出一个图片标签:它的地址永远是您刚放进来的那个文件,一个 blob: 地址,不会离开您的浏览器。所以要找的不是那个词,而是一次真的发往远端地址的调用。一次也没有。

还有一份证据是我们欠您的:机器的那份

上面三种办法归您所有:不靠我们,您也查得了。第四种约束的是我们自己。

网站每次发布之前,一个程序会启动一个真实的浏览器,打开每一个工具页面,放进一个真实的测试文件,跑一遍处理,并且在浏览器这一层监视网络,而不是在页面代码这一层。只要在处理过程中看见一个请求跑向别的服务器,就拒绝发布。不是标记,是拒绝。

这是本项目唯一一道改一句文案绕不过去的关卡。它在项目目录里叫 validate-localite,而且每一次都跑。