# Masternodes

## Masternode on Ubunutu Server 22.04 tutorial

### **VPS REQUIREMENTS**

|      | Minimum | Recomended |
| ---- | ------- | ---------- |
| CPU  | 1x1 GHz | 1x2 GHz    |
| RAM  | 1 GB    | 2 GB       |
| Disk | 8GB     | 16GB       |

### Step 1

Open your Windows wallet.

**Go to Tools -> Debug console.**

### STEP 2 <a href="#step-2" id="step-2"></a>

Type the following RPC command, to create an address for the masternode fee:

**getnewaddress**

Example output

**AHzinKJFJ4f6jpL19NQ3VYBcWAcbkWMm9f**

### STEP 3 <a href="#step-3" id="step-3"></a>

Go back to your wallet overview.

**Press on the toolbar button "Send".**

Enter the address from the RPC command **“getnewaddress”** behind the text **"Pay To:". (Example: AHzinKJFJ4f6jpL19NQ3VYBcWAcbkWMm9f)**

Enter the following amount of coins behind the text **"Amount:": 5**

Press on the button **"Send".**

Wait until the transaction is confirmed by **4** blocks.

### STEP 4 <a href="#step-4" id="step-4"></a>

Go back to the console of your wallet.

Type the following RPC command, to create an address for the masternode collateral:

<mark style="color:orange;">**getnewaddress**</mark>

Example output

**AL2ThhYZfesWroCqVzBtQVqdMjPQ3dE1wD**

### STEP 5 <a href="#step-5" id="step-5"></a>

Go back to your wallet overview.

Press on the toolbar button **"Send".**

Enter the address from the RPC command **“getnewaddress”** behind the text **"Pay To:". (Example: AL2ThhYZfesWroCqVzBtQVqdMjPQ3dE1wD)**

<mark style="color:orange;">**Masternode**</mark>**:** Enter the following amount of coins behind the text **"Amount:": 400,000**

Press on the button **"Send".**

Wait until the transaction is confirmed by **4** blocks.

### STEP 6 <a href="#step-6" id="step-6"></a>

Go back to the console of your wallet.

Identify the transaction with the following RPC command:

<mark style="color:orange;">**masternode outputs**</mark>

Example output

**{ "618599438df959fc0647ad1895808ba0fef96282bf24eb177134cb0c329c8d41": "1" }**

### STEP 7 <a href="#step-7" id="step-7"></a>

Generate a BLS key pair with the the following RPC command:

<mark style="color:orange;">**bls generate**</mark>

Example output

**{ "secret": "5120af1f913b8a4b459e19cc3ef3f865ba891404853fa317f348635b347e12ef", "public": "050564992464a87643d273e87334fda1e8beb52e9605b9cef2fe73eb3a063f12c8f03a6fa4f07e26a1e9e5175e155c91" }**

### STEP 8 <a href="#step-8" id="step-8"></a>

Type the following RPC command, to create an address for the owner of the masternode:

<mark style="color:orange;">**getnewaddress**</mark>

Example output

**AU3fPy86NZg3P2EuodBuG3MRqFRQHedEDj**

Type the following RPC command, to create an address for used for proposal voting:

<mark style="color:orange;">**getnewaddress**</mark>

Example output

**AaQZwCaHQC5P9MSN4MGPLjxRqaKBsgDaSz**

Type the following RPC command, to create an address to receive the masternode reward:

<mark style="color:orange;">**getnewaddress**</mark>

Example output

**AQcEjWvZQpqM5dQDgmB5DPANJB3wRKDtPC**

### STEP 9 <a href="#step-9" id="step-9"></a>

Prepare the ProRegTx transaction by modifying the following line. **Regular Masternode**

<mark style="color:orange;">**protx register\_prepare 618599438df959fc0647ad1895808ba0fef96282bf24eb177134cb0c329c8d41 1 105.99.88.77:40112AU3fPy86NZg3P2EuodBuG3MRqFRQHedEDj 050564992464a87643d273e87334fda1e8beb52e9605b9cef2fe73eb3a063f12c8f03a6fa4f07e26a1e9e5175e155c91 AaQZwCaHQC5P9MSN4MGPLjxRqaKBsgDaSz 0 AQcEjWvZQpqM5dQDgmB5DPANJB3wRKDtPC AHzinKJFJ4f6jpL19NQ3VYBcWAcbkWMm9f**</mark>

