Skip to content

curiumofficial/PIVX-SPMT

 
 

Repository files navigation



SPMT

SPMT: Secure Pivx Masternode Tool is a software to securely manage multiple PIVX masternodes while keeping the collateral safely stored on Ledger Nano S hardware wallets.

Installation

This application does not require installation.
If you are using a binary version, just unzip the folder anywhere you like and use the executable to start the application:

  • Linux: double-click SecurePivxMasternodeTool file inside the app directory
  • Windows: double-click SecurePivxMasternodeTool.exe file inside the app directory
  • Mac OsX: double-click SecurePivxMasternodeTool.app application folder

If you are running SPMT from the source-code instead, you will need Python3 and several libraries installed.
Needed libraries are listed in requirements.txt.
From the SPMT directory, launch the tool with:

python3 spmt.py

To make binary versions from source, PyInstaller can be used with the SecurePivxMasternode.spec file provided.

Setup

NOTE: ⚠️ make sure to have the latest firmware installed on your Nano S device.

Setting up the RPC server

In order to interact with the PIVX blockchain, the SPMT needs a local PIVX wallet running alongside (any empty pivx-cli wallet will do). Edit your local pivx.conf inserting rpcuser, rpcpassword, rpcport and rpcallowip. Example:

server=1
rpcuser=myUsername
rpcpassword=myPassword
rpcport=45458
rpcallowip=127.0.0.1

Configure the RPC server by clicking on the menu




and inserting the same data. You can leave ip 127.0.0.1 if the wallet is on the same machine as the SPMT.
Otherwise set the IP address of the machine running the Core PIVX wallet.


Connections

If the IP and the credentials of the PIVX wallet are correct, it should connect with SPMT instantly.
Otherwise use the Connect button next to "PIVX server: Local Wallet".
Connect the hardware device to USB and open the PIVX-App on it.

Click the button Connect next to "HW device: Ledger Nano S" to connect to the hardware device.


Once successfully connected, it gives a confirmation message and the led turns purple.


Setting up a Masternode configuration

Click on New Masternode and fill all the informations of the remote node:

  • Name : an alias for the masternode entry
  • IP Address / IP Port : Public IP address and port of the remote masternode
  • MN Priv Key : masternode private key. If you have already seup the remote node, copy here the masternodeprivkey from the pivx.conf file.
    If you don't have one yet, you can generate a new masternode private key clicking on Generate (then copy it to the config file of the remote node).

Insert the PIVX Address holding the collateral (and relative account number)
If you have just one account in your Ledger wallet, leave account number to 0.
Then click >> to look for path and public key.


Click Lookup to find the collateral TxHash or click Edit to fill it manually, and then OK.
Click Save to save the configuration and go back to main view.


Features

Getting masternode status

Click on Get Status For All to inspect the status of all masternode entries or click the dashboard icon next to a particular entry to get status for that one.


To inspect the status details click on the little magnifying glass icon.





Starting masternode

Click on Start All to send a start-message for all masternode entries or click the little rocket icon next to a particular entry to start that one masternode.


Click yes to confirm


Double check the masternode message hash both on screen and on the display of the device.
Then click "yes" (right button) on the ledger nano S.


SPMT presents the decoded message.
Double check it and then click Yes.


After broadcasting the message, SPMT presents a confirmation popup.


Spending masternode rewards

Select the Transfer Rewards Tab to go to the rewards panel (ore use the shortcut, money icon, to simultaniously change tab and select the node).


Use the dropdown menu to select the masternode you wish to send rewards from.


Click on Show Collateral if you wish to select and spend it.
Click on Hide Collateral to hide it again.


Select those UTXOs you wish to spend.
The suggested fee is automatically adjusted based on the TX size and the average fee of the last 10 blocks.
Adjust it as preferred.
Then insert the PIVX Destination Address and click on Send


Verify the details of the TX both on screen and on the display of the Nano S.
If everything checks out, click "yes" (right button) on the device.


The transaction is now assembled and signed.
SPMT asks one more time to check the details before broadcasting the transaction (thus spending the selected rewards).


Click Yes to finally broadcast the transaction to the PIVX network.
Click Show Details to get the TX-id that identify the transaction.
It should appear on the Block Explorers and on the receiving wallet after a few seconds.


Coming soon

  • Voting
  • Lite Connection ...

Credits

A huge part of this work is inspired by the following Dash projects:

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 100.0%