Bitcoin Core onion-grater profile

Ok. So I don’t believe there is a problem with my onion-grater profile, but something strange happens.

Sometimes when restarting onion-grater, bitcoind gets a ServiceID, sometimes it can’t authenticate although onion-grater replied correctly that it could authenticate.

1 Like

I am not sure upstream will accept the bug report because of the mention of onion-grater. Their position could be “that needs to be fixed in onion-grater than”. If the issue could be re-produced without onion-grater and only with Tor, then the argument be much stronger. Could this be reproduced by simply reloading or restarting Tor?
From my experience, bug reports generally, with such complexity have very low chance of being acted on by upstream.

Unfortunately no. I tested on a debian qube running bitcoind with local tor, this does not occurr.

I tried to make the bug “simpler” but it does not happen without onion-grater. This does not mean its onion-grater fault, because it replies correctly. But maybe bitcoind doesn’t wait for it to reply? Not sure.

Tested on debian by restarting tor, as that is the way to close the control connection as there is no proxy. Bitcoind can always add onion. But on Whonix with onion-grater, it does not always works, don’t know why.

1 Like

This makes me think that if you want to be a listening node to contribute to the network, you should set listenonion=0 and set the onion serivce manually on the gateway. This way there is no need to worry about onion-grater.

Everything has pros and cons.

1 Like

If there’s an inconsistency between Tor’s and onion-grater’s behavior it could be blamed on onion-grater. Could be demanded to act exactly as Tor.

The problem is onion-grater replies correctly, so I don’t know how to open that issue.
If I use tor-ctrl to add the onion it works, but with onion-grater + bitcoind, sometimes it works, sometimes not, which is pretty weird.

bitcoind tor and onion-grater logs

I mean, maybe someone could try this on Tails, but bitcoin core is not installed by default and they may say “Unsupported” or whatever. But onionshare is installed on Tails, so someone might try to test onionshare and then restart onion-grater and see what happens to the onion.

I absolutely do not mind being removed as maintainer, but “did not reply in time” after only 20 days is retarded.

It’s been a while since we’ve seen qubenix — their last post was 2 years ago.

First, this is what I see above your post ^^.
So great that you are back, I’ve been following your guide, excellent.
Last post 2 years ago, last time active 1 year ago.

Great, I just did not wanted to be blocked by having to wait a long time for your reply.

s/retarded/not enough time for me
From the point I made the PR was 20 days, compared to now its been a month.

Did I wait a long time, I don’t know, that is relative, how much time do you want me to wait next time? Do you have any complains against the onion-grater profile?

1 Like

Thanks, merged!

Created minimal documentation just now:
Bitcoin Core - Whonix chapter Tor Control Protocol in Whonix wiki

I’ve made a new PR this time changing the onion-grater profile for bitcoind. The problem with previous profile is that it incorrectly assumes that bind=0.0.0.0:8334=onion needs to be used when bind=10.152.152.XX:8334=onion works perfectly fine. This change will allow for bitcoin-cli -netinfo to correctly classify incoming onion connections as onion instead of npr.

I also escaped the dots in the patterns.

https://github.com/Whonix/onion-grater/pull/7

1 Like

Comments?

@qubenix are you still available as a maintainer for the Bitcoin Core onion-grater profile?

0.0.0.0 works on Qubes-Whonix and Non-Qubes-Whonix, while 10.152.152.X is Non-Qubes-Whonix.

As you allowed both addresses, I’m fine with that.

Untested.

1 Like

Good point. It would not matter if bitcoind detected those connections correctly as onion connections. It might be possible to match the Qubes IP range likewise.

@Patrick

I found typos in my PR. On each line with \d{1.3}, it should be \d{1,3}

1 Like