Skip to content
dk808 edited this page Jun 11, 2021 · 4 revisions

Raptoreum Smartnode Install Guide

This install guide will be using Ubuntu 18.04 on a VPS.


Block Collateral Amount
0-88720 600000
88721-132720 800000
132721-176720 1000000
176721-220720 1250000
220721-264720 1500000
264721+ 1800000

Control Wallet

Download latest wallet and make backups of wallet.dat and dumpwallet file before sending any coins to it. Your dump file is main file you should backup and keep it safe offline. You could also use dumpprivkey "address" to get private key of that single address. Do this before encrypting wallet. Make it a habit to backup your wallet.

  1. Create 3 new receiving addresses and label them collateral,owner/voting,payout, or something along those lines to easily identify them.
  2. Send exact amount of collateral required(see table above) to the collateral address. *15 confirmations is required before sending ProTx.
  3. Open up console and enter smartnode outputs to get your collateral TxID and output index. Copy and paste the output to a text editor. If no output was returned, then it means you didn't send collateral amount correctly.
smartnode outputs
{
  "d90e1a6d9cc71fb3144fd6819a2f8406d286058586b0f7cf79cc2544a8b719d3": "1"
}
  1. Generate a BLS key pair by entering bls generate and copy and paste this to the text editor. You will need the secret key for the install script and public key to register the smartnode.
bls generate
{
  "secret": "6a2331ec31d881f18d36766989cd58503909130b4cd8ad01025af6c699026c08",
  "public": "90826fab8aff20d1812d8fcb7c5987c4fd59732b7f486fe684ea326cbf9c085af4e38cd41934ef4fcc0bfeaf100f760f"
}

Prepare ProRegTx transaction

  1. Enter following command but replace each argument with your values. Note that the feeSourceAddress is optional and will use the payoutAddress for the transaction fee. Make sure you have at least 1 RTM in the payoutAddress or feeSourceAddress whichever one you decide to use for the fee.
protx register_prepare collateralTxId outputindex ipAndPort owner/votingAddress BLSpublicKey owner/votingAddress operatorReward payoutAddress feeSourceAddress(optional)

Example:

protx register_prepare d90e1a6d9cc71fb3144fd6819a2f8406d286058586b0f7cf79cc2544a8b719d3 1 144.76.170.111:10226 RSc2d3b2pG2onDAgwWpsaFznCdTXn9LB8x 90826fab8aff20d1812d8fcb7c5987c4fd59732b7f486fe684ea326cbf9c085af4e38cd41934ef4fcc0bfeaf100f760f RSc2d3b2pG2onDAgwWpsaFznCdTXn9LB8x 0 R9xijCj4sX1C8YXVk6p6f3FSZTCupv41VR RLHnGqDs9AcG4uo5uqWFZ2vqPVq8j5DMfC

Output:

{
  "tx": "0300010004181afd1e8bd224861f92e9984ac22c1042ebdd8i4901334e304c447dad5adf6070000000000feffffff0121dff505000000001976a9149e2deda2452b57e999685cb7dabdd6f4c3000e3aad3900000d10100000000212e78a9365dbbs905ae701e0fd56625c3fa9d2ff47802225fadb6829700d2c0100000000000000000000000000ffff8c523b334e1fad8e6259e14db7d05431ef4333d94b70df1391c601d2c43f022eeceaaf09532d84350feb49d7e72c183e56737c816076d0e803d4f86036bd4151160f5732ab4a461bd127ad8e6259e14db7d05431ef4333d94b70df1391c600001976a914adf50b01774202a184a2c7150593442b89c212e788acf8d42b331ae7a29076b464e61fdbcfc0b13f611d3d7f88bbe066e6eabd790deef2",
  "collateralAddress": "RGtwVoLa9mxU8p9yFz16DuFAWBEF74qjFR",
  "signMessage": "R9xijCj4sX1C8YXVk6p6f3FSZTCupv41VR|0|RSc2d3b2pG2onDAgwWpsaFznCdTXn9LB8x|RSc2d3b2pG2onDAgwWpsaFznCdTXn9LB8x|23b3ebf332a98dff73ed834d79f91e28a9e5806ec5ba5a1d12e"
}

