Bitcoin Forum

Bitcoin => Development & Technical Discussion => Topic started by: gigabytecoin on May 04, 2011, 08:31:23 PM



Title: The BTC Client Should Randomly Change Ports Every So Often, And Encrypt Traffic!
Post by: gigabytecoin on May 04, 2011, 08:31:23 PM
Quite a large order I am aware... but perhaps we could borrow some code from the bittorrent/utorrent projects?

One of the problems that torrents faced a year or two ago was "throttling" or traffic shaping by ISPs. Read: meddling with consumer's software programs via the net.

If I am not mistaken, the port randomization and traffic encryption abilities of torrent clients got around this.

Perhaps constantly rotating ports would not be possible without some sort of centralized tracker that torrents make use of? But surely it would be possible to eliminate any "signatures" that bitcoin might leave in it's transmission messages by encrypting the data.


Title: Re: The BTC Client Should Randomly Change Ports Every So Often, And Encrypt Traffic!
Post by: goblin on May 04, 2011, 08:35:31 PM
Quite a large order I am aware... but perhaps we could borrow some code from the bittorrent/utorrent projects?

One of the problems that torrents faced a year or two ago was "throttling" or traffic shaping by ISPs. Read: meddling with consumer's software programs via the net.

If I am not mistaken, the port randomization and traffic encryption abilities of torrent clients got around this.

Perhaps constantly rotating ports would not be possible without some sort of centralized tracker that torrents make use of? But surely it would be possible to eliminate any "signatures" that bitcoin might leave in it's transmission messages by encrypting the data.
Would be very handy to have one single framework for p2p applications that would handle all this stuff...

But before it's done and before all p2p networks are migrated to it... ;-)

You can use bitcoin via tor, there should be several nodes available as a hidden service.


Title: Re: The BTC Client Should Randomly Change Ports Every So Often, And Encrypt Traffic!
Post by: SmokeTooMuch on May 04, 2011, 09:33:02 PM
Use Tor for encryption, then your ISP do not know that you are having Bitcoin traffic.
As long as there is an exit node in your circuit that's ISP allowes bitcoin traffic we should be safe.

And I'm not sure about the ports. Since we do not need to forward the port to have bitcoin work, I don't know if it was a problem if every network participant would have this port closed. So mabye port rotating isn't necessary, but I do not know for sure.


Title: Re: The BTC Client Should Randomly Change Ports Every So Often, And Encrypt Traffic!
Post by: gigabytecoin on May 06, 2011, 08:02:30 PM
Use Tor for encryption, then your ISP do not know that you are having Bitcoin traffic.
As long as there is an exit node in your circuit that's ISP allowes bitcoin traffic we should be safe.

And I'm not sure about the ports. Since we do not need to forward the port to have bitcoin work, I don't know if it was a problem if every network participant would have this port closed. So mabye port rotating isn't necessary, but I do not know for sure.

It's not about ports being opened or closed on the router, it's about hiding your traffic from the ISPs so that they do not know you are running torrents, bitcoins, etc...


Title: Re: The BTC Client Should Randomly Change Ports Every So Often, And Encrypt Traffic!
Post by: wumpus on May 07, 2011, 08:19:55 AM
Would be very handy to have one single framework for p2p applications that would handle all this stuff...
Indeed. Bitcoin shouldn't try to re-invent the wheel in this regard, but use a time-tested protocol such as Tor.

Ideally by using peers that are hidden services so you don't have to rely on exit nodes (which are possibly doing timing attacks).


Title: Re: The BTC Client Should Randomly Change Ports Every So Often, And Encrypt Traffic!
Post by: Vandroiy on May 07, 2011, 03:15:31 PM
Sigh. What ISP is stupid enough to deliberately block his client from doing money transactions? Seriously, if an ISP does that, it's high time to get a different one.

Maybe they mistake it for a small part of some high-volume p2p traffic though. I just recently was shocked to notice how many people have heavily throttled or otherwise sabotaged connections. If you want to work around that, you'll be fighting a battle against the people routing your traffic, who don't want to actually do their job. This should be a last resort, if there exists no functioning provider. If they change the rules, the adaption becomes useless, and the cycle repeats.

My suggestion to those having the problem: first try to fight the root of the problem, by getting a provider that delivers without asking people to perform a little dance first.