**618599438df959fc0647ad1895808ba0fef96282bf24eb177134cb0c329c8d41** - Transaction id from the RPC command “masternode outputs”.

**1** - Single digit from the RPC command “masternode outputs”.

**105.99.88.77:40112**- External IPv4 address of your VPS.

**AU3fPy86NZg3P2EuodBuG3MRqFRQHedEDj** - Address of the owner of the masternode.

**050564992464a87643d273e87334fda1e8beb52e9605b9cef2fe73eb3a063f12c8f03a6fa4f07e26a1e9e5175e155c91** - “public” value from the RPC command “bls generate”.

**AaQZwCaHQC5P9MSN4MGPLjxRqaKBsgDaSz** - Address used for proposal voting.

**AQcEjWvZQpqM5dQDgmB5DPANJB3wRKDtPC** - Address to receive the masternode reward.

**AHzinKJFJ4f6jpL19NQ3VYBcWAcbkWMm9f** - Address to where you send the masternode amount fee.

Paste the modified line into your console.

Example output

**{ "tx": "0300010001ac7584669c70526e0e338d6a2477dc648788140dd0dcbc5915878f9c632d129b0100000000feffffff01e551cd1d000000001976a9149385c0ceafd77df3619e604f4ce7d0317bbcbfae88ac00000000d1010000000000418d9c320ccb347117eb24bf8262f9fea08b809518ad4706fc59f98d439985610100000000000000000000000000ffff9f591f3f32ac1730a9104ead8b642345c1300e81c4d78e874de6050564992464a87643d273e87334fda1e8beb52e9605b9cef2fe73eb3a063f12c8f03a6fa4f07e26a1e9e5175e155c910929cbddb56d0fbd2993de634c3ed42de5a8455700001976a914b4b5864ed646cd8591a8ed996fa6c25de0b98bce88ac8f420b431efe6e62a55533099d2e99759767d38f94461325508afe3feadd0a9f00", "collateralAddress": "AL2ThhYZfesWroCqVzBtQVqdMjPQ3dE1wD", "signMessage": "AQcEjWvZQpqM5dQDgmB5DPANJB3wRKDtPC|0|AU3fPy86NZg3P2EuodBuG3MRqFRQHedEDj|AaQZwCaHQC5P9MSN4MGPLjxRqaKBsgDaSz|c8ebf2ae235d658e0809915348718dbb262f6884473c00448ba93e7ce4648070" }**

### STEP 10 <a href="#step-10" id="step-10"></a>

Sign the ProRegTx transaction by modifying the following line.

<mark style="color:orange;">**signmessage "AL2ThhYZfesWroCqVzBtQVqdMjPQ3dE1wD" "AQcEjWvZQpqM5dQDgmB5DPANJB3wRKDtPC|0|AU3fPy86NZg3P2EuodBuG3MRqFRQHedEDj|AaQZwCaHQC5P9MSN4MGPLjxRqaKBsgDaSz|c8ebf2ae235d658e0809915348718dbb262f6884473c00448ba93e7ce4648070"**</mark>

**AL2ThhYZfesWroCqVzBtQVqdMjPQ3dE1wD** - “collateralAddress” value from the RPC command “protx register\_prepare”.

**BLvahoF6T7b8NY5wACtDoS9NzWPjRhNKuL|0|AU3fPy86NZg3P2EuodBuG3MRqFRQHedEDj|AaQZwCaHQC5P9MSN4MGPLjxRqaKBsgDaSz|c8ebf2ae235d658e0809915348718dbb262f6884473c00448ba93e7ce4648070** - “signMessage” value from the RPC command “protx register\_prepare”.

Paste the modified line into the console of your wallet.

Example output

**ILrWvvZRZeZhnfFtNwd087rwGsiPJH28GfmoPfjSDhUcEY+joeUd82/lqVnO0FD0V1L8vpjYju92fjMPITVScGI=**

### STEP 11 <a href="#step-11" id="step-11"></a>

Submit the ProRegTx transaction by modifying the following line.

