关于洋葱路由BitTorrent应用Tribler的隐私评论

Tribler.是一款免费、开源的文件共享应用程序,适用于Linux、MacOS和Windows。它为BitTorrent点对点协议添加了一些独特的东西:洋葱路由。洋葱路由,最著名的从Tor浏览器项目,是一个网络路由方案,通过多个代理来中继连接。Tribler对你的连接进行分层加密,这样每个中继代理只知道路由链中下一跳和上一跳的IP地址。这个系统可以帮助提供更多的匿名性,让你下载的内容和下载的地方不被窥探。

在过去的两yabo亚博体育下载年中,我一直在密切关注Tribler的发展。在这篇文章中,我将讨论Tribler是如何工作的,它的哪些部分是匿名的,以及哪些是透明的。Tribler以坚实的核心技术为特色,但项目的目标和优先级并不符合用户对隐私的期望。

Tribler是一个复杂的软件,如果你用错了它,它不会保护你的匿名性。不幸的是,“错误使用”包括完全使用了程序的一些功能;并使用其他默认配置!我建议您在考虑使用该软件之前花时间阅读本文的全部内容。

在传统的点对点(P2P)文件共享中,两台设备直接相互连接以交换数据。这些设备使用一个中心跟踪服务器或通过分布式哈希表(DHT)发现彼此;被统称为同侪交换。跟踪服务器是一个web服务器,它跟踪哪个IP地址提供了一个给定的文件(播种),谁想下载该文件。DHT扮演类似的角色,但它不使用服务器;相同的信息由参与的P2P客户端共同维护。任何想要监视谁正在下载或上传给定文件的人,都可以查询公开的对等交换,以获得对该文件表示感兴趣的IP地址列表。没有匿名性,一切都是明摆着的。

一些BitTorrent客户端可以选择加密P2P数据传输,但通过交换机的对等体发现过程仍然在清晰文本中发生。该选项提供了一些混淆,但这是一个完全虚假的隐私感。将观察到的对等发现查询相关联,然后进行大加密数据传输不是火箭科学。yabo亚博体育下载

Tribler还对对等体之间的连接进行加密,但它使用的是“Tor-like”洋葱路由。要传输的数据被包裹在加密层中(像洋葱一样)。每一层包括一个源地址和一个目的地址,指向链中的上一个和下一个中继。这种方案使每个中继能够转发链中的数据包,而不知道谁在下载什么,他们正在下载什么,也不知道谁在共享文件。

Tribler应用于与对等交换的连接相同的原则。查询和响应被洋葱路由随身播放。它具有用于网络内文件共享的内部DHT。它还使用退出继电器,可以将对大多数其他BitTorrent客户端使用的DHT网络转发的请求。

监视您的网络流量的任何人都可以告诉您正在使用Tribler,并且您使用BitTorrent。它没有什么可以从潜在的监视器中隐藏这些事实。然而,它至关重要地帮助模糊您使用的内容。BitTorrent协议和Tribler在大多数司法管辖区中都是合法的,但它们可能被认为是几个地方的非法网络寻址困难工具。

与Tor项目类似,Tribler也有超级对等体,即出口继电器。出口中继是配置成允许数据传输和对等交换流量从洋葱路由网络出口到公共互联网的客户端。这些出口继电器连接了trbler洋葱网络和公共互联网上更大的BitTorrent网络。

这些超级同行在Tribler带宽经济中迅速积累token,但面临的法律风险显著增加。我将在本文后面讨论带宽令牌的概念。三bler模糊了从出口中继进入网络的信息和地点。然而,大规模的互联网监控努力——你好,国家安全局!-仍可能将进入出口节点的未加密流量的时间与进入“三bler”洋葱网络的被屏蔽流量相关联。然而,它只需要在Tribler的设置对话框中点击一下,你的计算机就会成为一个退出继电器!呵。

退出继电器还揭示了Tribler默认配置的缺陷。出口继电器也被认为是常规继电器。默认情况下,Tribler配置为仅使用单个继电器。根据默认配置,您唯一的中继节点也是出口中继。

