New Update Launched Contact Us Download Now!

Setting up new V3 Onion URL

Please wait 0 seconds...
Scroll Down and click on Go to Link for destination
Congrats! Link is Generated

 Onion v3 is the new next-generation Tor Onion Services specification. The most noticable change is the increase in address length, however Onion v3 uses better cryptography, ECC (eliptic curve cryptography) rather than RSA, and has an improved hidden service directory protocol.

Since this hidden service is running on an alpha build of Tor, I am hosting it on a separate, isolated server. I'm also using a virtual machine for testing the Tor Browser alpha builds, as seen above.

Hidden Service Configuration

In order to set up an Onion v3 hidden service, you'll have to build Tor from source.

Download and verify Tor (standalone) from the Tor downloads page. Below are my verifications for Tor Alpha and Tor Browser 7.5a5 for Linux 64 bit, but always make sure to do your own verifications too:

File Name: tor-
Size: 6 MB (6,257,177 bytes)
SHA256: 948f82246370eadf2d52a5d1797fa8966e5238d28de5ec69120407f22d59e774
SHA1: ffd6f805fcd7282b8ed3e10343ac705519bdc8f2
MD5: 18f95b54ac0ba733bd83c2a2745761a8

File Name: tor-
Size: 0.8 KB (801 bytes)
SHA256: f5a1bb1087814753f1ade3ba16dfaf8cb7a77475cb9b09c91a56bacf42c35d24
SHA1: 6fd356bcec3d337bf458c9ad784ab148afcbeb30
MD5: a20385bae042b0407737147421e3f426



File Name: tor-browser-linux64-7.5a5_en-US.tar.xz
Size: 72 MB (75,076,296 bytes)
SHA256: 8cee4cc0f82463da782cf3e7817e0b72507e6b200b5cccd549fe9f7e77d1d90d
SHA1: 3e041335e2fa45daeb658ac082eac722322d0a73
MD5: 53a696af2bfe7103c7b83d0dd243cd5c

File Name: tor-browser-linux64-7.5a5_en-US.tar.xz.asc
Size: 0.8 KB (801 bytes)
SHA256: f209d9242ca86e6cecebd30611412ffbb8ea489326b74a69244621754a87831c
SHA1: 23620d7c03593b94f1303ba642da6d0738755209
MD5: 5daf333a90e189a16786d08d3aaf6a19



Compile Tor with ./configure followed by make. On a fresh Ubuntu Server 16.04 system, you'll need to install gcc, libevent-dev, libssl-dev and make.

Once compiled, create the directory and file /usr/local/etc/tor/torrc. This is the default configuration file location for Tor when built from source. Sample torrcs are available within the src/config/ directory of your compiled Tor installation.

In order to set up an Onion v3 Hidden Service, add the following to your torrc:

HiddenServiceDir /desired/path/to/hidden/service/config
HiddenServiceVersion 3
HiddenServicePort <localport> <server>

The HiddenServiceDir can be any folder on your system that Tor will have write access to, although it should be a private area since the keys will be stored here.

<localport> is the local port that the hidden service is "listening" on, and the <server> is the server where requests to that port will be forwarded to.

For example, you would normally have:

HiddenServicePort 80

...which will forward requests to port 80 onto a local web server that is bound to

However, you can also directly forward requests onto another server across the internet. This is not recommended though, as by default the requests will be forwarded unencrypted, which poses a risk of de-anonymization and man-in-the-middle attacks.

Important Note: Forwarding requests to a remote server has a major potential to de-anonymize you if done incorrectly. If your own anonymity is important, it's probably better to run a local web server (eg: forward requests to Please refer to the official Tor documentation for more information.

You can theoretically host anything behind a hidden service, including a file server, IRC server, email server, etc.

You can now run Tor located in src/or/tor. Successful output is as follows:

Oct 19 23:58:25.320 [notice] Tor (git-e2a2704f17415d8a) running on Linux with Libevent 2.0.21-stable, OpenSSL 1.0.2g, Zlib 1.2.8, Liblzma N/A, and Libzstd N/A.
Oct 19 23:58:25.320 [notice] Tor can't help you if you use it wrong! Learn how to be safe at
Oct 19 23:58:25.320 [notice] This version is not a stable Tor release. Expect more bugs than usual.
Oct 19 23:58:25.320 [notice] Read configuration file "/usr/local/etc/tor/torrc".
Oct 19 23:58:25.326 [notice] Scheduler type KIST has been enabled.
Oct 19 23:58:25.326 [notice] Opening Socks listener on
Oct 19 23:58:25.000 [notice] Bootstrapped 0%: Starting
Oct 19 23:58:26.000 [notice] Starting with guard context "default"
Oct 19 23:58:26.000 [notice] Bootstrapped 80%: Connecting to the Tor network
Oct 19 23:58:26.000 [notice] Bootstrapped 85%: Finishing handshake with first hop
Oct 19 23:58:27.000 [notice] Bootstrapped 90%: Establishing a Tor circuit
Oct 19 23:58:27.000 [notice] Tor has successfully opened a circuit. Looks like client functionality is working.
Oct 19 23:58:27.000 [notice] Bootstrapped 100%: Done

