Live data from Hacker News

Bitcoin over Tor isn't a good idea

arxiv.org

11–20 of 40 posts

Re: Bitcoin over Tor isn't a good idea

#11

" Many of these details do not appear in any specifications and were obtained by a careful analysis of the corresponding source code. This is especially true for Bitcoin for which there exists no official documentation except for the original white paper [14] and Bitcoin Wiki[3]." Well that seems a bit odd.

I'm not sure when they wrote this paper, but this is no longer true. There's some very nice official developer documentation up at: https://bitcoin.org/en/developer-documentation

Also, the Bitcoin Wiki itself is a fairly comprehensive source of documentation (and covers most of the information in the "official" documentation). It even includes an informal protocol specification[1]. It's been around for a very long time.

That said, the information they're referring to is Bitcoin's Tor support (like recognizing OnionCat addresses). I don't think there is much documentation on this specific topic. However, Bitcoin is an open source project and I'm sure any related documentation contributions would be welcome.

1. https://en.bitcoin.it/wiki/Protocol_specification

Re: Bitcoin over Tor isn't a good idea

#12

" Many of these details do not appear in any specifications and were obtained by a careful analysis of the corresponding source code. This is especially true for Bitcoin for which there exists no official documentation except for the original white paper [14] and Bitcoin Wiki[3]." Well that seems a bit odd.

I'm not sure when they wrote this paper, but this is no longer true. There's some very nice official developer documentation up at: https://bitcoin.org/en/developer-documentation Also, the Bitcoin Wiki itself is a fairly comprehensive source of documentation (and covers most of the information in the "official" documentation). It even includes an informal protocol specification[1]. It's been around for a very long ti…

According to the site it was submitted Oct 22, 2014. So yesterday. It's still an interesting read and I'm sure it holds validity but this bothered me.

Re: Bitcoin over Tor isn't a good idea

#13
post #10

" Many of these details do not appear in any specifications and were obtained by a careful analysis of the corresponding source code. This is especially true for Bitcoin for which there exists no official documentation except for the original white paper [14] and Bitcoin Wiki[3]." Well that seems a bit odd.

> Well that seems a bit odd. Everything known about Bitcoin comes from people directly reading the source code. That's all that was originally released next to the paper. Everything since then has been based on careful review of the source code and writing additional documentation from that understanding. Edit: the documentation (that your reply is referring to) exists now because people spent the time reading the so…

The part that seems odd to me is that with all these developers, students, researchers, and curious users nobody documented it according to the paper. Which as stated by another user doesn't seem to be the case.

Re: Bitcoin over Tor isn't a good idea

#14
post #9

" Many of these details do not appear in any specifications and were obtained by a careful analysis of the corresponding source code. This is especially true for Bitcoin for which there exists no official documentation except for the original white paper [14] and Bitcoin Wiki[3]." Well that seems a bit odd.

You have no idea how deep that rabbit hole goes. Bitcoin Core is referred to as a "reference implementation", which means "you should implement all bugs referenced by Bitcoin Core in transaction verification, or you have your choice of being kicked off the Bitcoin consensus immediately, which is bad, or at any point of an attacker's choosing, which is catastrophic."

What a wonderful idea. /s

Although I understand it to an extent. The core of software wouldn't be the core if it wasn't always used.

Re: Bitcoin over Tor isn't a good idea

#16
This is interesting in that it highlights a number of problems that every peer-to-peer network that wishes to use something like Tor for privacy needs to take into account.

I also wasn't aware that Tor hidden services can be "blackholed" so easily (it sounds like this is probably well known to regular Tor users, though).

Re: Bitcoin over Tor isn't a good idea

#17
post #9

" Many of these details do not appear in any specifications and were obtained by a careful analysis of the corresponding source code. This is especially true for Bitcoin for which there exists no official documentation except for the original white paper [14] and Bitcoin Wiki[3]." Well that seems a bit odd.

You have no idea how deep that rabbit hole goes. Bitcoin Core is referred to as a "reference implementation", which means "you should implement all bugs referenced by Bitcoin Core in transaction verification, or you have your choice of being kicked off the Bitcoin consensus immediately, which is bad, or at any point of an attacker's choosing, which is catastrophic."

That's the way a blockchain works though. If there is a bug in the client that 99% of people use then of course you'll have forking blockchains. And all of this matters less anyway, because clients can fallback to blockchain.info if there is a fork detected, and just warn the user that the client may have a bug.

Re: Bitcoin over Tor isn't a good idea

#18
post #10

Earlier quoted context omitted.

> Well that seems a bit odd. Everything known about Bitcoin comes from people directly reading the source code. That's all that was originally released next to the paper. Everything since then has been based on careful review of the source code and writing additional documentation from that understanding. Edit: the documentation (that your reply is referring to) exists now because people spent the time reading the so…

The part that seems odd to me is that with all these developers, students, researchers, and curious users nobody documented it according to the paper. Which as stated by another user doesn't seem to be the case.

Documentation produced that way is actually consistent with the statement you first quoted. I think what is happening here is that the researchers, being properly careful, verified what the software does, rather than trust to descriptions by others.

If there had been a formal specification, I imagine they would have both analyzed the specification for vulnerabilities, and checked the code for correct implementation.

Re: Bitcoin over Tor isn't a good idea

#19
post #9

Earlier quoted context omitted.

You have no idea how deep that rabbit hole goes. Bitcoin Core is referred to as a "reference implementation", which means "you should implement all bugs referenced by Bitcoin Core in transaction verification, or you have your choice of being kicked off the Bitcoin consensus immediately, which is bad, or at any point of an attacker's choosing, which is catastrophic."

That's the way a blockchain works though. If there is a bug in the client that 99% of people use then of course you'll have forking blockchains. And all of this matters less anyway, because clients can fallback to blockchain.info if there is a fork detected, and just warn the user that the client may have a bug.

> because clients can fallback to blockchain.info if there is a fork detected

Unfortunately bc.i's implementation/instance is not immune to bugs, forking, lying or collusion. I don't know why you would expect it to be.

Re: Bitcoin over Tor isn't a good idea

#20
post #19

Earlier quoted context omitted.

That's the way a blockchain works though. If there is a bug in the client that 99% of people use then of course you'll have forking blockchains. And all of this matters less anyway, because clients can fallback to blockchain.info if there is a fork detected, and just warn the user that the client may have a bug.

> because clients can fallback to blockchain.info if there is a fork detected Unfortunately bc.i's implementation/instance is not immune to bugs, forking, lying or collusion. I don't know why you would expect it to be.

The point is that it is a trusted enough party. If the client gets a suspicious block it can check against that party as a way of seeing if the client itself may have a bug.
Post reply on HN