fork just to be able to propose change in original repo https://git.disroot.org/anonymoose/ZeroNet_OnionV3
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

4.3 KiB

main reference:

V3 Hidden Service support

sadly script with small patch to integrate support for hidden (onion) service V3 on ZeroNet darknet ( still support V2 ).

this patch refers these issue:

In particular it manages the tracker function ( bootstrap plugin enable ) verifying and distributing onion V3 peers to others ( to both patched and unpatched clients ).

As you may know the hiddien service V2 are deprecated and in October will cease to exist permanently, is why in the transition phase (wait for V3 support to be released from the official repo) it's important to enable the boostrap plugin (and add v3 trackers in bootstrap list) to verify and share OnionV3 peers that cannot be verified by current trackers with the stable version.

Patch explained

This patch doesn't definitively differentiate onion v2 from v3, via CryptRsa.py I've maintained the v2 functions unchanged and added a copy of those funcionts ( sign, verify key .. ) with library required by onion v3 (CryptEd25519.py), recognising the type of address version from the length of the hidden service keys used in the functions ( definitely could be improved! ).

Script explained

  • move upgrade_file/CryptEd25519.py and upgrade_file/CryptRsa.py to ZeroPath/src/Crypt/
  • replace in ZeroPath/src/Tor/TorManager.py the 2 words RSA1024 with ED25519-V3
  • add new line from Crypt import CryptEd25519 to the top of the files:
    • ZeroPath/src/Tor/TorManager.py
    • ZeroPath/plugins/AnnounceZero/AnnounceZeroPlugin.py

For the installation guide i will use a fresh new client, following the installation guide on the official repo : https://github.com/HelloZeroNet/ZeroNet

Linux (x86-64bit)

  • wget https://github.com/HelloZeroNet/ZeroNet-linux/archive/dist-linux64/ZeroNet-py3-linux64.tar.gz
  • tar xvpfz ZeroNet-py3-linux64.tar.gz
  • cd ZeroNet-linux-dist-linux64/

now move inside core/ dir and download this repo

  • cd core
  • git clone https://git.disroot.org/anonymoose/ZeroNet_OnionV3.git

move inside downloaded folder and launch install.sh script.

  • cd ZeroNet_OnionV3
  • ./install.sh back to main folder
  • cd ../..

now the client is enabled to support V3 hidden services you can launch the client normally from ZeroNet-linux-dist-linux64

  • ./ZeroNet.sh

Tor configuration and tracker settings

if you want to start immediately in tracker - tor always mode these are configurations tested on debian10, more information can be found in the official FAQ:

for the use described the commands to follow for the configuration of Tor are described here: https://zeronet.io/docs/faq/#how-to-make-zeronet-work-with-tor-under-linuxmacos

  • sudo nano /etc/tor/torrc

  • remove # character from lines ControlPort 9051 and CookieAuthentication 1

  • restart tor : sudo service tor restart

  • add permission for yourself to read the auth cookie. with Debian Linux, the command is sudo usermod -a -G debiantor [yourlinuxuser] (if you are not on Debian check the file's user group by ls -al /var/run/tor/control.authcookie)

  • logout/login with your user to apply group changes

  • add a zeronet.conf on ZeroNet-linux-dist-linux64 with

[global]
tor = always 
  • enable tracker plugin, always from ZeroNet-linux-dist-linux64 mv core/plugins/disabled-Bootstrapper core/plugins/Bootstrapper
  • launch ./ZeroNet.sh
  • open http://127.0.0.1:43110/Stats to check the operation

Tips

OnionV3 tracker to add in bootstrap list:

  • zero://tnjppdoc4famqa62mldlzc3fqw2wlsfxov7iz3pz5ex6umnqpaupflqd.onion:16227

Syncronite trackers file list :


Todo

  • understand why onion addresses aren't shared as shared trackers
  • permanent tracker onion address
  • upgrade plugins/StemPort for V3 support
  • default stem lib for manage hidden services