<mark style="color:orange;">**protx register\_submit 0300010001ac7584669c70526e0e338d6a2477dc648788140dd0dcbc5915878f9c632d129b0100000000feffffff01e551cd1d000000001976a9149385c0ceafd77df3619e604f4ce7d0317bbcbfae88ac00000000d1010000000000418d9c320ccb347117eb24bf8262f9fea08b809518ad4706fc59f98d439985610100000000000000000000000000ffff9f591f3f32ac1730a9104ead8b642345c1300e81c4d78e874de6050564992464a87643d273e87334fda1e8beb52e9605b9cef2fe73eb3a063f12c8f03a6fa4f07e26a1e9e5175e155c910929cbddb56d0fbd2993de634c3ed42de5a8455700001976a914b4b5864ed646cd8591a8ed996fa6c25de0b98bce88ac8f420b431efe6e62a55533099d2e99759767d38f94461325508afe3feadd0a9f00 ILrWvvZRZeZhnfFtNwd087rwGsiPJH28GfmoPfjSDhUcEY+joeUd82/lqVnO0FD0V1L8vpjYju92fjMPITVScGI=**</mark>

**0300010001ac7584669c70526e0e338d6a2477dc648788140dd0dcbc5915878f9c632d129b0100000000feffffff01e551cd1d000000001976a9149385c0ceafd77df3619e604f4ce7d0317bbcbfae88ac00000000d1010000000000418d9c320ccb347117eb24bf8262f9fea08b809518ad4706fc59f98d439985610100000000000000000000000000ffff9f591f3f32ac1730a9104ead8b642345c1300e81c4d78e874de6050564992464a87643d273e87334fda1e8beb52e9605b9cef2fe73eb3a063f12c8f03a6fa4f07e26a1e9e5175e155c910929cbddb56d0fbd2993de634c3ed42de5a8455700001976a914b4b5864ed646cd8591a8ed996fa6c25de0b98bce88ac8f420b431efe6e62a55533099d2e99759767d38f94461325508afe3feadd0a9f00** - “tx” value from the RPC command “protx register\_prepare”.

**ILrWvvZRZeZhnfFtNwd087rwGsiPJH28GfmoPfjSDhUcEY+joeUd82/lqVnO0FD0V1L8vpjYju92fjMPITVScGI=** - Output from the RPC command “signmessage”.

Paste the modified line into the console of your wallet.

Example output

**9c76272b7ef2a7456c84158424eb138bd3636b09aa2beae973bbed921f1f7868**

#### VPS Console, Putty or Terminal <a href="#vps-console-putty-or-terminal" id="vps-console-putty-or-terminal"></a>

Open [putty](https://the.earth.li/~sgtatham/putty/latest/w64/putty.exe) and connect using SSH with your Ubuntu server.

Update your Ubuntu server with the following command:

**sudo apt-get update && sudo apt-get upgrade -y**

Type the following command to go back to your home directory:

**cd $HOME**

Download the Linux daemon for your wallet with the following command:

**wget <https://github.com/ogvanetwork/ogva-core/releases/download/v1.1.0/OGVA-1.1.0-ubuntu.tar.gz>" -O OGVA-1.1.0-ubuntu.tar.gz** \
Extract the tar file with the following command:

**tar -xzvf OGVA-1.1.0-ubuntu.tar.gz**

Create the data directory for your coin with the following command:

**mkdir $HOME/.ogvacore**

Open nano.

**nano $HOME/.ogvacore/ogva.conf -t**

Paste the following into nano.

```
rpcuser=CHOOSEYOURUSERNAME (Choose custom & safe username) 
rpcpassword=CHOOSEYOURPASSWORD (Choose custom & safe password) 
rpcbind=127.0.0.1 
rpcallowip=127.0.0.1 
listen=1
server=1 
daemon=1 
maxconnections=125 
masternode=1 
masternodeblsprivkey=5120af1f913b8a4b459e19cc3ef3f865ba891404853fa317f348635b347e12ef 
externalip=105.99.88.77
```

**105.99.88.77** - External IPv4 address of your VPS.

5120af1f913b8a4b459e19cc3ef3f865ba891404853fa317f348635b347e12ef - “secret” value from the RPC command “bls generate”.

Save the file with the keyboard shortcut ctrl + x.

Type the following command to start your masternode:

**ogvad**
