Panoramica
Prepara wallet
- Estrai il file PirateCash Core nel percorso che preferisci. Eseguirai il wallet da questa posizione.
-
Cripta il wallet: Settings -> Encrypt Wallet. Scegli una password, annotala e riavvia il wallet.
- Backup wallet: File -> Backup Wallet
-
Clicca Window -> Console per aprire la console. Digita il seguente comando per generare un nuovo indirizzo PirateCash per il collateral:
getnewaddress MN1 getnewaddress MN1 -
Per inviare 10.000 PIRATE a questo indirizzo tramite @piratecash_bot, vai nel menu 💵 Balance → PirateCash → 📤 Withdraw️ oppure esegui il comando /withdraw_pirate.
Crea un droplet Linux su DigitalOcean
- Registrati per un account e crea un nuovo “droplet”, termine usato da Digital Ocean
- Seleziona Ubuntu 26.04 (LTS)
- Seleziona 2 GB/1vCPU, sufficiente e solo 12$ al mese
- Seleziona la regione datacenter che preferisci. Crea!
- Annota l'indirizzo IP del droplet
- Controlla la mail per la password root iniziale del VPS
-
Accedi al VPS tramite PuTTY: ti permetterà di copiare e incollare comandi nel VPS. La web console non lo consente. Gli utenti Mac possono usare Terminal: Launchpad -> Search -> Terminal -> digita ssh root@IP
ssh root@SERVER_IP -
P2P: 63636/tcp
ufw allow 63636/tcp ufw enable -
Crea un file Swap:
fallocate -l 1G /swapfile chmod 600 /swapfile mkswap /swapfile swapon /swapfile echo "/swapfile none swap sw 0 0" >> /etc/fstab
Configurazione automatica dal repository masternode
Dopo aver generato la chiave BLS, il modo più semplice per configurare il nodo è usare lo script del nostro repository masternode.
- Acquista 10.001 PIRATE, per esempio su PancakeSwap.
- Se hai già token, scambiali con PIRATE nativi tramite @piratecash_bot.
- Avvia un server presso un provider hosting, per esempio tramite questo link hosting.
- Accedi al server via SSH.
-
Clona il repository: https://github.com/piratecash/masternode.
git clone https://github.com/piratecash/masternode.git cd masternode - Genera una chiave BLS in PirateCash con bls generate. Inserisci il valore secret in masternodeblsprivkey=xxx nel file /home/pirate/.piratecore/piratecash.conf dentro Docker o in /opt/node/piratecash/piratecash.conf sul sistema host.
-
Esegui ./install_masternode.sh per la configurazione automatica.
./install_masternode.sh - Riavvia Docker.
- Attiva il masternode tramite PirateCash Core, poi continua con i passaggi di attivazione qui sotto.
Configurazione del file masternode
Seconda opzione: configurazione manuale. Questo metodo è più complesso; usalo solo se non vuoi usare lo script di configurazione automatica.
BLS
- Apri la console RPC: Window –> Console
-
Digita: bls generate
bls generate
PirateCash Core
-
Vai al Droplet e Download archivio
wget https://github.com/piratecash/piratecash/releases/download/v23.1.7-pirate/piratecashcore-23.1.7-x86_64-pc-linux-gnu.tar.bz2tar -xjf piratecashcore-23.1.7 -x86_64-pc-linux-gnu.tar.bz2 -
Crea la directory mkdir ~/.piratecore
mkdir -p ~/.piratecore nano ~/.piratecore/piratecash.conf - Crea il file ~/.piratecore/piratecash.conf con il seguente contenuto:
rpcuser=RPC_USER
rpcpassword=RPC_PASSWORD
corsarpcuser=CORSA_RPC_USER
corsarpcpassword=CORSA_RPC_PASSWORD
corsarpcport=46464
rpcallowip=127.0.0.1
server=1
rest=1
listen=1
txindex=1
listenonion=0
daemon=1
maxconnections=700
masternodeblsprivkey=BLS_SECRET_KEY
externalip=SERVER_IP
Sostituisci i campi contrassegnati con XXXXXXX come segue:
rpcuser: inserisci una stringa di numeri o lettere, senza caratteri speciali
rpcpassword: inserisci una stringa di numeri o lettere, senza caratteri speciali
corsarpcuser: inserisci il nome utente RPC del servizio locale corsa-chat
corsarpcpassword: inserisci la password RPC del servizio locale corsa-chat
corsarpcport: usa la porta RPC configurata per corsa-chat; il valore predefinito è 46464
externalip: è l'indirizzo IP del tuo VPS
Compila il campo masternodeblsprivkey eseguendo il comando bls generate nella console e riavvia il daemon piratecashd.
Requisito corsa-chat
Requisito corsa-chat per PirateCash Core v19
A partire da PirateCash Core v19, un masternode deve eseguire anche un nodo locale corsa-chat/Corsa sullo stesso server. La configurazione automatica nel repository masternode configura insieme PirateCash Core e corsa-chat. Il requisito è descritto in PIP-0001.
Prima di avviare PirateCash Core, scarica e avvia il daemon Corsa. Usa gli stessi valori di utente e password RPC indicati in corsarpcuser e corsarpcpassword in piratecash.conf:
wget https://github.com/piratecash/corsa/releases/download/v1.0.62/corsa-linux-amd64.tar.bz2tar -xjf corsa-linux-amd64.tar.bz2
nohup env \
CORSA_LISTEN_ADDRESS=:64646 \
CORSA_BOOTSTRAP_PEERS=65.108.204.190:64646 \
CORSA_RPC_HOST=127.0.0.1 \
CORSA_RPC_PORT=46464 \
CORSA_RPC_USERNAME=CORSA_RPC_USER \
CORSA_RPC_PASSWORD=CORSA_RPC_PASSWORD \
./corsa-node > corsa-node.log 2>&1 &
Dopo che Corsa è in esecuzione, avvia il daemon PirateCash.
./piratecashd
Sentinel
La configurazione di Sentinel non è più necessaria per i nuovi masternode. Il supporto Sentinel sarà deprecated in PirateCash Core v20, quindi non devi installare Sentinel né configurare il cron di Sentinel.
ProRegTx
-
Dopo il completamento della transazione, varie chiavi correlate devono essere estratte per essere inserite successivamente nel file di configurazione e nella transazione di registrazione. Questa transazione serve come prova, registrando la configurazione sulla blockchain e garantendo l'inclusione del masternode nella lista deterministica. Esegui masternode outputs
masternode outputs
-
Prepara una transazione ProRegTx
Prima dobbiamo ottenere dal wallet un nuovo indirizzo non usato, che fungerà da owner key address (ownerKeyAddr). Non è lo stesso indirizzo collateral che contiene 10.000 PIRATE. Genera un nuovo indirizzo così:
getnewaddress owner_keygetnewaddress owner_key -
Questo indirizzo può essere usato anche come voting key address (votingKeyAddr). In alternativa puoi specificare un indirizzo fornito dal delegato di voto scelto o generare un nuovo indirizzo di voto così:
getnewaddress voting_keygetnewaddress voting_key -
Poi genera o scegli un indirizzo esistente per ricevere i pagamenti del masternode del proprietario (payoutAddress). È anche possibile usare un indirizzo esterno al wallet:
getnewaddress masternode_payoutsgetnewaddress masternode_payouts
-
Potresti dover generare e finanziare anche un altro indirizzo come sorgente della commissione di transazione (feeSourceAddress). Se hai scelto un payout address esterno, devi specificare un indirizzo per le fee:
getnewaddress pay_feesgetnewaddress pay_fees -
Ora prepareremo una transazione speciale ProRegTx non firmata usando il comando protxregister_prepare. La sintassi è:
protx register_prepare collateralHash collateralIndex ipAndPort ownerKeyAddr operatorPubKey votingKeyAddr operatorReward payoutAddress feeSourceAddress
Apri un editor di testo come notepad per preparare il comando. Sostituisci ogni argomento come segue:
collateralHash: txid della transazione di finanziamento collateral da 10.000 PIRATE
collateralIndex: indice output della transazione da 10.000 PIRATE
ipAndPort: indirizzo IP e porta del masternode nel formato x.x.x.x:63636
ownerKeyAddr: il nuovo indirizzo PirateCash generato sopra per proprietario/voto
operatorPubKey: la chiave pubblica BLS generata sopra o fornita dal servizio hosting
votingKeyAddr: il nuovo indirizzo PirateCash generato sopra, o l'indirizzo di un delegato, usato per il voto sulle proposte
operatorReward: percentuale della ricompensa blocco assegnata all'operatore
payoutAddress: indirizzo PirateCash nuovo o esistente che riceve le ricompense masternode del proprietario
feeSourceAddress: indirizzo usato per finanziare la fee ProTx. Se non specificato, verrà usato payoutAddress.protx register_prepare COLLATERAL_TX_HASH COLLATERAL_OUTPUT_INDEX SERVER_IP:63636 OWNER_ADDRESS OPERATOR_PUBLIC_KEY VOTING_ADDRESS 0 PAYOUT_ADDRESS FEE_SOURCE_ADDRESS
-
Firma la transazione ProRegTx
Ora firmeremo il contenuto del campo signMessage usando la chiave privata dell'indirizzo collateral indicato in collateralAddress. Per questo passaggio non serve connessione Internet, quindi il wallet può restare offline in cold storage per firmare il messaggio. In questo esempio useremo di nuovo PirateCash Core, ma si può usare anche la funzione di firma di un hardware wallet. La sintassi è:
signmessage collateralAddress signMessagesignmessage COLLATERAL_ADDRESS SIGN_MESSAGE
-
Invia il messaggio firmato
Ora invieremo la transazione speciale ProRegTx alla blockchain per registrare il masternode. Il comando deve essere inviato da un wallet PirateCash Core con saldo su feeSourceAddress o payoutAddress, perché è richiesta una fee standard. La sintassi è:
protx register_submit tx sig
tx: la transazione serializzata restituita nel campo tx dal comando protx register_prepare
sig: il messaggio firmato con la chiave collateral dal comando signmessageprotx register_submit PREPARED_TX SIGNATURE
-
Il tuo masternode è ora registrato e apparirà nella Deterministic Masternode List dopo che la transazione sarà minata in un blocco.
Aggiornamento di un masternode automatico esistente
Usa questa sezione se hai già installato il nodo dal repository masternode. Il file piratecash-main/piratecash.conf nel repository è solo un template; la configurazione attiva del nodo si trova in /opt/node/piratecash/piratecash.conf.
- Connettiti al server via SSH ed entra nella directory del repository, di solito ~/masternode.
- Esegui git pull. Se Git dice che le modifiche locali in piratecash-main/piratecash.conf verrebbero sovrascritte, controlla se hai salvato valori importanti solo in quel file template.
- Se i valori sono già in /opt/node/piratecash/piratecash.conf, annulla la modifica locale del template con git checkout -- piratecash-main/piratecash.conf.
- Esegui di nuovo git pull per scaricare i nuovi file, incluso update_masternode.sh.
- Esegui ./update_masternode.sh. Lo script aggiorna la configurazione Docker, mantiene o crea le credenziali RPC Corsa, le scrive in .env e /opt/node/piratecash/piratecash.conf, poi ricostruisce e avvia i container.
cd ~/masternode
git status
git checkout -- piratecash-main/piratecash.conf
git pull
./update_masternode.sh
Quando lo script termina, verifica che i container siano in esecuzione:
docker compose ps
Se hai modificato intenzionalmente solo il file template nel repository, copia quei valori prima di git checkout -- e riapplicali in /opt/node/piratecash/piratecash.conf dopo l’aggiornamento.