If you have errors relating to communication with directory servers, double check the permissions on your hidden service configuration directory. Both the folder and contained files should only be readable and writable by the owner (user that is running Tor):

drwx------ 2 tor tor 4096 Oct 20 00:00 .
drwxr-xr-x 5 tor tor 4096 Oct 19 22:29 ..
-rw------- 1 tor tor   63 Oct 20 00:00 hostname
-rw------- 1 tor tor   64 Oct 18 23:29 hs_ed25519_public_key
-rw------- 1 tor tor   96 Oct 18 23:29 hs_ed25519_secret_key

In order to make Tor run at boot, you could set it up as a cronjob or use any other method for starting a program at boot. Don't run Tor as root.

The "hostname" file in your hidden service configuration directory contains the hostname for your new Onion v3 hidden service. The other files are your hidden service keys, so it is imperative that these are kept private. If your keys leak, other people can impersonate your hidden service, deeming it compromised, useless and dangerous to visit.

Apache Configuration

Configuring a local web server for your hidden service is exactly the same as with Onion v2, just make sure that your web server is accessible locally on and everything should work. If your own anonymity is important, make sure that your web server is configured correctly so that it is not going to de-anonymize you.

However, in my setup I am using a remote web server as the forwarding destination for the hidden service. To clarify, my Onion v3 hidden service is running on a separate server to the main JamieWeb server, and the hidden service is forwarding requests across the internet to the main server. This involves a small risk of man-in-the-middle attack since the requests are forwarded unencrypted by default, however for this temporary test environment, it should be fine as the risk is minimal (MitM against internet backbone traffic is much more difficult than with standard user endpoints).

Important Note: Please read my note above as there is potentially a major risk of de-anonymization when forwarding requests to a remote server.

Since I have IP address catch-all virtual hosts set up, the request is blocked by default:

403 Forbidden - Direct request to IPv4 address ( blocked. Please use instead.

In order to get around this, you can simply create a virtual host with the ServerName value set to the Onion address. In my configuration, I have the following (irrelevant lines removed):

    ServerName jamie3vkiwibfiwucd6vxijskbhpjdyajmzeor4mc4i7yopvpo4p7cyd.onion

The request will no longer be blocked, allowing the hidden service to work as normal.

Vanity Addresses

Edit 7th Jan 2017 @ 12:01am: I have now written an entire blog post about Onion v3 vanity address generation, which you can read here.

As with my Onion v2 hidden service, I am very interested in generating a vanity address to use for my site. As of writing this, there are several tools already available for Onion v3 vanity address generation. However, as I did with the Onion v2 address, I am also looking into writing a basic script to perform the cryptography outside of Tor in order to generate addresses automatically. This isn't designed to be a highly efficient program to generate millions of addresses per second, just a basic script that is able to do it faster than a human.

The script that I wrote for automatically generating Onion v2 addresses was quite inefficient, but was still able to generate ~5 addresses per second. While something like this isn't going to be able to generate a long vanity address in any reasonable timeframe, it's enough to get a few characters and understand the how the cryptography behind it is working.

With Onion v2 and an efficient CPU/GPU vanity address generation program, an 8 character vanity address is realistically achievable with an average home computer running for around a month. Onion v3 addresses are still Base32, but are 56 characters rather than 16, so the search space is significantly larger. I am going to set my Raspberry Pi cluster to work generating an Onion v3 vanity address straight away!

I am also interested to see what Facebook are going to do with their Onion v2 hidden service. They are one of the few organisations to have an Extended Validation (EV) SSL certificate for their hidden service, so I wonder if DigiCert will issue a new one to them when/if Facebook upgrades to Onion v3?

إرسال تعليق

Cookie Consent
We serve cookies on this site to analyze traffic, remember your preferences, and optimize your experience.
It seems there is something wrong with your internet connection. Please connect to the internet and start browsing again.
AdBlock Detected!
We have detected that you are using adblocking plugin in your browser.
The revenue we earn by the advertisements is used to manage this website, we request you to whitelist our website in your adblocking plugin.
Site is Blocked
Sorry! This site is not available in your country.