当我访问 .onion 网站时会发生什么

当我访问 .onion 网站时会发生什么

有人能简单描述一下当我在 Tor 中访问洋葱网站时发生的过程吗?即有多少台计算机以什么顺序发送什么信号。此外,如果从理论上创建了 .onion TLD,会发生什么?是否只有 Tor 网站可以通过 Tor 访问,还是只有“官方”网站可以显示,或者两者都不显示,或者两者兼而有之?

答案1

官方Tor 隐藏服务协议文档解释得相当清楚,但你可能不知道浏览器在哪里。下面是该文档的一些摘录

事情的经过如下:

  1. 首先,必须设置隐藏服务。将发生以下情况:

    “隐藏服务需要在 Tor 网络中宣传其存在,然后客户端才能联系它。因此,该服务会随机挑选一些中继,建立到它们的电路,并通过告诉它们其公钥来要求它们充当引入点。”

    “...隐藏服务会组装一个隐藏服务描述符,其中包含其公钥和每个引入点的摘要,并使用其私钥对该描述符进行签名。它将该描述符上传到分布式哈希表。客户端请求 XYZ.onion 时会找到该描述符,其中 XYZ 是从服务公钥派生的 16 个字符的名称。完成此步骤后,隐藏服务就设置好了。”

    现在,关于连接它:

  2. 您已运行 Tor,并且您的浏览器已正确设置为通过 Tor 进行代理。

  3. 您输入一个.onion地址。
  4. tor程序被设置为代理,可以拦截此操作。

    请注意,如果您没有tor正确设置,.onion浏览器将正常处理请求,通常会导致使用该地址对某种公共 DNS 服务器进行 DNS 查找。这不会起作用,但更重要的是,您会将连接尝试泄露给 DNS 服务器以及路由路径中任何可以访问您的流量的人。

  5. 现在,您的 Tor 客户端正在执行工作:“... 想要联系隐藏服务的客户端需要先了解其洋葱地址。之后,客户端可以通过从分布式哈希表下载描述符来启动连接建立。如果有 XYZ.onion 的描述符(隐藏服务也可能处于离线状态或早已离开,或者洋葱地址中可能存在拼写错误),客户端现在就知道了一组引入点和要使用的正确公钥。在这段时间左右,客户端还会创建一个到另一个随机挑选的中继的电路,并通过告诉它一个一次性秘密来要求它充当会合点。”

  6. “当描述符存在且会合点准备就绪时,客户端会组装一条介绍消息(使用隐藏服务的公钥加密),其中包括会合点的地址和一次性密钥。客户端将此消息发送到其中一个介绍点,请求将其传送给隐藏服务。同样,通信通过 Tor 电路进行:没有人可以将介绍消息与客户端的 IP 地址联系起来,因此客户端保持匿名。”

  7. “隐藏服务解密客户端的介绍消息,并在其中找到会合点的地址和一次性密钥。该服务创建到会合点的电路,并在会合消息中将一次性密钥发送给它。”

  8. 一旦发生上述情况,隐藏服务与您的客户端之间就可以进行通信。结果最终将传回您的浏览器。

答案2

每当您连接到 Tor 时,您都会被分配一个.onion基于静态唯一标识符的域下的方向,该标识符是唯一的,直到您卸载或删除使用公钥为基础生成的 Tor 配置为止。

当网络中的其他人搜索您的伪主机名时,它会要求注册了此类密钥的哈希值,并将您的包路由到那里。由于 tor 的结构很明显,因此不存在所有密钥的“中央”存储库,因此在信息到达目标节点之前,没有 DNS,只有一堆路由器。

相关文章:

我试图简化术语,如果有不清楚的地方,请发表评论。

相关内容