对于洋葱路由有效,您需要通过至少两个其他节点的链中继。第一个节点不知道加密流量的内容,它知道链中下一个节点的IP地址和IP。第二节点知道第一节点的IP地址和播​​种机的IP地址。播种机和第二个节点都不知道下载的IP地址!没有人知道转移链中的三位信息中的两个以上;即谁正在下载,谁上传,以及正在转移的内容。为了比较,TOR洋葱网络使用两个中间继电器加上出口继电器。

每个用户默认是继电器,没有[简单]的方式解开它。您的客户只能充当继承端到端加密连接的中间继电器(除非您选择退出继电器)。然而,由于默认配置仅使用Exit继电器,对其他继电器的需求很少。

当您使用Tribler时,您可能只会通过退出继电器下载。如上所述,退出继电器知道您的IP以及您正在下载的内容!我并不揭示Tribler设计中的新缺陷。项目网站解释了差异单个和多个继电器之间,包括图形和一切。我不确定该项目促进其洋葱路由功能,但默认情况下不要利用它们。

你可以在任何时候进入你的三重奏设置和改变继电器的数量从一个到三个。这个选项是存在的,但它不是默认设置的。默认的暴政意味着大多数用户将使用Tribler,而实际上是受出口节点的支配而不监视它们的活动。我不完全清楚为什么更匿名的三继电器设置不是默认配置。

Tribler软件取决于第三方软件依赖项libtorrent.部分核心网络技术。Tribler项目的测试套件不会主动检测意外的网络连接或其他信息泄露。危及您在Tribler中的匿名性或其依赖关系的bug可能会在项目维护人员没有注意到的情况下随时冒出来。测试套件可以更加主动,包括一个模拟域名服务器(DNS),并审查客户端试图联系的域名。类似地,它可以记录连接以查找意外的或未加密的流量,例如未加密的DHT查找或到web服务器的连接。有几个例子DNS泄漏和未加密的连接从Tribler泄露出来。

例如,Tribler在Tribler 7.3版本中增加了一个叫做Torrent Checker的新功能.Torrent Checker将检查Tribler Discovery Service中随机选择的种子的群状态。遗憾的是,新功能并没有利用Tribler的洋葱路由进行健康检查,并且只需查询DHT和跟踪服务以获得随机种子的状态。对跟踪DHT查询的服务,它将显示您有兴趣下载这些随机种子。我将在文章稍后讨论Tribler Discovery服务。

Torrent Checker严重构建,您默认选择了,并且在“设置”页面上没有脱机。此功能可能会让您进入严重的法律困境,消失,甚至导致资本罚款(根据您的管辖权,当然)对您从未下载过的非法材料或甚至知道存在。例如,Tribler可以随机检查随机选择的文件的状态,通过达到专门针对男性的成人主题内容的BitTorrent跟踪服务器来检查随机选择的文件。同性恋仍然携带在世界上的十个国家的资本惩罚,其中一些人进行了广泛的互联网监控。

Torrent Checker通过Tribler版本7.5中的Tribler匿名网络开始代理DHT请求.不过,该功能仍将直接连接到网络跟踪服务器。有关用户投诉在解析追踪器伺服器域名时“DNS泄漏”;没有注意到到相同跟踪器的明文HTTP连接。这个问题在Tribler 7.6版本中得到了部分修复,当它也开始在洋葱网络上检查跟踪服务器。但是,该功能仍然会泄漏一些DNS查找,并没有与Torrent Checker一起工作。

最后一次泄漏在7.10版中固定;发布.Tribler项目花了两年时间才让滔滔不绝的Torrent Checker特性销声匿迹。在线服务,比如我知道你下载了什么自然会将所有这些DHT请求归因于您的IP地址。这使您显示为通过协议下载各种随机材料的BitTorrent权力用户。

Tribler不支持WebSeed BitTorrent协议扩展名(BEP 19.),尽管对TCP/HTTP隧道的支持有限。BEP 19让种子指定web服务器,可以帮助种子种子时,BitTorrent群不能胜任的任务,例如,当有很少或没有种子。Tribler中的TCP/HTTP隧道仅用于联系跟踪服务器,出口继电器拒绝非BitTorrent编码(本编码)响应。这个特性对于确保不受欢迎的和新发布的种子程序能够正常运行非常重要。yabo88软件下载例如,Humble Bundle商店通过网络种子文件发布下载内容。

