Author

Topic: [Concept / Question] Bitcoin Hidden Services (Read 203 times)

legendary
Activity: 1568
Merit: 6660
bitcoincleanup.com / bitmixlist.org
September 29, 2022, 09:01:13 AM
#7
--snip--

FYI, it was proposed under BIP 151. Although it was withdrawn on 2019.

You already have end-to-end encryption: Start a Tor relay and add onlynet=tor to your bitcoin.conf. Now this will encrypt your connection without relying on a server-issued certificate, as there is no centralized server in this case.

I know we already can use Tor (or even I2P) to perform end-to-end encryption. But it's not part of rule which handle connection between nodes and not everyone would bother setup and use Tor/I2P.

As the comments section of BIP 151 says, an end-to-end encrypted P2P protocol won't actually stop surveillance (besides they can just use block explorers instead), or if somebody decided to make their blocks public, then any encrypted blocks and tx's sent to another node would be irrelevant as an interested party could just make the blocks available to someone else e.g. if a government agency runs a node then they can just inspect the data from the disk without involving the network.

JSON-RPC calls, however, are a different story. I would surely like Bitcoind to autogenerate a self-signed SSL certificate that is only used for HTTPS calls. If we can find a way to do this without OpenSSL, that would be great. I do not like the idea of passwords being sent unencrypted at all, and stunnel is too much of a PITA to set up - nobody will bother trying.
legendary
Activity: 1568
Merit: 6660
bitcoincleanup.com / bitmixlist.org
September 29, 2022, 06:37:05 AM
#6
It can't be currently implemented on every node, because Bitcoin nodes don't talk end-to-end encrypted, and end-to-end encryption is necessary to insure anonymity. Such feature would require change in the way they communicate. It'd be better if, instead of changing Bitcoin Core, you just installed an addon.

FYI, it was proposed under BIP 151. Although it was withdrawn on 2019.

You already have end-to-end encryption: Start a Tor relay and add onlynet=tor to your bitcoin.conf. Now this will encrypt your connection without relying on a server-issued certificate, as there is no centralized server in this case.
legendary
Activity: 2870
Merit: 7490
Crypto Swap Exchange
September 28, 2022, 07:19:39 AM
#5
Now back to the questions of "Why do this if Tor already exists?" and "What inherit benefit would this have for bitcoin, why does bitcoin need this ability?"
I don't have an answer other than it sounds fun, and I suppose it doesn't need this but I don't think it would be detrimental to bitcoin if it had this ability either, if anything it just adds additional functionality and creates an alternative to Tor hidden services. Mostly I just think it would be really cool to host a blog or something on the bitcoin network.

At very least, it'd increase burden of running full node and development of full node software (Bitcoin Core, btcd, gocoin, etc.).

It can't be currently implemented on every node, because Bitcoin nodes don't talk end-to-end encrypted, and end-to-end encryption is necessary to insure anonymity. Such feature would require change in the way they communicate. It'd be better if, instead of changing Bitcoin Core, you just installed an addon.

FYI, it was proposed under BIP 151. Although it was withdrawn on 2019.
legendary
Activity: 2170
Merit: 1789
September 28, 2022, 04:24:42 AM
#4
If I remember correctly some altcoin projects are trying to do this but most of them failed. It is not that appealing for users and the use case does not outweigh the benefits. I think trying to do the same thing with Bitcoin will end up the same. No reason to change something that works well for its intended purpose just for something cool. Hosting my blog on a blockchain sounds cool, but no reason for me to do that if I can achieve it with IPFS or other decentralized networks as well.
legendary
Activity: 1512
Merit: 7340
Farewell, Leo
September 27, 2022, 09:20:40 AM
#3
It can't be currently implemented on every node, because Bitcoin nodes don't talk end-to-end encrypted, and end-to-end encryption is necessary to insure anonymity. Such feature would require change in the way they communicate. It'd be better if, instead of changing Bitcoin Core, you just installed an addon.

I don't find utility. Stamping your network address on the blockchain means it won't be altered, but that's all. It doesn't provide any (other) benefit; pretty much the opposite, it makes things work more costly. Tor nodes can't change your network address either, because all they see is encrypted messages. As long as you own the private key of the onion address, you do get censorship resistance.

I'm reminding you that we use a blockchain to prevent double-spending.
copper member
Activity: 2856
Merit: 3071
https://bit.ly/387FXHi lightning theory
September 26, 2022, 07:21:45 PM
#2
It's possible (ignoring the why we tor already functions and there are other services like i2p).

The closest to something like this is namecoin but I don't know how anonymous that'll make you (or if it will - I've seen suggestions you'll void anonymity by sending funds from your web address to an exchange for example would obviously tell the exchange what you're hosting).

newbie
Activity: 6
Merit: 7
September 26, 2022, 07:08:20 PM
#1
I'm still learning Tor and networking in general but feel that I have a working understanding, so apologies in advance if this post is just stupid.

I've recently fallen down a rabbit hole that started with the question "Can I host a website on the bitcoin network?" which basically evolved into "Can the bitcoin network function as the Tor network?"

Ignore for a second why you would want to do this if Tor already exists, or what the inherit benefit would be for doing this, because it's really just a question of "is this possible?"

Is there a protocol for hosting hidden services on the bitcoin network already? I think it would be a neat project to try working on if no one else has done so.

I imagine it working practically the same as Tor, my node would use onion routing to create circuits to introduction point nodes on the network. It would be cool if the hidden service descriptor's public key could be an address, it could be used as a URL to reach the node at some port serving HTML or whatever.

This way I can also just give someone a bitcoin address, they'd reference it on a hash-table and get back the nodes acting as introduction points to my hidden service. As with Tor they chose a rendezvous node, sending an authentication token and requesting that message be passed along to the introduction point, the introduction point passes it to my hidden service, my hidden service sends back the token and an approval message to the rendezvous node, the node acts as another hop in the circuit between the requester and my hidden service completing the connection.

Now back to the questions of "Why do this if Tor already exists?" and "What inherit benefit would this have for bitcoin, why does bitcoin need this ability?"
I don't have an answer other than it sounds fun, and I suppose it doesn't need this but I don't think it would be detrimental to bitcoin if it had this ability either, if anything it just adds additional functionality and creates an alternative to Tor hidden services. Mostly I just think it would be really cool to host a blog or something on the bitcoin network.

I would appreciate feedback, even if it's just to explain why this is a dumb idea. I'm still new to doing development in this space and still learning, I'm trying to see how things are related and learning hands on the inner workings of these systems and protocols, just figuring out what all is even possible.

I'm not even sure if any of this would be possible without introducing a new BIP or if it could be possible as a separate piece of software that is just dependent on bitcoin core. I don't believe that bitcoin core has the functionality to do this type of network communication and onion routing and it most certainly doesn't have a hash-table that would be needed to find the introduction points from the provided address.

Again any feedback would be greatly appreciated. Thank you.



Jump to: