Create Decentralized HOP VPN with Raspberry Pi

HOP
4 min readOct 1, 2020
  • What is HOP?

HOP protocol provides a decentralized, fully anonymous, blockchain based VPN service to people around the world. The protocol built on Ethereum network, it utilizes the smart micro-payment to run the payment system with unlimited TPS.

The protocol is providing two types of software which are Pool and Miner. Pool is like a shopping mall and Miner is treated like a shop that runs inside the mall. The entrance for user is a Pirate mobile application that is already listed on iOS, Google Play Store as well as MacOS. In this case every Pool and Miner hosters do not need to develop mobile and desktop apps independently.

Now HOP is open to public test. The Pool and Miner are free to create and use by you and your friends.

According to the HOP development plan the HOP protocol will move to ETH mainnet in December 2020 and all Pool and Miner owners are going to start collect ETH HOP token after the move.

Where to get the HOP software?

Please go to docs.hyperorchid.org or click the link and download the Pool and Miners directly or directly download from below:

  • HOP for x64

Pool_amd64

HOP_amd64

  • HOP for ARM

Pool_arm64

HOP_arm64

  • HOP for MacOS

Pool_mac

HOP_mac

  • HOP for Windows

HOP_win

Where to get the Pirate software?

Google Play Store

iOS

Mac OS

Testflight

APK

Steps to prepare the Raspberry Pi

Step 1. Get a microSD Card(we use 64GB), Raspberry Pi 4 Model B 4GB, Case, Power Supplier and one Ethernet Cable. Ensemble the Raspberry Pi, for a case comes with a fan please connect the fan red power cable to 3.3v and the black one to ground. Or use 5v if your region or environment is hotter than normal.

Check the Raspberry Pi 4 layout:

Step 2. Install Ubuntu 20.04 LTS ARM version to your SD card with Raspberry Pi Imager and then connect the Pi to your Internet Router.

Step 3. Configure your Pi and remote login through your laptop. Find your Pi’s local IP address through your Router administration page, your Pi will be listed as “ubuntu” or “Raspberry Pi”. To prevent the router changing your Pi’s local IP please set your Pi IP as static one.

Steps to run Miner in Raspberry Pi

Step 1. In your current user’s home folder create a new folder called “hop”, enter the hop folder and download the Miner software through curl command:

$ curl -o HOP “https://docs.hyperorchid.org/_media/HOP_arm64"

Step 2. Assign the executable privilege to HOP file

$ chmod +x HOP

Step 3. Add HOP into bash profile:

$ vi ~/.bashrc

Add info from below into the last line of the profile:

# User specific environment and startup programsPATH=$PATH:$HOME/bin:~/hop:~/poolexport PATH

Step 5. Reload the bash profile

$ source ~/.bashrc

Step 6. Initiate the Miner and assign the password for your Miner:

$ HOP init

Step 7. Open Miner configuration file:

$ vi ~/.hop/conf.hop

Step 8. Change Miner configuration file:

{“BAS”: “198.13.44.159”,“id”: 3,“apiUrl”: “https://ropsten.infura.io/v3/d64d364124684359ace20feae1f9ac20",“paymentService”: “0x4291d9Ff189D90Ba875E0fc1Da4D602406DD7D6e”,“token”: “0xAd44c8493dE3FE2B070f33927A315b50Da9a0e25”}

Step 9. Add your Miner IP(search google with myip) into HOP network:

$ HOP bas -b 198.13.44.159 -m YOURIPADDRESS -p 321

Step 10A. Open your Pool server console and join the Miner into the Pool(if you have created your own Pool already).

$ Pool eth join -d -s HO82VXn1vnBfLKC6Mx92AKk2kJPJbv4mK2YJTKBWqNWKzo -z “US_San1” -p 123

Step 10B. Join a Pool by sending your Miner ID to hyperorchidcs@gmail.com or join the Telegram group to ask a Pool owner to join your miner into a pool.

$ HOP show address

Here is the result from the command above. The ID start with “HO” is your Miner ID:

0x52e41f2fcCaa02efF9DE2c71c7a1b5F2b83FBBe5HO82VXn1vnBfLKC6Mx92AKk2kJPJbv4mK2YJTKBWqNWKzo0x6863a62305800a1e5b6bbc4fc9549ea204786e534010cea4780d11ed0187d0b8

Step 11. Once your miner appears in the Pool please run the command to run miner:

$ nohup HOP -p YOURPASSWORD 2>hop.log &

Step 12. Check your pool and test the Miner with Pirate:

Sit back and enjoy a beer, or two.

--

--