房间里有一头大象,现在是时候解决了它:Tribler的带宽令牌系统。您将代币支付通过其他用户中继下载,并通过上传到其他符号用户,并通过作为其他用户的中介流量继电器赚取令牌。通过多个继电器中继需要更多的令牌,因此1GB下载到三个继电器的成本为3GB。

BitTorrent客户传统上跟踪您的共享比率:您的上传与下载比率。您可以通过离开客户来提高您的共享比率,并希望有人会通过并希望从您下载。这是一个零和游戏。下载文件的人越多人分享它以及文件的较小较小部分和较小的文件可能会从您的客户端下载。

Tribler下降 - 优先考虑它所谓的“自私”客户;它定义为具有负20GB令牌平衡的客户端。(通过三个继电器下载大约6,6GB后,您可以实现此平衡。)大多数客户端将使用默认设置,因此大多数用户只需通过任何其他继电器支付退出继电器即可支付退出继电器。除非您是退出继电器,否则将增加您的令牌平衡,这是不可能的。我相信大多数人在这一点上只是放弃了这个程序,因为它看起来似乎停止了工作。

新带宽令牌的唯一来源是20GB授予新用户。网络取决于“挖掘”一个愿意在客户最终减速之前加入网络的新客户端的无端新客户流,他们停止使用它。重置您的Tribler实例速度越快,以获得另一个20GB的令牌,它是通过在网络中中继流量来合理地获得它们的令牌。由于协议保留的令牌成本,您的令牌余额会随着时间的推移而减少了比你赚取的令牌,以便为其他用户中继流量而获得令牌。

令牌余额是由您在网络中通信的其他参与者签名的加密区块链。区块链记录传输的数据量、代表参与者的加密散列和传输的时间。它没有记录转移的内容。无论这样的元数据看起来多么不重要,已经有无数的例子表明有人设法将这样的数据与其他数据结合在一起,以收集比表面上更多的信息。

可能的修复是将默认的继电器数量增加到三个。如上所述,这将使匿名性更强,并且还可以帮助将带宽标记循环到整个网络的更多同行。然而,它不会修复累积更多带宽令牌的出口节点的不平衡。

关于这个话题,Jamie King采访了BitTorrent的发明者Bram Cohen一集偷走这个节目播客(音频通过磁铁YouTube).两人讨论了基于共享比率和带宽计算维护社区/计分板是如何过时的。根据定义,每个人都不能高于平均水平;保持1:1的共享比例几乎是不可能的,更不用说超过1:1了。有人必须招致负带宽平衡,其他人才能得到正带宽平衡。

两人还讨论了私人追踪者(通常属于封闭的文件共享群体)应该如何激励和奖励那些分享稀有文件的人。他们认为,随着时间的推移,将稀有文件提供给网络,会比传输的原始比特更能增加网络的价值。关于奖励共享稀有文件的用户,你可以在Tribler Mission语句,但它还没有在客户端实现。您目前失去的信用由于支付协议开销的成本,播种不受欢迎的种子。yabo88软件下载

当使用Tribler支付所有中继费用时,你需要分享的数据是下载的三倍。问题是没有人想从Tribler客户端下载。你不赚取任何令牌通过退出继电器上传到其他BitTorrent客户端。你甚至会在协议开销上损失一些学分,而这些开销是通过其他“Tribler”用户传递的。Tribler开发人员将一个已知的问题称为“token黑洞”。

“[Tribler的]匿名覆盖受到出口节点供应不足的影响,导致频繁的网络拥塞和所有用户下载速度的整体下降。这并非完全出乎意料,因为运行退出节点通常并非没有法律风险。因此,我们认为出口节点容量是一种稀缺资源,在供应不足的情况下,必须在用户之间公平分配。类似地,当一个人希望在其电路中包含一个或多个中继节点时,我们需要中继节点。默认情况下,每个Tribler用户都在默认情况下操作一个中继节点,因为运行中继节点的法律风险很小。”

