Firo and Tor (.onion address)

I am discovering that firo, does not work correctly with TOR correctly, even with the latest update which updated the tor version, it still doesn’t work. (Tor upgraded to v0.4.8.9 by levonpetrosyan93 · Pull Request #1544 · firoorg/firo · GitHub)

Did anyone manage to get a .onion address with their firod/firo-qt? I tested on different computers and at the same time tried out litecoin, bitcoin, pivx…they all get a .onion address. There is some issue in the way firo talks to the tor service (via the authentication cookie).

getnetworkinfo
{
“version”: 141401,
“subversion”: “/Satoshi:0.14.14.1/”,
“protocolversion”: 90031,
“localservices”: “000000000000000d”,
“localrelay”: true,
“timeoffset”: -5,
“networkactive”: true,
“connections”: 8,
“networks”: [
{
“name”: “ipv4”,
“limited”: false,
“reachable”: true,
“proxy”: “127.0.0.1:9050”,
“proxy_randomize_credentials”: true
},
{
“name”: “ipv6”,
“limited”: false,
“reachable”: true,
“proxy”: “127.0.0.1:9050”,
“proxy_randomize_credentials”: true
},
{
“name”: “onion”,
“limited”: false,
“reachable”: true,
“proxy”: “127.0.0.1:9050”,
“proxy_randomize_credentials”: true
}
],
“relayfee”: 0.00001000,
“incrementalfee”: 0.00001000,
“localaddresses”: [ < —— ONION ADDRESS SHOULD APPEAR HERE, BUT IT DOESN'T
],
“warnings”: “”
}

This is the /etc/tor/torrc config that works for all other coin daemons (bitcoin, litecoin, pivx…etc)
SOCKSPort 9050
Log notice stdout
ControlPort 9051
CookieAuthentication 1
CookieAuthFileGroupReadable 1

I tried all kinds of combinations of .firo/firo.conf, commenting out each setting, restarting, but it never works:
torsetup=1
debug=tor
onlynet=onion
proxy=127.0.0.1:9050

Firo debug log:
2025-09-04 08:48:28 torcontrol thread start
2025-09-04 08:48:28 tor: Successfully connected!
2025-09-04 08:48:28 tor: Connected to Tor version 0.4.8.16
2025-09-04 08:48:28 tor: Supported authentication method: COOKIE
2025-09-04 08:48:28 tor: Supported authentication method: SAFECOOKIE
2025-09-04 08:48:28 tor: Using SAFECOOKIE authentication, reading cookie authentication from /run/tor/control.authcookie
2025-09-04 08:48:28 tor: SAFECOOKIE authentication challenge successful
2025-09-04 08:48:28 tor: AUTHCHALLENGE ServerHash xxxxxxxxxxxxxxxxxxxxxxxxxxx ServerNonce xxxxxxxxxxxxxxxxxxxxxxxxxx
2025-09-04 08:48:28 tor: Authentication successful
2025-09-04 08:48:28 tor: Add onion failed; error code 513

Just to clarify, the connection goes through the tor proxy 127.0.0.1:9050, the issue I am describing is the lack of a onionV3 address being generated/assigned.

Can anyone confirm this is working for them?

Yes it’s being worked on right now!

jah one thng i would like to see for lite wallets like campfre is onion nodes like feather haz

da biggest problem that firo haz is its lack of onion nodes making it trivial to tracking and the small set of nodes to connect to in wallts is toublesum

So just confirming that we are working on this. Transaction relaying through TOR currently works as it is but not .onion node discovery.

2 Likes

Thats great news :raising_hands:

I am happy to test it out if necessary before the final release.

Apologies for getting to this late but we have this now. It requires the configuration of torrc but it works otherwise.

No need to apologize, its an opensource project :sweat_smile:

I tested it, and its still the same on firo version 0.14.15.1:

2026-01-21 09:29:20 torcontrol thread start
2026-01-21 09:29:20 tor: Successfully connected!
2026-01-21 09:29:20 tor: Connected to Tor version 0.4.7.16
2026-01-21 09:29:20 tor: Supported authentication method: COOKIE
2026-01-21 09:29:20 tor: Supported authentication method: SAFECOOKIE
2026-01-21 09:29:20 tor: Using SAFECOOKIE authentication, reading cookie authentication from /run/tor/control.authcookie
2026-01-21 09:29:20 tor: SAFECOOKIE authentication challenge successful
2026-01-21 09:29:20 tor: AUTHCHALLENGE ServerHash xxxxxxxxxxxxxxxxxxxxx ServerNonce xxxxxxxxxxxxxxxx
2026-01-21 09:29:20 tor: Authentication successful
2026-01-21 09:29:20 tor: Add onion failed; error code 513

This is on a test VM I have, I also have pivx running on it which gets the onion address without issues…

Please try the latest master. The relevant PR was merged recently.

You can grab any of the binaries from here. (requires to be logged in to Github)

I can confirm it works! Great

1 Like

Should also be available in the latest release.

1 Like

Got it. It also works.

I tested with onlynet=onion and added three .onion nodes. The sync is at the same speed as clearnet, in the end the CPU is the bottleneck.

So I believe the bandwidth is not an issue in a .onion to .onion setup. Hope we will see one day firo masternode registration on .onion addresses instead of IPv4.

2 Likes

i run but still no peers connected try this it’s mine hls4o5mqafdtgpy4gcb2qpcm2ypi32ct6cjsil4qnddn7xsnbbrurdad.onion:8168

1 Like

I added you, seems like it connected fine.

These are some I will keep running if anyone else wants to try it out, you can just add it to firo.conf
addnode=dp2ixpeltul47px7wamj6tor4mqk63bgup7yzcx3d26m3skzbtyqayad.onion
addnode=eri4hcfgvxnmhys4jeid54a5gqedtq65hkmkefs5oaywbdatxqpwh7id.onion
addnode=x53iqyivoyxckdq6w4uufchqzlshqybyicmuk2ybhezfws3vthalo6ad.onion
addnode=zudqegvoikudbm44bgdkufynsexsttj5xun6x77szcfj6aqmo7r4ydqd.onion
addnode=gxbtnqsizfslqxvsl5njdb2w267ulyil4gykyd56c4opkskb6yimiuyd.onion
addnode=hop6yykbk33hajknomnsino54jbwcdoua5auca2ntxwaozvsxp47tnad.onion

1 Like

@anwar any idea how to configure onlynet=onion in firo-qt? It seems it ignores the .firo/firo.conf.

Everything works fine on firod, but can’t get firo-qt to work with onlynet=onion…

It should work on both, or not work on both since they are the same (but with UI for Qt).

Could you describe in detail how you concluded that it does not work on Qt but on firod? It will help our developers narrow down the exact cause.

I think this is related, but I am unsure:

1 Like

So the same config on both, .firo/firo.conf

onlynet=onion
debug=tor
proxy=127.0.0.1:9050
addnode=.....onion

On firod the this is respected and the only nodes connected are .onion nodes.

On firo-qt the config is not respected, the connected nodes are a mix of IPv4 nodes and .onion nodes.

I have to admit I am a bit confused in general about this, I am used to using firod more. On qt I am not really sure if the config firo.conf even makes any impact? Since there are network settings inside the qt app, which probably override the config?

Edit:
I tried passing the argument on start: ./firo-qt -onlynet=onion and it also doesn’t do anything.
Tried deleting peers.dat also, that also didn’t do anything…

1 Like

Woohoo!

2 Likes

Investigating into why onlynet=onion is not working. Thanks for feedback!

No problem :slight_smile:

Would be nice to also find out what exactly these options do in the QT GUI?

If we can manage to write a short tutorial on which options to tick, what to put in firo.conf (if anything)…etc. Currently its a bit all over the place :slight_smile:

If we imagine a grandma, that really does not want to leak their IP, what do they have to do, step by step :sweat_smile:

1 Like

A guide is in the works.

2 Likes