Re: [Bitcoin-development] Outbound connections rotation

2014-08-18 Thread Gregory Maxwell
On Mon, Aug 18, 2014 at 2:02 PM, Ivan Pustogarov wrote: > For each neighbour, a Bitcoin peer keeps the history of addresses that > it forwarded to the neighbour. If an address was already forwarded > to a neighbour it is not retransmitted again. Okay, sorry, I thought you were saying something el

Re: [Bitcoin-development] Outbound connections rotation

2014-08-18 Thread Ivan Pustogarov
For each neighbour, a Bitcoin peer keeps the history of addresses that it forwarded to the neighbour. If an address was already forwarded to a neighbour it is not retransmitted again. An attacker can make a list of potential IP addresses of clients (say an IP range of an ISP, or listen for address

Re: [Bitcoin-development] Outbound connections rotation

2014-08-18 Thread Gregory Maxwell
On Mon, Aug 18, 2014 at 1:33 PM, Ivan Pustogarov wrote: > The attack I'm trying to address is described here: > https://www.cryptolux.org/index.php/Bitcoin > It was discussed here: https://bitcointalk.org/index.php?topic=632124.0 > > It uses the following observation. Each NATed client connects t

Re: [Bitcoin-development] Outbound connections rotation

2014-08-18 Thread Ivan Pustogarov
The attack I'm trying to address is described here: https://www.cryptolux.org/index.php/Bitcoin It was discussed here: https://bitcointalk.org/index.php?topic=632124.0 It uses the following observation. Each NATed client connects to the Bitcoin network through 8 entry peers; he also advertises h

Re: [Bitcoin-development] Outbound connections rotation

2014-08-18 Thread Gregory Maxwell
On Mon, Aug 18, 2014 at 11:37 AM, Ivan Pustogarov wrote: > the same for a long time, an attacker which does not have any peers at all > but just listens the Bitcoin network can link together differed BC addresses > and learn the IP of the client. I don't understand what you're talking about here;

Re: [Bitcoin-development] Outbound connections rotation

2014-08-18 Thread Ivan Pustogarov
Yes, I agree that if a client rotates its outbound connections then sooner or later he will connect to a malicious peer. This case considers an attacker which has some peers in the network. E.g. renting 500 IP addresses for 0.01 USD per IP per hour will cost 3600 USD per month: doable but still not

Re: [Bitcoin-development] Outbound connections rotation

2014-08-18 Thread Pieter Wuille
Yes, I believe peer rotation is useful, but not for privacy - just for improving the network's internal knowledge. I haven't looked at the implementation yet, but how I imagined it would be every X minutes you attempt a new outgoing connection, even if you're already at the outbound limit. Then, i

Re: [Bitcoin-development] Outbound connections rotation

2014-08-18 Thread Mike Hearn
> > Connection rotation would be fine for improving a node's knoweldge > about available peers and making the network stronger against > partitioning. > It's also the first/next step towards decentralising the DNS seeds (for SPV clients), as it'd allow each node to explore the network and return b

Re: [Bitcoin-development] Outbound connections rotation

2014-08-18 Thread Gregory Maxwell
On Mon, Aug 18, 2014 at 9:46 AM, Ivan Pustogarov wrote: > Hi there, > I'd like to start a discussion on periodic rotation of outbound connections. > E.g. every 2-10 minutes an outbound connections is dropped and replaced > by a new one. Connection rotation would be fine for improving a node's kno

Re: [Bitcoin-development] Outbound connections rotation

2014-08-18 Thread Jeff Garzik
Simply by observing timing from sufficiently geo-graphically and network-ly dispersed nodes, you may deduce the original broadcaster of a transaction. Rotating peers doesn't help. That said, periodic rotation can be helpful. Every 2-10 minutes is excessive. On Mon, Aug 18, 2014 at 12:46 PM, Iv