5

Dan Kaminsky has pointed out that it would be possible to build a service that tries to infer the source IP address of each Bitcoin transaction. His idea, which he calls Blitcoin, works by maintaining connections to all nodes in the peer-to-peer network and noting the IP address of the first node to report the transaction. This won't always be the IP address of the source of the transaction (for instance, there are a number of ways to hide one's IP address), but sometimes it might be.

Has anyone built such a service? How often does it work, in practice? Are there any commercially available services that have maintained past archives of this information?

1

This secure, private, untraceable C++ implementation of the I2P anonymous network being developed for Monero could eventually be of use for Bitcoin too. It will address the IP address issue you are asking about.

Metadata related privacy issues continue to be researched both by those who want to perform blockchain analysis and those who want to protect the privacy of users

https://github.com/monero-project/kovri

Why I2P over Tor? https://www.reddit.com/r/Monero/comments/2ti53m/why_is_monero_aiming_to_integrate_i2p/

  • 1
    Thank you for your contribution, but this doesn't appear to answer the question that was asked. The question was "Has anyone built such a service?" It wasn't "Is there some other protocol that doesn't have this problem?". Please reserve the answer box for material that answers the question that was asked. We are a question-and-answer site, not a discussion forum, so we expect answers to answer the question, not to be merely discussion of related topics. Thank you! – D.W. May 22 '16 at 0:11
1

So a node that creates a transaction needs to propagate it. It will connect to other nodes. Usually to some reasonable number like 8 nodes (please see getpeerinfo on your client).

As a mental exercise: If the 8 nodes (that I randomly selected from the network) belong to the same person, that person will have the possibility to capture 100% of my traffic. My IP address will be known, but also there could be a selective attack that prevents my transaction from being broadcasted (i.e. he/she decides to drop it based on my sending bitcoin address).

The more nodes the attacker has, the more chances to have all outgoing connections from the victims plus the possibility to do data analysis. Also more chances of dropping (selected or random) transactions.

I don't know the economics behind an attack of this nature. Buying 5000 VMs to run nodes could cost a lot.

Examples are out there that they ask for bitcoin to set up full nodes, like https://classic-cloud.net/ [1]. as 2016-04-01 they have 810 nodes running. So you can imagine that they could be able to track some transactions to IPaddress.

Edit: [1] as of 2019-05-17 this is not longer a page that has stats about nodes, but rather a blog.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.