Jump to content

Protocol Encryption


Gonzakpo

Recommended Posts

Hello everyone. I'm new here. First I want to mention that I'm from Argentina and English isn't my native language so if you find any spelling mistakes you know why.

I'm creating this new thred because I think I have a pretty good idea. Everything started when my ISP decided to throttle bittorrent which is one of the programs I use most.

Right now I'm pretty angry with ISP's in general. I've been reading A LOT and this is happening all over the world (France, Malasya, EEUU, etc). For more information: http://www.azureuswiki.com/index.php/Bad_ISPs

A lot of people is feeling conned by the ISP's because they charge you for bandwidths you can't use. As an example: I have a 640kb/s connection but using bittorrent I only get speeds of up to 10kB/s!! This is a joke!

Well, I've also been searching this forum and I found some old solutions (like enabling the encryption, but isn't effective anymore). The only possible solution is to use a VPN or pay for another service to "secure" your connections (i.e. HTTP-TUNNEL). Right now I'm using a free VPN but the bandwidth is limited so is more or less the same. In addition, people in poor economic conditions can't afford another service besides the ISP.

In the feature request section of the forum I found a thread asking for a deeper encryption in order to bypass the ISP throttling (which probably is "deep packet inspection") but a moderator answered him that doing that would increment the CPU and RAM usage so it wasn't a good idea.

Well, at last, here's my idea. First I wan't to say that I'm not a real programmer (I have a basic knowledge of C++, basic and assembler) and also I have no time to develope anything (very busy studying electronics at University :S) but I wanted to post my idea. Maybe someone likes it.

NOTE: THIS IS NOT A FEATURE REQUEST, THAT'S WHY I DIDN'T CREATE THE TOPIC THERE.

Today I found a program called "GreedyTorrent" which creates some sort of proxy in your computer in order to boost your upload ratio (faking it). The only thing you have to do is configure utorrent to use that proxy. I really don't know how it works but it's highly probable that it modifies in some sort the comunication between the client and the tracker.

Well, my idea is very similar to that but instead of faking the upload ratio why don't apply a depper encryption?. You might be wondering "but is the same thing the moderator rejected!". Yes it is!, but this wouldn't be a feature of utorrent. Instead it would be a completely different app (that's why I'm creating the topic here, in general). That way we could be able to change the encryption method anytime without modifying the client.

Imaginary situation: the whole world uses utorrent+"encryption client" (let's name it like that) ->bittorrent network works alright -> ISP's of the whole world start blocking bittorrent packets -> bittorrent network collapses -> bittorrent developers change the encryption method -> everyone update the encryption client -> bittorrent network is up again! :)

Probably ISP's will find another throttling method but meanwhile everyone is happy! :)

I know my ideas are VERY ideal. Probably I'm not considering lots of things. This is just an idea. I think that almost all ISP's throttle P2P using HARDWARE so if we constantly change the encryption method they wouldn't be able to constantly change the hardware (I know they could change just the firmware but remember that is just hardware, it just can't decrypte anything). Let's put it this way: is a fight between a PC and a uC (Microcontroller), you know who is going to win ;). One day we'll find an encryption method they can't decrypte, and the day they figure it out, we will change it for another. As simple as that.

Well, enough nonsenses for today. If at least 1 person likes my idea, I won't regret of writing this jeje.

Regards,

Gonzalo

P.D: Of course, the encryption method MUST NOT be open source in order to keep it secret as long as we can. Let's make them use reverse engineering muajaja.

Link to comment
Share on other sites

The problem with BitTorrent file-sharing is it doesn't matter HOW encrypted the packets+connections are...if your ISP can still read send/receive ips for the packets, the rate at which packets are sent/received, or any other patterns...such as all incoming connections routing to 1 port. It's a dead giveaway. It doubly sucks that encrypted traffic is forced on the same incoming port as unencrypted stuff. If the ISP throttles that port because they saw ANY unencrypted traffic (possibly a BitTorrent client that doesn't support encryption or mis-sent due to bug/s)...you're still hosed.

Only your random outgoing ports might escape their wrath, but there'd be no rhyme or reason to your speeds that result.

Many ISPs have started throttling ANY time they see more than "X" connections being made at once. Or just plain BLOCK more than "X" connections at once. ...And I've heard of "X" being set as low as 40. This would count both accidental (and virus/trojan) 'random noise' internet packets, both your incoming AND outgoing BitTorrent traffic, and your web surfing. 40 connections at once is ALL too easily reached with BitTorrent. It is extremely hard to get it under 20 connections except on nearly-dead torrents...and only running 1 or 2 at a time. :(

Link to comment
Share on other sites

Besides Switecks arguments encryption requires decryption. You could setup a special proxy that encrypts stuff but it has to be decrypted at the other end (peers and seeds you send/receive data from). Which means people would have to install that proxy too even if their traffic isn't throttled. Chances of that are nil (unless its enforced through the clients) which means you could only transfer to other people who are throttled by their ISP and have therefore installed the same proxy.

With this and Switecks arguments in mind the only option left is to switch to another ISP which doesn't throttle Bittorrent traffic.

Link to comment
Share on other sites

OK, thanks for the feedback.

I know that changing the ISP is the best and easiest solution but keep in mind that a lot of ISPs are considering to throttle p2p. And you probably already know that several legal entities (RIAA, etc) are pushing the ISPs to adopt p2p throttling.

Anyway, it was just an idea. I'm not trying to defend it. I just want you (programmers) to keep in mind that p2p throttling is a real problem and a threat to the bittorrent network in general (not just utorrent).

Lord Alderaan: I didn't realise that, you are right. But, what the hell, if is the only way in order to make bittorrent network survive I don't care about my CPU resources (ram, processor, etc).

Maybe I'm being a "little" extreme but I'm pretty sure that one day or another all ISPs will start blocking p2p networks. So it's a good idea to be prepared for that.

Probably this is my last question: Is it imposible to assing diferents ports for transmitions? For example, using a maximun of 20 transmitions (with transmition I mean a comunication between the host (my computer) and another IP (other computer in another part of the world)) for each port. If you want to comunicate with (this is an example) 100 diferents IP's (computers) utorrent will assing 5 diferent ports. That way we could avoid the "max connection per port throttling" that Switeck mentioned.

And also those connections should be encrypted in order to bypass the "deep packet inspection".

Remember: these are just IDEAS, I'm not asking for anything.

Well, I know this is never going to happen. But hoppefully someone reads my idea and starts developing something similar (crossing my fingers now :P).

That's all for now. Bye.

Link to comment
Share on other sites

I didn't just say "max connection per port", I said max connections period. So even if you keep your BitTorrent connections low, if you also open even a single web page with some ads on them (typically hosted on other servers)...then you can easily blow by 40 connections total at least for a moment.

The solution is a very angry outcry in places with no other choice. And voting with your wallet when/where there are other choices.

Link to comment
Share on other sites

You idea's weren't wrong. It is just very likely if ISPs know how to see through the currently encryption they have the knowledge to see through more advanced encryption. And if they can't see through it they'll resort to measures like Switeck talked about.

In the end the best way to prevent this from happening is switching ISP when they start to throttle. If they lose a fair share of their customers over it they won't could care about what RIAA/MPIAA want.

Thats probably why Bram wasn't even in favor of the current encryption.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...