BitTorrent protocol encryption: Difference between revisions

Content deleted Content added
Rescuing 1 sources and tagging 0 as dead.) #IABot (v2.0
Citation bot (talk | contribs)
m Alter: first. Removed parameters. | You can use this bot yourself. Report bugs here. | Activated by User:Grimes2 | via #UCB_webform
Line 23:
* [[Deluge (BitTorrent client)|Deluge]] supports MSE/PE as of Deluge-0.5.1.<ref>{{cite web|url=http://deluge-torrent.org/?p=15|title=Changelog: Deluge 0.5.1 (11 June 2007)|publisher=Deluge-torrent.org|date=2007-06-11|archiveurl=https://web.archive.org/web/20080401062051/http://deluge-torrent.org/Changelog.php |archivedate=2008-04-01}}</ref>
* [[KTorrent]] implemented MSE/PE in SVN version 535386<ref name="ktorrent">[[Subversion (software)|SVN]] [svn://anonsvn.kde.org/home/kde/trunk/extragear/network/ktorrent server]. KDE.org. 2006-04-29.'''Subversion client required'''.</ref> on April 29, 2006.<ref>{{cite web|url=http://ktorrent.pwsp.net/forum/viewtopic.php?t=432|title=Encryption has been added !|publisher=KTorrent.pwsp.net forum|date=2006-04-29|archiveurl=https://web.archive.org/web/20070605174155/http://ktorrent.pwsp.net/forum/viewtopic.php?t=432 |archivedate=2007-06-05}}</ref>
* [[libtorrent]]<ref>{{Cite web|url=http://www.libtorrent.org/reference-Settings.html|title=www.libtorrent.org/reference-Settings.html|last=arvid@libtorrent.org|first=Arvid Norberg,|website=www.libtorrent.org|language=en|access-date=2017-02-16}}</ref> implemented protocol encryption in v0.13<ref>{{Cite web|url=https://github.com/arvidn/libtorrent/blob/master/ChangeLog|title=libtorrent/ChangeLog at master · arvidn/libtorrent · GitHub|website=github.com|language=en|access-date=2017-02-16}}</ref> released on 10 December 2011.<ref>{{Cite web|url=http://permalink.gmane.org/gmane.network.bit-torrent.rtorrent.devel/2525|title=Gmane -- Mail To News And Back Again|website=permalink.gmane.org|access-date=2017-02-16}}</ref>
* [[rTorrent]] supports MSE/PE as of rTorrent-0.7.0.<ref>{{cite web |url=http://rakshasa.no/pipermail/libtorrent-devel/2006-December/000982.html |title=[Libtorrent-devel] LibTorrent 0.11.0 and rTorrent 0.7.0 released |publisher=Rakshasa.no mail archive |date=2006-12-13 |access-date=2007-06-10 |archive-url=https://web.archive.org/web/20070502055625/http://rakshasa.no/pipermail/libtorrent-devel/2006-December/000982.html |archive-date=2007-05-02 |url-status=dead }}</ref>
* [[Transmission (BitTorrent client)|Transmission]] supports MSE/PE as of Transmission-0.90.<ref>{{cite web|url=http://transmission.m0k.org/forum/viewtopic.php?t=2631|title=Transmission 0.90 Released! |publisher=Transmission.m0k.org forum|date=2007-10-24|archiveurl=https://web.archive.org/web/20071027022525/http://transmission.m0k.org/forum/viewtopic.php?t=2631|archivedate=2007-10-27}}</ref>
Line 45:
== Effectiveness ==
 
Analysis of the BitTorrent protocol encryption (a.k.a. MSE) has shown that statistical measurements of packet sizes and packet directions of the first 100 packets in a TCP session can be used to identify the obfuscated protocol with over 96% accuracy.<ref name="breaking">{{cite web|url=http://www.iis.se/docs/hjelmvik_breaking.pdf|title=Breaking and Improving Protocol Obfuscation |format=PDF |last1=Hjelmvik |first1=Erik |last2=John |first2=Wolfgang |date=2010-07-27 |publisher=Department of Computer Science and Engineering, [[Chalmers University of Technology]] |issn=1652-926X}}</ref>
 
The [[Sandvine]] application uses a different approach to disrupt BitTorrent traffic by making seeding impossible. Sandvine intercepts peer-to-tracker communication to identify peers based on the IP address and port numbers in the peer list returned from the tracker. When Sandvine later sees connections to peers in the intercepted peer lists, it may (according to policy) break these connections by sending counterfeit TCP resets. Various solutions exist to protect against Sandvine's attack including encrypting both peer-to-tracker and peer-to-peer communication, using Microsoft's [[Teredo tunneling|Teredo]] so that TCP connections are tunneled within UDP packets, filtering TCP resets before they reach the TCP layer in the end-host, or switching entirely from a TCP-based transport to a UDP-based transport. Each solution has its trade-offs. Filtering out TCP resets typically requires kernel access, and the participation of the remote peer since Sandvine sends the reset packet to the local and remote peers.{{citation needed|date=September 2012}}