Sign the ProRegTx transaction

  1. With the output you got from protx register_prepare command you will need to sign message. So replace arguments with your values.
signmessage collateralAddress signMessage

Example:

signmessage RGtwVoLa9mxU8p9yFz16DuFAWBEF74qjFR R9xijCj4sX1C8YXVk6p6f3FSZTCupv41VR|0|RSc2d3b2pG2onDAgwWpsaFznCdTXn9LB8x|RSc2d3b2pG2onDAgwWpsaFznCdTXn9LB8x|23b3ebf332a98dff73ed834d79f91e28a9e5806ec5ba5a1d12e

Output:

IM3JpBNej8WE3s8xbwh4bXVsd9Ly+2H3eApIKmd2d/0fIeSkxMJJJTh2cZ23oUZtsd7ffGHISf+a9zGIJ1BgEF=

Submit signed message

Final step to registering your Smartnode you will need to submit the signature you got from signmessage command and the tx from the protx register_prepare command.

protx register_submit tx sig

Example:

protx register_submit 0300010004181afd1e8bd224861f92e9984ac22c1042ebdd8i4901334e304c447dad5adf6070000000000feffffff0121dff505000000001976a9149e2deda2452b57e999685cb7dabdd6f4c3000e3aad3900000d10100000000212e78a9365dbbs905ae701e0fd56625c3fa9d2ff47802225fadb6829700d2c0100000000000000000000000000ffff8c523b334e1fad8e6259e14db7d05431ef4333d94b70df1391c601d2c43f022eeceaaf09532d84350feb49d7e72c183e56737c816076d0e803d4f86036bd4151160f5732ab4a461bd127ad8e6259e14db7d05431ef4333d94b70df1391c600001976a914adf50b01774202a184a2c7150593442b89c212e788acf8d42b331ae7a29076b464e61fdbcfc0b13f611d3d7f88bbe066e6eabd790deef2 IM3JpBNej8WE3s8xbwh4bXVsd9Ly+2H3eApIKmd2d/0fIeSkxMJJJTh2cZ23oUZtsd7ffGHISf+a9zGIJ1BgEF=

Output:

d46c998e2837455900b590813d1da8ad7998e4f45b03e1ab132ec9be938b8ada

The Raptoreum Team has also made it easy to do this in one step. You could use their guide if you wish to use that method. I have provided steps to do it manually as it keeps your receiving address list clean since any mistake in the quick setup you will generate 3 addresses to that list and enough mistakes will make it look cluttered.

VPS Setup

For this guide I will use Hetzner's Cloud VPS. Select location, Ubuntu 18.04 as your OS, standard type, and CX11(1 vCPU/2 GB Ram/20 GB SSD). If you want to select a server with more resources that is up to you but the CX11 will work for now. Check your email for your password to login to the server.


hetzner

  1. Using a SSH client such as Putty login to the server and create a sudo user. If on Windows I highly suggest using MobaXterm.
    Change USERNAME in commands below to a name of your choice.
adduser USERNAME
adduser USERNAME sudo

mobalogin

  1. Switch to the user using su - USERNAME command or reboot and log back in as the user. Run command below to run the install script. It will ask a series of questions which most likely answer to all of them will be yes. Main thing you will need for this install will be the secret key that you got from step 4.
bash <(curl -s https://raw.githubusercontent.com/dk808/Raptoreum_Smartnode/main/install.sh)

run_script

  1. You could check status of your Smartnode with command below.
raptoreum-cli smartnode status

ℹ Disclaimer: The use of the software and scripts downloaded on this site is done at your own discretion and risk and with agreement that you will be solely responsible for any damage to your computer system or loss of data that results from such activities. You are solely responsible for adequate protection and backup of the data and equipment used in connection with any of the software, and I will not be liable for any damages that you may suffer in connection with using, modifying or distributing any of this software. No advice or information, whether oral or written, obtained by you from me shall create any warranty for the software.