媒体共享围绕互信生态系统的设计,Martijn de Vos,Tribler Wiki

Tribler知道它具有退出节点的缺点,甚至甚至甚至还不会从您的Tribler实例下载。网络路由问题最常见的解决方案是选择最短路径。Tribler还喜欢最短的继电器路由,因为它可以假设更快。因此,Tribler更喜欢通过退出继电器下载,因为它比从多个继电器的其他拼写用户从其他Tribler用户下载得更快和更便宜。Tribler可以通过使客户端在其中继网络内部在内部传输,尽管较高的“令牌成本”,可以帮助缓解此问题。

这又把我们带回了出口继电器的话题。整个系统都难以置信地依赖于它的出口继电器。如前所述,它们可以去匿名化每个用户,并知道每个人正在下载什么(除非您增加默认中继计数)。出口继电器也可以想象操作什么你下载。

出口继电器完美地定位以对您的BitTorrent交易进行中间人攻击。如上所述,BitTorrent通过查询DHT或跟踪服务器来发现其他对等体使用。Tribler依赖于退出继电器来代表您查询公共DHT网络和跟踪服务器。对于您对下载感兴趣的洪流的BitTorrent信息哈希(BTIH)查询。BTIH是所需Torrent文件的SHA-1密码校验和。

不幸的是,自2004年以来,SHA-1算法一直被认为是脆弱和荒谬的。现在被认为是可实现的构建文件(可能具有相同的SHA-1的文件(潜在的Deanyming或其他恶意有效负载)作为目标文件。

一个坚定的攻击者,或者在BitTorrent的情况下 - 一个代表版权持有人的律师,可以设置三字母退出继电器并监控人们正在下载的内容。它们还可以通过控制的对等体拦截和回复任何DHT或跟踪服务器查询。然后,这些对等体可以发送包含BitTorrent客户端继续下载的有效载荷的Torrent Metafile。该文件将通过内置文件损坏并在BitTorrent协议中检查(所有依赖于BTIH的SHA-1)。

此问题对Tribler是唯一的,并影响所有BitTorrent客户端。然而,由于其依赖未知的中介机构,Tribler是唯一的易感性。BitTorrent协议版本2通过将用于BTIH的散列算法升级到SHA-256来解决此漏洞。捷卡尚不支持协议的版本2,尽管具有比典型的BitTorrent客户端更多的风险。

Tribler在下载Torrent时提供了改进的匿名性。但是,它还配备了内置的功能,用于搜索和发现新种子。这些功能做了不提供任何匿名性。客户机中有用于加密和中继查询的基础设施,但它并不用于这些目的。

搜索从您的客户端发送到ClearText的其他Tribler用户。同样,您的客户可能会收到并响应ClearText中的其他用户的查询。监视网络的任何人都可以看到您搜索的内容以及搜索结果返回给您。但是,他们不能看看 - 如果有什么 - 你选择下载。他们可以推断出在搜索查询后立即开始的任何大数据传输是返回的结果之一。yabo亚博体育下载

搜索由Tribler用户维护的分布式索引维护。它类似于DHT,但包含关于每个洪流的更​​丰富的元数据。默认情况下,搜索查询将针对可选的家庭友好筛选器过滤。过滤器歧视一些种族,头发颜色和性身份。我已经发送了一个变更请求来解决这个问题。

Tribler还有一个内容发现和创建者频道系统。创建一个新的频道并分享内容,或者订阅一个现有的频道都不是匿名的。“Tribler”并没有说明搜索和其他发现方法都是匿名的。项目维护者Vadim Bulavintsev在一次关于Tribler不匿名化这些特性的讨论中yabo亚博体育下载说:

“匿名播种的渠道是毫无意义的,因为频道八卦有效:你是八卦订阅渠道,所以你周围的每个人都知道你订阅了哪些渠道。开放渠道系统激励人们仅与法律和质量内容共享链接。“

Vadim BulaGIntsev,Tribler项目维护者

此评论显示用户预期隐私与项目自己的需求和目标之间的缺点对比。TRIBLER客户端切勿将其传送给用户。没有人希望隐私的软件项目的某些部分不会将与核心软件相同的隐私保留技术。这些功能需要私密,或以其他方式与大型讨厌的隐私警告进行。

整个频道系统是2000年代后期的剩余,当时有多种娱乐的博特客户端,具有内置视频流功能。这些客户们突然地解决了 - 当时 - 过度昂贵的托管和共享视频前景。这些客户有频道,而且想法是他们可以成为创作者的视频平台。然后YouTube伴随着创造者的免费视频托管和货币化机会,以及弥撒的易用性。

Tribler频道对寻求分发其作品的潜在创造者来说是没有吸引力的。他们很难管理;目前尚不清楚你备份,在设备之间移动它,甚至与他人分享您的频道。例如,没有办法获取它或任何其他可共享标识符以用于社交媒体的链接。

它也不适合持不同政见者或其他寻求更私人和隐蔽的地方在网上分享的团体。由于缺乏匿名性,它完全不适合这些群体。它留下了一个努力证明其存在的特征。从大部分过时的频道列表中,我估计人们对它也不感兴趣。甚至连“Tribler”本身也没有使用它的频道功能,或者实际上是他们自己的网络,向“Tribler”发布软件更新。

维护搜索索引和更新通道的网络开销将从您的代币余额中扣除,并支付给其他对等方。由于DHT是如何组织和复制的,这奖励了长寿的同行(总是在线的pc),而牺牲了较短寿命的会话(笔记本电脑)。这就是为什么即使您没有下载任何东西,token余额也会随着时间逐渐减少。

在我的实验中,禁用搜索和频道的功能显着加速了您的令牌从平衡中的令牌的快速即使让客户闲置。从理论上讲,令牌平衡应该只有才能增加,因为您只能通过中继流量参与。但是,我看到相反,令牌余额几乎速度下降。

在设置界面中没有禁用这些功能的选项,但可以通过配置文件禁用它们。请注意,客户端不会隐藏这些特性,当您尝试使用它们时和启动期间,它会打印错误消息。你可以比较准备好的配置文件来学习如何禁用这些功能。

结论

假设您增加了默认的中继计数设置,那么在当前的Tribler版本7.10中,文件传输工作得很好,可以认为比不使用Tribler更私密。在过去的三年里,我一直在关注发行版,而这是第一个得到这样评价的版本。

在我的第一个试验运行的Tribler之一中,我在一台PC上创建了一个Torrent,该PC ranbler,并试图在另一台PC上使用Tribler下载它。但是,文件传输从未启动 - 下载客户端甚至从来都不能够获取Torrent文件以加入群体。在几次测试之后,我发现Tribler无法使用Torrent的磁铁链路从其他Tribler用户下载。从其他BitTorrent客户端下载时,这项工作正常,仅在内部内部内部。我报道了问题它在Tribler版本7.10中得到了修复(发布).对我来说,这个问题透露,即使是核心功能也没有经过良好测试。

项目最近的历史告诉我们,在采用它之前,您需要仔细检查每个版本。将来可能还会添加另一个Torrent Checker特性,或者bug/回归可能会通过libtorrents和其他核心依赖关系悄悄出现。您可以将Tribler与虚拟专用网络(VPN)结合使用,以减少未来任何问题的影响。

该项目的网站在下载按钮下方有一个突出的警告(如下所示)。网站和客户端本身都没有使用搜索和频道等特定功能的警告您的足够作用。应该从“设置”屏幕完全删除成为退出继电器的选项。在不完全理解后果的情况下,它的方式太容易了。

“不要把自己放在危险之中。我们的匿名性尚未成熟。

“Tribler不能保护你免受间谍和政府机构的攻击。我们是torrent客户端,旨在保护您免受基于律师的攻击和审查。在许多志愿者的帮助下,我们不断发展和改进。”

在Tribler网站上警告

那么,你应该使用Tribler来匿名你的bt下载吗?毫无疑问。Tribler的隐私保护和分层加密比什么都不做来掩盖你下载的东西要好得多。您应该理解客户端并不是完美的,它提供的隐私级别因版本而异。除了核心文件传输特性之外,您应该避免使用其他特性。

相关阅读