-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix Bisq 2 onion-grater profile #11
Fix Bisq 2 onion-grater profile #11
Conversation
- Remove deprecated SETEVENTS command - Add missing ADD_ONION pattern and replacement - Fix HS_DESC UPLOAD pattern and replacement - Add missing HS_DESC FAILED pattern and replacement Ref: bisq-network/bisq2#1894
Hi @adrelanos, I'm one of the Bisq core contributors and worked on the Bisq 2 Whonix support over the last few weeks. Bisq used the jtorctl library from the Tor Project [1] until now. Unforunately, is is not maintained by the Tor Project anymore and outdated. We re-implemented the Tor Control Protocol in Java to add Whonix/onion-grater support. This commit and the commits in Bisq are signed with the same GPG key (see [2] and [3]). [1] https://github.com/torproject/jtorctl |
- pattern: '650 HS_DESC FAILED (\S+) \S+ \S+ \S+ (.+)' | ||
replacement: '650 HS_DESC FAILED {} redacted redacted redacted {}' | ||
- pattern: '650 HS_DESC UPLOAD (\S+) (\S+) (\S+) (\S+) (\S+)' | ||
replacement: '650 HS_DESC UPLOAD {} {} {} {} {}' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Are all those fields in HS_DESC UPLOAD
required to be seen by the Bisq client?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, it's used as a DoS defense in the handshake. When a Bisq client receives an incoming connection from another peer, the connecting peer proves its onion address ownership and the other peer verifies that the onion address is online by checking whether the onion service's hidden service descriptors were uploaded.
So if Alice connects to Bob before Alice has uploaded her hidden service descriptors, Bob will reject the connection.
Thanks for contributing! |
For this PR to get merged, we need to test Bisq2 release greater than 2.0.4. bisq-network/bisq2#1894 (comment) |
Please apologize my late reply!
Yes, it's used as a DoS defense in the handshake. When a Bisq client receives an incoming connection from another peer, the connecting peer proves its onion address ownership and the other peer verifies that the onion address is online by checking whether the onion service's hidden service descriptors were uploaded. So if Alice connects to Bob before Alice has uploaded her hidden service descriptors, Bob will reject the connection. We could count the number of hidden service descriptor uploads and successes/failures instead of verifying the directories. |
Tested on Bisq2.1.0. It is working! |
Thank you! |
Ref: bisq-network/bisq2#1894